- PVSM.RU - https://www.pvsm.ru -

Открой Open Source 2ГИС

Open Source 2ГИС
2ГИС выпускает справочники и карты городов с 1999 года. За это время мы прошли большой технологический путь — от одного ПК-приложения с данными для Новосибирска до API карт и справочника, десктопных приложений на Windows, Ubuntu и OS X, мобильных приложений на Android, iOS, Windows Phone и Blackberry с данными по 270 городам мира.

Часто мы решаем задачи, для которых нет готовых инструментов. Или они есть, но не покрывают всех потребностей. Поэтому мы сами пишем для себя фреймворки и библиотеки, большая часть которых связана с автоматизацией тестирования, сборкой и ускорением разработки.

Этими инструментами с удовольствием делимся на Гитхабе [1], а для удобства сделали ещё и Open Source раздел [2] на 2ГИС.Технологиях. Чтобы вы разобрались, что есть что, мы расскажем о наших флагманских инструментах с открытым кодом.

TARS

Если помните, Тарсом звали остроумного робота из фильма «Интерстеллар» — его ещё просили сделать уровень юмора пониже. В нашей интерпретации TARS [3] — это основанный на gulp [4] автосборщик статичных проектов, который снижает уровень frontend-рутины, облегчает и ускоряет процесс html-вёрстки любой сложности.

Главные фичи TARS:

  • Jade [5] или Handlebars [6] как html-шаблонизатор;
  • JSON для передачи данных в шаблоны. Избавляет от утомительного копипаста;
  • SCSS [7], LESS [8] или Stylus [9] как препроцессор для CSS;
  • Никаких внешних библиотек и плагинов (кроме html5shiv [10]). Можно самому выбирать библиотеки;
  • Модуль Chokidar [11] для вотчинга файлов;
  • Умная работа с изображениями: играючи верстаем сайты для экранов с высокой плотностью пикселей;
  • Несколько режимов сборки: обычный, с минифицированными файлами, с хешем в названии css- и js-файлов;
  • Создание архива с готовой сборкой.

Подробнее о TARS рассказал в статье [12] и докладе [13] автор инструмента Артём artemmalko [14] Малко.

MakeUp

Несмотря на название, MakeUp’ом в 2ГИС пользуются не только девушки, но и парни. Наш MakeUp [15] — это JavaScript-библиотека для приятного контроля за качеством вёрстки. В интерфейсе библиотеки мы сравниваем вёрстку независимых блоков в различных состояниях, заранее описанных в конфигурационном файле, с дизайном, и смотрим, где нужно навести марафет.

Зачем нам MakeUp:

  • Для быстрой ручной регрессии вёрстки — если состояния блока подробно описаны, риск сломать вёрстку новыми изменениями будет минимальным;
  • Чтобы следить за состоянием блоков — скорее всего, почти каждый блок в проекте будет использоваться в разных состояниях, отличающихся набором модификаторов, контентом. Чтобы не держать всё в голове, мы используем MakeUp;
  • Разрабатывать независимые блоки с комфортом.

Если интегрировать библиотеку в рабочий процесс, она запросто становится одним из основных инструментов верстальщика.

Slot

Когда команде Онлайна пришлось заниматься SEO, они придумали Slot [16] — JavaScript-фреймворк для разработки модульных изоморфных приложений.

Чем хорош Slot:

  • Изоморфность :-)
  • Single Page App + SEO. Каждое состояние приложения описывается отдельным URL. Поисковые роботы получают готовую для индексации страницу в конкретном состоянии;
  • Модульность + БЭМ. Строим UI из независимых переиспользуемых модулей. Фреймворк по умолчанию поддерживает БЭМ-методологию;
  • Сборка на gulp одной командой. Автоматическая пересборка проекта при изменении кода. Всё что нужно — дописать особенности своего приложения;
  • Работает с модулем MakeUp [15].

Winium

Сначала ребята из команды автоматизации тестирования писали отдельные инструменты, но потом поняли, что хотят один фреймворк для тестирования приложений под Винду. Так появился Selenium-based инструмент Winium [17].

Почему мы любим Winium:

  • Пишем тесты, используя любимые инструменты и любой WebDriver-совместимый язык программирования: Java, Objective-C, JavaScript with Node.js, PHP, Python, Ruby, C#, Clojure и т. д.;
  • Используем любой тестовый фреймворк.

Платформы:

  • Windows Desktop (WPF, WinForms) Apps;
  • Windows Store or Universal Apps for Windows Phone;
  • Windows Phone Silverlight Apps.

И ещё 42 инструмента

Полный список наших Open Source продуктов смотрите на Гитхабе [1] или заглядывайте на 2ГИС.Технологии [2]. Используйте инструменты по назначению, ставьте звёзды, форкайте и пишите фича-реквесты.

Автор: mrmixsun

Источник [18]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/open-source/89021

Ссылки в тексте:

[1] Гитхабе: https://github.com/2gis

[2] Open Source раздел: http://techno.2gis.ru/opensource

[3] TARS: https://github.com/2gis/tars

[4] gulp: http://gulpjs.com/

[5] Jade: http://jade-lang.com/

[6] Handlebars: http://handlebarsjs.com/

[7] SCSS: http://sass-lang.com/

[8] LESS: http://www.lesscss.ru/

[9] Stylus: http://learnboost.github.io/stylus/

[10] html5shiv: https://ru.wikipedia.org/wiki/Html5_Shiv

[11] Chokidar: https://github.com/paulmillr/chokidar

[12] статье: http://habrahabr.ru/company/2gis/blog/254105/

[13] докладе: https://vimeo.com/album/3331717/video/123924728

[14] artemmalko: http://habrahabr.ru/users/artemmalko/

[15] MakeUp: http://2gis.github.io/makeup/

[16] Slot: https://github.com/2gis/slot

[17] Winium: https://github.com/2gis/Winium

[18] Источник: http://habrahabr.ru/post/255817/