Сущности Entity в DDD.

Зачастую в нашем домене имеются модели, требующие быть уникально идентифицированными в рамках нашего приложения.

Например такими моделями могут являться:

  • автомобиль в системе учета транспорта
  • пользователь в приложении
  • заказ в интернет магазине

Все они должны иметь уникальный идентификатор, чтобы мы могли отличать их от аналогичных. 

Читать далее

Зачем нужен подход Event Storming ?

Одним из самых важных и сложных моментов, предшествующим разработке архитектуры приложения, это сбор требований и моделирование бизнес-процессов.

Не важно, внтутренний или внешний заказчик, не важно будет in-house или outsource разработка, вначале требуется понять ЧТО требуется сделать, КАКИЕ объекты будут в будущей системе и КАКИЕ сценарии должны происходить. И  если ваше будущее приложение немного сложнее, чем красная кнопка с функционалом оставить отзыв, то в сложном бизнес-процессе будет присутствовать большое количесство объектов и вариантов сценариев с ними.

Но зачастую такие знания о процессах, которые должны происходить в системе при различных условиях, о возможных состояниях объектов в системе и условиях переходов из одного состояния в другое, не описаны в едином источнике знаний. Знания и понимание как должно быть могут немного содержаться в устаревшей документации, разумеется у product manager, project manager, у программистов и у многих других сотрудников компании, в том числе у собственника бизнеса. 

И для такого моделирования уже существуют способы разной степени сложности и затратности по времени, но на их фоне очень выгодно выделяется подход Event Storming, введеный итальянским программистом Альберто Брандолини, успешно используемый им в контексте DDD.

Читать далее

Книга о паттернах проектирования от Банды Четырех.

«Приёмы объектно-ориентированного проектирования. Паттерны проектирования» (Design Patterns: Elements of Reusable Object-Oriented Software) — книга 1994 года о программной инженерии, описывающая шаблоны проектирования программного обеспечения. Авторами книги, которых прозвали «Бандой четырёх», являются Эрих Гамма, Ричард Хелм, Ральф Джонсон (англ.)русск., Джон Влиссидес. Предисловие написал Гради Буч.

Читать далее

Принципы проектирования SOLID за 7 минут.

ООП подход к написанию приложений сделал возможным написание хорошо масштабируемого и поддерживаемого кода, но как и в случае с любой хорошей вещью, попав в неопытные руки, проект чуть больше лендинг страницы, содержащий в себе более десяти взаимосвязанных классов, начинает стремительно становится громоздкой, сильно связанной мешаниной классов. И чтобы минимизировать вероятность плохих результатов, достаточно придерживаться 5 принципам абревиатуры SOLID.

Читать далее