Кодекс, который не подвергается сомнению, действительно меня раздражает. Следующие вещи делают неопровержимый код:
- глобальные состояния, например шаблон проектирования Singleton
- статические методы, которые выполняют некоторую причудливую работу, например доступ к базе данных.
- Дерево глубокого наследования
- работать в конструкторе, например. контрольные заявления
- которые нарушают принцип единой ответственности
Есть ли еще предупреждающие знаки?