Разработку бета-версии библиотек jWidget Lib и jWidget UI можно считать завершенной. Это означает, что базовая архитектура уже вся на месте, она полностью задокументирована и покрыта тестами. Теперь изменения существующего функционала будут происходить только в самом крайнем случае. В основном, теперь будут только добавляться новые фичи. Я выкинул весь ненужный и редкоиспользуемый функционал, и теперь в сжатом виде jWidget Lib весит всего 30 КБ, а jWidget UI - 9 КБ. Позже опубликую исключенный функционал в виде "дополнений" к библиотекам.
Ознакомиться с возможностями библиотек и скачать их можно на страницах проектов:
Все свои JS-проекты я разрабатываю с помощью jWidget, и 80% функционала, как правило, реализуется без использования каких-либо других библиотек. jWidget задает структуру проекта, реализует самые нужные паттерны и сокращает исходный код. jWidget максимально эффективно разделяет работу верстальщика, фронтэндщика и бэкендщика. Кроме того, на мой взгляд, jWidget необычайно прост в освоении и использовании.
В ближайшее время я подготовлю подробные примеры и туториалы использования этих библиотек, в которых наглядно покажу, как легко и просто с их помощью выполняется произвольный JS-проект любой сложности.
Под кат заходить рекомендуется только самым хардкорным читателям моего блога, поскольку дальше я буду подробно описывать планы по развитию своих библиотек.
Я уже очертил список задач к следующей итерации разработки библиотек jWidget:
jWidget SDK 0.4
В jWidget SDK 0.4 будет добавлена возможность автоматической закачки всех необходимых JS- и CSS-зависимостей из сторонних публичных репозиториев. Таким образом, будет сделан первый шаг нативной итеграции проекта со всевозможными библиотеками и фреймворками JavaScript: jQuery, Prototype, ExtJS, YUI и пр. (в т.ч. jWidget Lib и UI). Моей целью является такое развитие jWidget SDK, после которого можно будет сказать, что jWidget SDK решает те же задачи для JavaScript, которые maven и ant решают для Java. jWidget SDK должен стать универсальным сборщиком JavaScript-проектов. Будут представлены удобные средства для публикации собственных библиотек с возможностью подключения через jWidget SDK.
Другая важная задача, которую я ставлю перед собой при разработке новой версии jWidget SDK - это дальнейшая популяризация проекта. jWidget SDK уже успешно внедрен на все проекты в компании ИСС Арт, где есть хоть какой-то JavaScript, кроме банальных jQuery-плагинов. Мне известно, что уже есть довольные пользователи jWidget SDK даже за пределами компании ИСС Арт, и это очень приятно. Для того, чтобы больше людей узнало об этом замечательном инструменте, я запишу ряд видеопрезентаций, проведу ряд образовательных семинаров в Омске, а также переведу документацию на английский язык. Чтобы использовать jWidget SDK было еще удобнее, я начну разработку GUI-клиента, предположительно, в виде плагина к Aptana Studio. Если осилю. Там 1000 страниц документации в PDF. Мне очень нужна помощь - может кто-нибудь уже решал подобные задачи?
Будет еще несколько улучшений, прежде всего, для поддержки уже существующих приложений на jWidget SDK. С полным списком задач можно ознакомиться здесь
https://github.com/enepomnyaschih/jwsdk/issues?direction=asc&milestone=6&state=open.
jWidget Lib 0.4
jWidget Lib уже на первом этапе выглядит достаточно монолитным проектом, так что функциональных изменений здесь будет совсем немного. Будет написана английская документация. Полный список задач:
https://github.com/enepomnyaschih/jwlib/issues?milestone=2&state=open.
jWidget UI 0.4
Я еще не знаю, как публика примет выпуск бета-версии этой библиотеки в версии 0.3, но идей для следующей версии у меня уже поднакопилось предостаточно. Прежде всего, будет сделан упор на уменьшение количества повторяющегося кода при разработке визуальных компонентов. Например, будет улучшен шаблонный движок для того, чтобы разрешить проблему расширения HTML-кода компонента при его наследовании. Я пока не видел ни одного хорошего решения этой проблемы, но мои идеи выглядят разумными. Изложу их чуть позже в одной из статей.
Кроме того, будет сделано несколько улучшений существующего функционала, а документация будет переведена на английский язык. Полный список задач:
https://github.com/enepomnyaschih/jwui/issues?milestone=2&state=open.
Заключение
Если вы еще не используете библиотеки jWidget, то очень рекомендую с ними ознакомиться. Не бойтесь задавать мне вопросы.
Если вы являетесь мне настолько хорошим другом, что уже используете библиотеки jWidget, то жду от вас отзывов, замечаний, пожеланий и баг-репортов.
Продолжайте следить за моим блогом: я буду выкладывать анонсы своих семинаров и публиковать новые материалы.