Трансформируем автоформы в качественный интерфейс с помощью DSL (Иван Гаммель, SECR-2012) — различия между версиями
Материал из 0x1.tv
StasFomin (обсуждение | вклад) |
StasFomin (обсуждение | вклад) |
||
== Примечания и отзывы == <!-- <blockquote>[©]</blockquote> --> * {{ConferencePage|http://2012.secr.ru/talks/transforming-autoforms-to-quality-interface-with-dsl}} <references/> [[Category:SECR-2012]] [[Category:DSL-языки]] <!-- topub --> {{stats|disqus_comments=0|youtube_plays=0|refresh_time=2017-11-11T00:00:4824T19:50:47.712034724801|vimeo_plays=24}}|vimeo_comments=0}} |
Версия 16:50, 24 ноября 2017
Содержание
Аннотация
- Докладчик
- Иван Гаммель
В крупных проектах код модели предметной области содержит много метаинформации, например, об объектно-реляционном отображении (ORM), которую можно также использовать для построения интерфейса. Однако объективные сложности, связанные с реализацией генератора интерфейса на основе метамодели, сформировали мнение о том, что генерация кода пригодна в лучшем случае для прототипирования, но никак не для построения качественного интерфейса. В то же время реализация сложных интерфейсов традиционным способом — на основе отдельных компонентов из стандартной библиотеки или библиотек сторонних разработчиков — остаётся трудоёмкой и технически сложной задачей. Нам удалось обойти ограничения генерации интерфейсов форм и предоставить разработчику такую же гибкость, как и в традиционном подходе, благодаря следующим принципам:
- Вместо генерации кода интерфейса — построение его модели во время выполнения программы. Компоненты и события интерфейса являются отражением его модели.
- Метамодель — лишь отправная точка для построения интерфейса. К окончательному виду разработчик быстро приводит его с помощью предметно-ориентированного языка (DSL).
- Технологическая нейтральность — отсутствие зависимостей от сторонних библиотек и фреймворков, работа с внешними источниками метаданных через подключаемые модули.
Этот подход реализован в библиотеке CUSTIS Rich Forms, которая в настоящее время используется в нескольких промышленных проектах. В докладе будет показано на конкретных примерах, как выбранная архитектура позволяет решать задачу быстрого построения интерфейсов форм, снижая трудозатраты и уменьшая сложность прикладного кода.
Видео
Слайды
Примечания и отзывы
Plays:24 Comments:0