Domain Driven Design - от требований до кода (Максим Цепков на SECON-2014) — различия между версиями
(Новая страница: « Выступление на [http://2014.secon.ru/ SECON-2014] в Пензе 14.03.2014 [http://2014.secon.ru/program/management/68 Доклад на сайте…») |
|||
Строка 13: | Строка 13: | ||
<html><center> | <html><center> | ||
<embed src="http://www.youtube.com/v/XQUzFtyya2M&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="315"></embed> | <embed src="http://www.youtube.com/v/XQUzFtyya2M&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="315"></embed> | ||
+ | </center></html> | ||
+ | ---- | ||
+ | <html><center> | ||
+ | <iframe width="560" height="315" src="//www.youtube.com/embed/XQUzFtyya2M" frameborder="0" allowfullscreen></iframe> | ||
</center></html> | </center></html> | ||
Версия 10:10, 17 мая 2014
Выступление на SECON-2014 в Пензе 14.03.2014 Доклад на сайте конференции Презентация на slideshare
Содержание
Аннотация
Domain Driven Design (DDD) — подход, предложенный Эриком Эвансом для эффективного проектирования и реализации приложений в сложных предметных областях. Основой его является создание модели будущей системы на едином языке (ubiquitous launguage), разрабатываемом для проекта и обеспечивающим надежные коммуникации между всеми участниками проекта. Модель, описанная на этом языке, согласуется с бизнес-заказчиком и верифицируется им, а затем отражается в реализацию системы с использованием типовых шаблонов, так что элементы и конструкции модели могут быть прослежены в коде. Таким образом обеспечивается соответствие поведения готовой системы потребностям заказчика, без чего сложные IT-проекты едва ли могут стать успешными.
В докладе будет дан общий обзор DDD на основе многолетнего успешного опыта его применения для разработки приложений — от построения модели с формированием единого языка до выработки шаблонов реализации типовых элементов модели.
Видео
Слайды
Персона
Я верю, что автоматизация дает новые возможности для развития. Создавая автоматизированные системы, мы открываем путь прогрессу и делаем мир лучше. Проектирование архитектуры реальных систем, особенно в заказной разработке, — интереснейший процесс поиска баланса между общими архитектурными подходами и реализацией специфических требований конкретного проекта. Я разрабатывал архитектуру для множества систем и нескольких фреймворков.
Я верю в эффективность командной работы и профессиональных сообществ и категорически не согласен рассматривать людей как ресурсы. Командная работа необходима и в проектировании архитектуры, вопреки распространенному мнению, что этим должен заниматься единоличный творец. По моему опыту, лучшие архитектуры создавались совместно сильными архитекторами, хотя договариваться было не просто. Я внимательно слежу за трендами развития отрасли, включая управление проектами, и стараюсь формировать целостную картину. Мне нравится делиться своими взглядами в профессиональных сообществах, выступая на конференциях и работая в программных комитетах конференций SECR и Analyst Days.