Javascript-форум (https://javascript.ru/forum/)
-   Библиотеки/Тулкиты/Фреймворки (https://javascript.ru/forum/library-toolkit-framework/)
-   -   js-фреймвок для админки (https://javascript.ru/forum/library-toolkit-framework/26686-js-frejjmvok-dlya-adminki.html)

andymitrich 18.03.2012 12:23

js-фреймвок для админки
 
В общем, мучаюсь вопросом: какой js-фреймворк взять для написания админского интерфейса портала.
Портал достаточно сложный, обладающий серьезный функционалом. Вот и не знаю, то ли брать ExtJs с его готовыми штуками ( но он ведь тяжеловатый ), то ли пробовать лепить на jquery с использованием html/css...
Не холивара ради, но подскажите может чего?

melky 18.03.2012 12:25

в jqueryUI тоже есть готовые штуки.

TheKIP 09.04.2012 23:28

Что то как то последний пост был в этой ветке был давно...
Неужели никто не интересуется JS фреймворками кроме jQuery?

По теме:
Задача такая же как у топикстартера. Создается админка полностью на аяксе, т.е. одностраничная. Весь интерфейс генерируется уже на стороне клиента. С сервером общается только с помощью json.

Сейчас работает это все на Jquery, и Jquery UI, и сделан собственнвенный велосипед: шабоонизатор, структуры классов, неймспесйсы и т.п.

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

Вообщем недавно на одном ИТ мероприятии услышал вводную лекцию о ExtJs, мне ОЧЕНЬ понравилось все, начиная с MVC, и простой синхронизацией хранилищ через прокси в модели, заканчивая отстувием необходимости верстать, да и вообще изменением парадигмы веб разработки в сторону десктопной разработки.

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

Вообщем после непродолжительного гугленья было найдено еще несколько фреймворков с интересующими меня особенностями:

Это Dojo, YUI, BackboneJS

Так вот, гуру JS, помогите определиться о сильных и слабых сторонах этих систем, гугленье выдает много статей, но все они о том "как сделать", а не "какие сильные стороны"

для меня основная цель фреймворка это предоставления каркаса, т.е. мне не нужны всякие свистелки-перделки а-ля jQueryUI (хотя и они будут использованы). Мне нужен каркас, на основе которого я смогу раскладывать свои файлы, настраивать зависимости, создавать хранилища, а фреймворк будет автоматически все это сцеплять, подгружать, наследовать, подмешивать и т.п.

Вопрос: почему бы не использовать Sencha ExtJS? Во первых потому что он платный. Во вторых, он умеет СЛИШКОМ много чем мне нужно. Мне нужен только каркас. т.е. я боюсь что в ExtJS кастомизация, и добавление собственных виджетов будет сущим гемороем, и разработка на этом затянется, если я не прав - поправьте.

DjDiablo 22.04.2012 14:54

Ext js бесплатен если ты программу отдаш или продаш вместе с исходным кодом, и не будеш возражать против его возможной модификации.

что касается возможностей фреймворка и его удобства, по убыванию я бы расставил вот так.
1) ExtJs - я тащусь от его системы классов настолько что написал аналог для jquery )))
2) Dojo
3) и только потом backboneJS

extjs - успешно применяется в админке cms modX
можешь сам попробывать в действии здесь http://revo.modx.ru/manager/
пароль он же логин demo_admin
Несмотря на то что extall весит 500 килобайт с лишним, для дмина это неиграет никакой роли. Ведь длительная загрузка будет только при первом запуске, при всех последующих скрипт будет грузится из кэша, и внешне скорость запуска мало будет отличатся от скорости jquery.


Что касается только каркаса, можно как каркас использовать в общем то любой фреймворк, просто не юзая то что не нужно.
однако есть "чистыe" фреймворки в которых изначально нету нечего кроме каркаса, это как раз backboneJS, ну а к примеру javascriptMVC и вовсе создан для создания сложных приложений исключительно на jquery.

Однако голый каркас я буду использовать на фронте, чтобы максимально убавить вес. В админке, мне вес не так критичен, да и использовать готовые элементы управления много проще чем писать свои. Так что админку без сомнений отдам extJs.

Вместе с extjs очень рекомендую использовать extdesigner, времени экономит массу (на этапах обучения, прототипирывания, и если как у меня куча форм которые надо всё время согласовывать и менять ). Конечно если вы не параноидальный консольщик, и не брезгуете пользоваться мышью ))

Кастомизация что в dojo что в extjs в любом случае подразумевает запарку, минимум внимательное чтения доков, максимум ковыряние исходников. Если совсем не в моготу, то можно создавать компоненты для extjs с активным использыванием jquery. Учитывая кривость работы с DOM в extjs, код только выиграет от этого. Однако вы рискуете быть обстреленным жгучими лучами поноса, за нарушения идеологической чистоты ))))

Что очень важно. Выбирая фреймворк не стоит забывать что они следуют различным архитектурным паттернам.
Knockout - MVVM
EXTJS, BACKBONE - MVC (стоит отметить что в обоих фреймворках view может взять на себя массу функций контролёра)
javaScriptМVС - MVP


Часовой пояс GMT +3, время: 05:31.