- PVSM.RU - https://www.pvsm.ru -
Мы разработали новый JS-фреймворк, не похожий на существующие. Он использует новый подход. Мы зовём его Joosy.
Официальный сайт [1]
Руководство для новичков [2]

В наши дни даже ленивые и их бабушки с дедушками делают свои собственные JS MVC фреймворки. Причина этого проста: они действительно нужны. С другой стороны, проблема заключается в том, что все они поголовно копируют Backbone [3]. Конечно, есть ещё Knockout [4] и Ember [5], которые пошли другим путём, но их всё равно не хватает, чтобы удовлетворить все запросы утончённой аудитории. Другие решения — другие проблемы. Некоторым не нравится Handlebars, другим не подходит общий API, это всего лишь дело вкуса. В конце концов, широта ассортимента ещё никому не вредила.
Полгода назад, во время реализации пары новых проектов, мы решили провести небольшой эксперимент. Мы взяли совершенно новый подход к этой проблеме: представить JS-фреймворк как расширение к серверной части. Он должен быть не абстрагирован от неё, а наоборот быть как можно нежнее с ней связанным.
Чтобы претворить это в реальность, нам пришлось реализовать все привычные Rails-разработчикам вещи и расширить их возможностями, которых в Rails не хватало. Лучшая организация кода, новые конвенции для среды, в которой есть состояние (stateful, в противоположность RESTful stateless сервер-сайду), и многое другое. Мы сделали form-builder, настоящие хелперы, и даже HAML [6], работающий прямо у вас в браузере.
Теперь, когда прошло некоторое время, и часть из тех проектов уже в бою, мы готовы представить этот эксперимент как зрелый фреймворк с кучей фич, который мы назвали Joosy. Он основан на терминах «вида» из MVC. Pages, Layouts, Widgets, Helpers и шаблонизация. Важно заметить, что он полностью основан на возможностях CoffeeScript [7]. И чтобы лучше прочувствовать этот прекрасный язык, Joosy включает в себя отличную библиотеку Sugar.js [8]. Она создаёт ощущение ActiveSupport [9] и сильно расширяет скудную стандартную библиотеку JS, добавляя сахарку в вашу работу.
В Joosy есть всё, к чему вы привыкли в других фреймворках, но под немного другим соусом. В нём есть роутинг, подобие «моделей» с Identity Map [10], чёткое структурирование и многое другое, как то: указанный выше ActiveSupport, совместимый с ActiveResource [11] (позволяющий концентрироваться на том, что в браузере модели — в первую очередь связь с сервером, а не бизнес-логика), автогенераторы кода, даже предзагрузка js-файлов в приложение.
Практика показывает: Joosy очень легко овладеть, если вы имели опыт с Rails. Также он хорошо справляется с тем, что другие заявляют: экономит ваше время. Так что вне зависимости от того, показался он вам нужным, или нет, мы просим вас прочитать руководство. У нас есть что-то новое, что мы можем предложить вам, и оно недурно. А потом вы может даже найдёте ему применение :)
P.S.: можете смело задавать вопросы в комментариях, а также в теге joosy на StackOverflow [12].
Автор: GearHead
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/javascript/8903
Ссылки в тексте:
[1] Официальный сайт: http://joosy.ws
[2] Руководство для новичков: http://guides.joosy.ws
[3] Backbone: http://backbonejs.org/
[4] Knockout: http://knockoutjs.com/
[5] Ember: http://emberjs.com/
[6] HAML: http://haml.info/
[7] CoffeeScript: http://coffeescript.org/
[8] Sugar.js: http://sugarjs.com/
[9] ActiveSupport: http://guides.rubyonrails.org/active_support_core_extensions.html
[10] Identity Map: http://en.wikipedia.org/wiki/Identity_map_pattern
[11] ActiveResource: http://api.rubyonrails.org/classes/ActiveResource/Base.html
[12] StackOverflow: http://stackoverflow.com/questions/tagged/joosy
Нажмите здесь для печати.