https://plus.google.com/+SergeyTeplyakov/posts/jHy5AMQGgCs
"Очень часто наличие интерфейсов объясняется не только желанием протестировать класс в изоляции, но и попыткой дать возможность заменить компонент без перекомпиляции приложения. Этот момент очень классно прокритиковал Кент и Дэвид: попытка заменить слой доступа к данным и заменить базу данных веб-сервисом, или in-memory DB на практике невозможна, поскольку каждая из этих реализаций обеспечивает слишком разные характеристики с точки зрения надежности или времени исполнения. На практике даже переход от одной реляционной СУБД на другую оказывается сложным или невозможным, не говоря уже о таких принципиальных сменах «деталей реализации»."
"Все мы знаем, что лепить все в один метод – это плохо. Код получится плохо читаемым, плохо сопровождаемым и совершенно не тестируемым. Но мы знаем, что сейчас легко столкнуться с обратной проблемой, когда даже для мелкой задачи выделяется огромное число классов, в результате чего даже тесно-связанная информация расползается по разным классам или модулям."
"Очень часто наличие интерфейсов объясняется не только желанием протестировать класс в изоляции, но и попыткой дать возможность заменить компонент без перекомпиляции приложения. Этот момент очень классно прокритиковал Кент и Дэвид: попытка заменить слой доступа к данным и заменить базу данных веб-сервисом, или in-memory DB на практике невозможна, поскольку каждая из этих реализаций обеспечивает слишком разные характеристики с точки зрения надежности или времени исполнения. На практике даже переход от одной реляционной СУБД на другую оказывается сложным или невозможным, не говоря уже о таких принципиальных сменах «деталей реализации»."
"Все мы знаем, что лепить все в один метод – это плохо. Код получится плохо читаемым, плохо сопровождаемым и совершенно не тестируемым. Но мы знаем, что сейчас легко столкнуться с обратной проблемой, когда даже для мелкой задачи выделяется огромное число классов, в результате чего даже тесно-связанная информация расползается по разным классам или модулям."
Комментариев нет:
Отправить комментарий