Источник: CC BY-SA 3.0 Adewale Oshineye

Предметно-ориентированные языки программирования (Domain Specific language), непрерывная интеграция (Continuous Integration) и регистрация событий (Event Sourcing) — важнейшие инструменты разработчика программного обеспечения XXI века, убежден Мартин Фаулер, главный научный сотрудник компании ThoughtWorks, соавтор опубликованного десять лет назад манифеста скорой разработки Manifesto for Agile Software Development, автор ряда популярных книг по архитектуре ПО, экстремальному программированию и языку UML.

Перечисленным концепциям была посвящена презентация, проведенная Фаулером на недавней конференции по разработке программного обеспечения QCon в Сан-Франциско.

По убеждению Фаулера, использование предметно-ориентированных языков (таких как CSS, Hibernate и Microsoft LINQ) позволяет значительно повысить продуктивность разработки.

Метод непрерывной интеграции состоит в регулярной (например, ежедневной) полной сборке проекта из частей, разрабатываемых различными командами. Такая схема работы позволяет завершать проекты в кратчайшие сроки, уверен Фаулер.

Метод регистрации событий заключается в том, чтобы сохранять информацию обо всех изменениях состояния приложения в виде специальных событийных объектов. Благодаря этому можно будет не только узнать, в каком состоянии система находилась в любое время, но и восстановить всю цепь событий, которая привела к возникновению этого состояния.