В этой книге, написанной двумя ведущими экспертами в области программирования Дино Эспозито и Андреа Сальтарелло, рассказывается от начала и до конца как применять шаблоны и лучшие методики для управления сложными проектами, как облегчить их сборку и упростить поддержку и дальнейшую модернизацию. Во втором издании книги подробно рассмотрены темы о моделировании предметной области, архитектуре CQRS (Сommand-Query Responsibility Segregation - разделение ответственности на команды и запросы) и моделях, основанных на источниках событий. Книга является практическим руководством по следующим темам: cоздание тестируемых, сопровождаемых и безопасных систем еще на ранних этапах проектирования; предоставление логики приложения через интерфейс, ориентированный на службы; выбор самого подходящего шаблона для реализации логики приложения и его функциональных возможностей; использование шаблонов для разделения пользовательского интерфейса и логики представления; управление несогласованностью между объектами и данными; минимизация усилий разработчиков, устранение проблемы последующего перепроектирования и получение надежных и устойчивых систем. Эта книга поможет вам принять правильные архитектурные решения и улучшить качество и надежность ваших приложений на платформе Microsoft.NET Разработка эффективной архитектуры - лучшая стратегия борьбы со сложностью проекта, которая приводит к улучшению результатов. Однако с появлением облачных и мобильных технологий, а также других новшеств, теоретические принципы и практические приемы разработки архитектуры программного обеспечения, то что авторы называют "наукой принимать твердые решения", подверглись пересмотру. Авторы представляют вниманию читателей полностью переработанную и обновленную версию книги, в которой они делятся своими знаниями и опытом, чтобы помочь вам достичь успеха и создать более эффективное программное обеспечение. Полностью переработанное второе издание позволит читателям: Понять, что только глубокое понимание предметной области позволяет выбрать правильную архитектуру. Изучить предметно-ориентированное проектирование как с теоретической, так и с практической точек зрения Изучить подход сначала код/потом модель и освоить многоуровневую архитектуру Осознать преимущества приоритетности поддержки программного обеспечения Убедиться, что удобочитаемость, тестируемость и возможность расширения повышают качество кода Освоить подход UX-first и отказаться от проектирования, ориентированного на данные Ознакомиться с шаблонами организации бизнес-логики Научиться совместно использовать шаблоны Источники событий и CQRS для более эффективного моделирования сложных предметных областей Получить глубокие знания об уровне постоянного хранения, включая шаблоны и их реализацию Примеры кода находятся на сайте, указанном в книге. О книге Предназначена для опытных и целеустремленных архитекторов программного обеспечения Будет полезна в качестве руководства для ведущих и обычных разработчиков Для понимания содержания требуется большой опыт объектно-ориентированного проектирования. Желательно иметь знания о платформе .NET и методах доступа к данным. 2-е издание.