
Разрабатывая MaskJS вот уже больше полугода, он превратился из DOM шаблонизатора в очень мощный, но при этом производительный веб фреймворк. В статье познакомлю вас с возможно интересными подходами к разработки. Уверен, будет интересно почитать о использовании сигналов и слотов вместо DOM событий. И как компоненты делают нашу жизнь проще. Маска легко интегрируется в уже готовый проект, и даже может быть использована вместе с любым другим фреймворком. Основным же отличием наверное является render flow, где в процессе поэтапно создается Document Fragment / контроллеры / «биндинги». Собственно всю гибкость даже сложно передать, но я попробую, и приглашаю под кат.
Читать полностью »
Рубрика «фреймворк» - 5
MaskJS — как HMV* фреймворк
2013-05-16 в 10:40, admin, рубрики: html, javascript, Веб-разработка, фреймворк, шаблонизатор, метки: фреймворк, шаблонизаторM в MVC: почему модели недооценены и непоняты (перевод)
2013-04-04 в 12:54, admin, рубрики: mvc, архитектура, Веб-разработка, ооп, переводы, Проектирование и рефакторинг, фреймворк, метки: mvc, архитектура, ооп, фреймворк(статья очень старая, по поднятые в ней вопросы актуальны по сей день и регулярно поднимаются в различных обсуждениях)
Многие из вас наверняка заметили, что я пишу книгу о Zend Framework. Недавно я закончил черновики двух глав: «Архитектура приложений на Zend Framework» и «Понимая Zend Framework». В первой главе объясняется архитектурный шаблон Model-View-Controller (MVC) и причины, по которым он стал стандартом де-факто для веб-приложений. Во второй исследуется связь MVC с компонентами Zend Framework, их структурой и взаимодействием.
Завершив обе главы я осознал, что большую часть времени описывал модель и ее фактическое отсутствие в Zend Framework. На самом деле ни один веб-фреймворк не предлагает нам полноценную модель (по причинам, которые я объясню чуть позже). И ни в одном из них не дается внятного объяснения этому обстоятельству. Вместо этого они последовательно связывают понятие модели с родственным, но не идентичным понятием доступа к данным, что изрядно всех запутывает.
Эта сторона фреймворков никогда не привлекала особого внимания. И все же именно она лежит в основе целого класса проблем в тех приложениях, которые пытаются использовать MVC по образу и подобию фреймворков для веб-приложений. Более того, попытки донести идею модели до других разработчиков нередко напоминают битье головой о стену. Я не хочу сказать, что все разработчики тупые или не понимают саму идею, просто никто из них (вне зависимости от того, работают они с PHP или нет) не связывает модели с той областью, которая наделяет их смыслом — принципами объектно-ориентированного программирования.
Читать полностью »
StateController. Событийная модель в разработке интерфейсов. Часть 2
2013-03-17 в 15:35, admin, рубрики: javascript, JS, StateController, Веб-разработка, событийная модель, событийное программирование, фреймворк, метки: StateController, событийная модель, событийное программирование, фреймворкВ данной статье мы рассмотрим базовые понятия событийной модели StateController'а.
Зоны распространения событий
В селективной модели приложений работа ведется с теми элементами, которые были предварительно выбраны для работы. В чистой событийной модели событие должно распространяться на все элементы DOM-дерева. Это совершенно не важно на маленьких объемах, но при росте количества нод деградация скорости будет даже не линейной. Представьте себе, что событие click должно пройтись по всем нодам, чтобы определить, на каких именно элементах оно сработает. Есть предположение, что псевдокласс :hover в IE6 именно так и работал, поэтому он так сильно тормозил.
Чтобы хоть как-то ускорить работу генератора событий, не заставляя его постоянно обходить все дерево нод, лучшим решением является ограничение зон распространения событий. Фактически, мы используем селективную модель внутри событийной, но с некоторыми ограничениями.
Читать полностью »
Первая бета Phalcon 1.0.0
2013-03-07 в 9:05, admin, рубрики: phalcon, php, переводы, разработка, фреймворк, метки: phalcon, PHP, фреймворк Сегодня граппа разработчиков Phalcon выпустило первую бета-версию фреймворка Phalcon 1.0.0. Для тех, кто не в курсе: Phalcon — это PHP-фреймворк, написанный на Си и работающий как расширение для PHP, прочитать про него на Хабре можно в статьях Phalcon — скомпилированный PHP MVC Framework и Phalcon: Давайте учиться на примере.
Цель выпуска этой версии — получение обратной связи от сообщества и обнаружение максимума ошибок.

