Мое определение компонента немного отличается: «Группа функциональных возможностей, находящихся за общим чистым интерфейсом, которые постоянно находятся внутри среды выполнения, такой как приложение».
Намного меньше команд сообщали мне, что они используют инструменты статического анализа (например, NDepend, Structure101, Checkstyle) для автоматической проверки и выявления архитектурных нарушений во время сборки.
Мое определение компонента немного отличается: «Группа функциональных возможностей, находящихся за общим чистым интерфейсом, которые постоянно находятся внутри среды выполнения, такой как приложение»
Представьте, что является плагином для приложения – плагином, который настраивает начальное окружение, загружает все внешние ресурсы и затем передает управление политике верхнего уровня.
В то же время мы должны помнить, что игнорирование границ может вызвать сложности в будущем – даже при наличии всеобъемлющего набора тестов и жесткой дисциплины рефакторинга.