ODMA

Целостный рефакторинг

← К концепции

Сначала определяем ответственность

Перед существенным рефакторингом определяем владельца, потребителей, зависимости, контракты и тесты. Формулируем решение явно: ответственность X принадлежит Y, поэтому её контракт находится в Z.

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

Сохраняем комментарии, стабильные идентификаторы и поведение. Генерируемый результат меняем через источник и генератор. Diff должен быть целостным, без посторонних переименований, форматирования и уборки.