Одной из самых серьезных проблем в разработке программного обеспечения является борьба со сложностью решаемой задачи. Более того сложность задач решаемых разработчиками с каждым годом стремительно растет. Для решения этой проблемы хорошо себя зарекомендовал на практике набор подходов и методов, объединенных общим названием Domain Driven Design (DDD).
DDD позволяет существенно увеличить скорость разработки, снизить стоимость сопровождения и повысить качестве программного обеспечения. Но, несмотря на это, внедрение DDD на практике сталкивается с множеством трудностей и препятствий, что нередко приводит к полному отказу от применения данного похода в проекте.
Доклад посвящен описанию того как Domain Driven Design может быть использован в вашем проекте, зачем это вам нужно и почему это работает. Будут освещены преимущества и недостатки DDD, трудности с которыми приходится сталкиваться при его использовании и какой результат принесет его применение.
50. Проектирование по моделиModel Driven Development – проектирование архитектуры, при котором соблюдается максимально точное соответствие между некоторым подмножеством элементов программы и элементами модели 39
60. Что есть vardhe = from dh in DepartmentHistoryRepository where dh.EmployeeId = employee.Id && dh.DateStart<= date && dh.DateEnd >= date select dh; dhe.DateEnd = date.AddDay(-1)
64. Зачем DDD? Эффективный способ борьбы со сложностью Единый язык Низкая стоимость разработки и сопровождения 53
65. Почему нет? Проблемы: Организационные: Разделение анализа и проектирования Отстранение разработчиков от анализа Отсутствие опыта DDD Технические 54
66. Спасибо за внимание Николай Гребнев CUSTIS ngrebnev@gmail.com http://www.slideshare.net/ngrebnev