Краткий анонс важных нововведений этой версии:
Symfony2 на node.js
2013-02-04 в 7:39, admin, рубрики: javascript, node.js, symfony, symfony2, фреймворк, метки: node.js, symfony2, фреймворк Я люблю node.js за скорость работы и люблю Symfony2 за гибкую архитектуру. Но к сожалению Symfony2 довольно тяжелый фреймворк, т.к. инициализация DI контейнера занимает существенное время, и это происходит при каждом запросе. Тут то мне и пришла в голову идея — а почему бы не реализовать аналог Symfony2 на node.js?
В отличие от php — нам не нужно реализовывать систему кэширования классов и т.п. — все это хранится в памяти и инициализируется только один раз (при старте приложения).
Однако в процессе портирования Symfony2 на node.js возник ряд сложностей, связанных с асинхронном моделью node.js, а также с тем, что массивы и хэши в javascript устроены не одинаково (в отличие от php).
Кому интересно что получилось — прошу под кат.
Читать полностью »
Meteor 0.5.0: аутентификация, OAuth, SRP
2012-10-18 в 11:32, admin, рубрики: Derby, javascript, Meteor, node.js, Веб-разработка, реактивное программирование, фреймворк, метки: Derby, Meteor, реактивное программирование, фреймворкJavaScript-фреймворк для создания одностраничных веб-приложений реального времени Meteor с самого своего появления рождает противоречивые чувства. Мощный пиар, 11 миллионов инвестиций, впечатляющий скринкаст, восторженные отзывы — всё это на фоне очень раннего прототипа с прямым доступом к БД и непривычной архитектурой, вызывающей много вопросов.
Превью-версия 0.5.0 наконец-то содержит полноценные механизмы аутентификации и авторизации — Accounts API и Authentification API, мощный виджет аутентификации со всем функционалом для парольного доступа и мастерами настройки для каждого поддерживаемого OAuth-провайдера (на сегодняшний день это Google, Facebook, Twitter, GitHub и Weibo). В Meteor включена поддержка протокола SRP (Secure Remote Password Protocol), который реализует доказательство с нулевым разглашением, позволяя пользователю аутентифицировать себя, не передавая пароля.
Webasyst Фото: приложение для организации и публикации фотографий
2012-08-23 в 10:17, admin, рубрики: cms, php, webasyst, Блог компании Webasyst, вебасист, фото, фреймворк, метки: PHP, webasyst, вебасист, фото, фреймворк Мы выпустили бесплатное приложение «Фото» для загрузки, хранения и публикации фотографий в вебе. Работает на основе PHP-фреймворка Webasyst. Лицензия — LPGL.

Приложение можно установить на свой сервер или хостинг (PHP/MySQL) и публиковать фотографии одним из следующих способов: 1) во фронтенде приложения (в общедоступной галерее) по альбомам, тегам, единым фотопотоком, 2) получением в бекенде ссылки или HTML-кода на выбранные фотографии с последующим добавлением их в блог, ЖЖ, форум или куда угодно, 3) не публиковать вообще и хранить все фотографии приватно для себя и своей команды в бекенде (приложение многопользовательское).
Приложение для тех, кто хочет организовать фотохранилище на своем сайте, а не во Вконтакте или Фейсбуке.
Демо: фронтенд, бекенд (в демо отключены права на загрузку и редактирование фотографий)
Скачать: приложение (исходный код; ≈231 КБ), фреймворк
Коротко об основных функциях приложения:
Читать полностью »
Обзор JS-фреймворков. Путешествие через джунгли JavaScript MVC. Ч. 2
2012-08-20 в 7:29, admin, рубрики: ajax, AngularJS, backbone, CanJS, Cujo.js, dojo, ember, extjs, javascript, JS library, knockout, mvc, Веб-разработка, фреймворк
(Окончание перевода статьи Эдди Османи о сравнении и выборе библиотеки для проекта со значительной ролью JS на клиенте.)
Содержание первой части:
■ Что такое MVC или, лучше сказать, MV*?
■ Когда нам нужен MV*-фреймворк JS?
■ Где же мы будем нуждаться в MV*, а где нет?
■ Проблема выбора: слишком много вариантов?
■ TodoMVC: общее приложение для обучения и сравнения
■ Предложенные нами критерии выбора фреймворка
■ Dojo и усложнение фреймворков на JavaScript
■ Коллекция TodoMVC (фреймворки, на которых сделаны реализации тестового приложения Todo)
Читать полностью »
JavaScript-фреймворк Meteor получил 11 миллионов долларов инвестиций
2012-07-28 в 14:19, admin, рубрики: andreessen horowitz, javascript, Meteor, node.js, real time, Веб-разработка, инвестиции, магия, реактивное программирование, фреймворк, метки: andreessen horowitz, Meteor, real time, инвестиции, магия, реактивное программирование, фреймворкНеобычный и амбициозный фреймворк Meteor, пребывая в статусе preview (текущая версия — 0.3.8) уже получил 4500 подписчиков на Гитхабе и восторженные отзывы сооснователя Facebook Дастина Московица. Теперь на него обратили внимание акулы венчурного капитализма. Основным инвестором стал фонд Andreessen Horowitz. По словам Джефа Шмидта — CEO Meteor Development Group, одиннадцать с лишним миллионов гарантируют активную разработку проекта на протяжении ближайших нескольких лет.
Yet Another Perl Podcast s2e01: Новости мира Perl за май-июнь 2012
2012-07-05 в 14:23, admin, рубрики: mojolicious, perl, perl6, rakudo, YAPC, yapp, Веб-разработка, конференция, подкаст, подкасты, фреймворк, метки: mojolicious, perl, perl6, rakudo, YAPC, yapp, Веб-разработка, конференция, подкаст, фреймворк1) 12-13 Мая, Киев, YAPC::Russia + Perl Mova
- Более 200 зарегистрированных участников из 13 стран;
- 19 докладов и 6 блиц-докладов;
- Бесплатное участие (благодаря gateline.net );
- Отчет Вячеслава ‘vti’ Тихановского;
2) 20 Мая — Вышел Perl 5.16
Читать полностью »

