JS :: Tool, Libraries and Frameworks

Всем привет.

Некторое время я собирал информацию об актуальных на сегодняшний день интсрументах, средах разработки, редакорах, фреймворках, различных библиотеках используемых при разработке на JavaScript и в частности в Front end разработке.

Хочу с Вами поделиться своим списком.

Среда разработки

Среда выполнения JS кода

Браузер

Большинство актуальных на сегодняшиний день браузеров, позволяют выполнять и отлаживать JS код. Возможность отладки и предоставление полезной информации о том что происходит в коде, по умолчанию поддерживается всеми популярными браузерами.

Node.JS

Node.JS - это server-side фреймворк, который позволяет запускать JS код.

Package managers

  • npm (Optionally can be installed with a Node.JS)
  • bower

Task runners

IDEs (Desktop)

Coding standards, coding style and code quality check tools

Traffic monitoring tools

Minifiers, compressors, uglifiers

На этом мой список инструментов, помогающих писать код на JS подошёл к концу. Теперь перейдём непосредственно к разработке и библиотекам, фреймворкам актуальным на сегодняшний день.

Разработка на JS

Модульная структура

Здесь хочется упоменуть подходы, архитектурные, паттерны, техники применяемые для организации модульной структуры приложений на JS. И инструменты их реализующие. Сразу хочу сказать, что в некоторые фреймворки эти возможности встроены по умолчани. Здесь приведнён список библиотек, позволяющие это делать без привязки к какому либо фреймворку.

  • AMD (Asynchronous Module Definition - подход, который позволяет организовывать JS код в модули)
  • CommonJS (API, стандарт)
  • RequireJS (загрузчик JavaScript файлов и модулей)

Libraries (not frameworks)

Хочется сразу расставить все точки на i и разобраться в терминологии. 
Фреймворк - библиотка, или набор бибилиотек, которые предлогают разработчику определённую архитиктуру приложения. Т.е. пользуясь фреймворком, вы получаете из коробки определённый каркас вашего приложения, которое начинаете наполнять своим кодом, реализовывая ваши задачи.
В отличие от этого просто библиотека, предоставляет Вам набор определённых классов, функций, расширений, которые избавляют Вас от определённой рутины, за счёт готовый реализаций тех или иных алгоритмов.
Т.е. разница кардинальная, в первом случае Вы получаете каркас приложения, взамен на что Вы теперь должны следовать принципам построения приложений описанным в документации к фреймворку. Во втром же случае, Вам не предлогается какая то архитектура Вашего приложения, а просто набор низкоуровневых фунций, которыми Вы можете пользоваться по своему усмотрению.

Итак:
Frameworks

UI Controls libraries

  • Telerik
  • Bootstrap (Components library with over a dozen custom jQuery plugins. Easily include them all, or one by one.)
  • html5shiv (HTML5 sectioning elements in legacy Internet Explorer.)

TDD/BDD frameworks

  • Mocha (Test framework)
  • Chai (JS assertion library. Can be used in a pair with a test framework)

Compilers

  • Babel (You can write for a ECMA-262 6.0 today. And run on a ECMA-262 5.1 environment. It possible because babel can compile you ECMA-262 6.0 code into the ECMA-262 5.1.)
  • TypeScript (Write on TypeScript, comile to JavaScript)
  • CoffeeScript (Write on CoffeeScript, compile to JavaScript)

Mobile development

  • Phonegap
  • Ionic
  • Monaca
  • Onsen UI
  • Taco
  • Telerik
  • Cocoon
  • Framework7
  • Aerogear Platforms - limited intended for "enterprise mobile"
  • Mobile Angular UI
  • Sencha Touch
  • Kendo UI
Так же хочется напомнить о сущетсвовании RFC по семейству ECMA-262 языков.

RFSs

И не могу не затронуть тему связаных с JS веб стандатнов, ссылки на которые хочется так же привести.

Front end tools

Related resources

coming soon

Lessons

coming soon

Что дальше

Переход на HTTP 2.0

Переход на ECMA-262 6ᵗʰ Edition

Переход на ECMA-262 7ᵗʰ Edition

Поддержка браузерами стандарта WebAssembly

Комментарии закрыты

Page List

Calendar

<<  март 2024  >>
пнвтсрчтптсбвс
26272829123
45678910
11121314151617
18192021222324
25262728293031
1234567

Большой календарь

Month List