Например, в отношении принципа Single Responsibility
:
Расскажите о классе Radio
:
Можно утверждать, что класс Radio
имеет две обязанности: управление громкостью и станцией. Эти операции будут вызываться из совершенно разных областей клиента, использующих его.
следовательно, мы имеем:
Все отлично.
Но я всегда вижу такие предложения:
Итак, теперь, когда нам нужно изменить, весь код в зависимости от сломанный компонент dont даже нужно перекомпилировать.
Подождите минуту!
Если мне нужно изменить класс VolumeManager
- мне не придется перекомпилировать Radio
и StationManager
.
Но Мне нужно остановить (в Интернете) iis, чтобы приложение могло использовать новую DLL, и это приведет к отключению приложения.
Кроме того, в console
мне придется завершить всю программу, чтобы изменить dll, так как она заблокирована процессом (вы не можете изменить dll при запуске приложения - файл заблокирован)
даже когда я буду использовать GAC - мне придется остановить прорам, чтобы chagne dll.
так что это меня спасает? компиляция просто - щелкните правой кнопкой мыши и создайте. thats all
Я не вижу смысла упоминать: "вам нужно будет скомпилировать только сломанный класс.."
Что мне не хватает?
http://www.gontu.org/solid-single-responsibility-principle/ искать слово "build
"
http://epic.tesio.it/doc/manual/solid_principles.html искать слово "recompiled
"
http://www.dananhudson.com/?tag=solid искать слово "recompile
"