Трансформируем автоформы в качественный интерфейс с помощью 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|refresh_time=2017-12-21T17:58:0525T22:20:52.268492284691|vimeo_comments=0|vimeo_plays=25|youtube_plays=0}} |
Версия 19:20, 25 декабря 2017
Содержание
Аннотация
- Докладчик
- Иван Гаммель
В крупных проектах код модели предметной области содержит много метаинформации, например, об объектно-реляционном отображении (ORM), которую можно также использовать для построения интерфейса. Однако объективные сложности, связанные с реализацией генератора интерфейса на основе метамодели, сформировали мнение о том, что генерация кода пригодна в лучшем случае для прототипирования, но никак не для построения качественного интерфейса. В то же время реализация сложных интерфейсов традиционным способом — на основе отдельных компонентов из стандартной библиотеки или библиотек сторонних разработчиков — остаётся трудоёмкой и технически сложной задачей. Нам удалось обойти ограничения генерации интерфейсов форм и предоставить разработчику такую же гибкость, как и в традиционном подходе, благодаря следующим принципам:
- Вместо генерации кода интерфейса — построение его модели во время выполнения программы. Компоненты и события интерфейса являются отражением его модели.
- Метамодель — лишь отправная точка для построения интерфейса. К окончательному виду разработчик быстро приводит его с помощью предметно-ориентированного языка (DSL).
- Технологическая нейтральность — отсутствие зависимостей от сторонних библиотек и фреймворков, работа с внешними источниками метаданных через подключаемые модули.
Этот подход реализован в библиотеке CUSTIS Rich Forms, которая в настоящее время используется в нескольких промышленных проектах. В докладе будет показано на конкретных примерах, как выбранная архитектура позволяет решать задачу быстрого построения интерфейсов форм, снижая трудозатраты и уменьшая сложность прикладного кода.
Видео
Слайды
Примечания и отзывы
Plays:25 Comments:0