Мы берем разные пакеты и код, который сам по себе ничего не стоит и не работает и создаем систему, убирая всё лишнее.
Люди, практикующие DDD, иногда используют выражение «дистилляция модели». Сравним себя на минуту с производителями виски. Если немного упростить, производство виски начинается с большого количества ферментированного сусла, непригодного для питья. Сусло нагревают и собирают испарения. Начальный продукт, содержащий ацетон, выливают. Средняя часть в основном содержит алкоголь и немного воды с натуральным привкусом. Ее оставляют. В последней части немного алкоголя и большое количество воды, ее привкус не самый приятный. Ее тоже выбрасывают. Все, что осталось, мы называем виски. Ваше отношение к этому напитку и предпочтения могут разниться, но основная идея должна быть понятна. В процессе дистилляции мы сознательно сохраняем некоторые части и отбрасываем те, которые нам не нужны. Точно так же, дистиллируя модель, вы избавляетесь от одних аспек- тов реальности и оставляете другие.
Важно здесь то, что дистилляцию можно проводить по-разному. У нас есть выбор. Мы сознательно оставляем среднюю часть, так как наша задача — получить крепкий напиток со специфическим привкусом. Мы пытаемся дистиллировать нечто, что будет приятно употреблять. Цель определяет способ дистилляции.