Важная штука - это понимание SOLID.
Класс должен выполнять только одну роль, обязанность. И эта роль должна быть инкапсулирована внутри объекта.
KISS!
Класс должен быть закрыт к изменению извне, но при этом - должен иметь возможности к расширению реализации.
Объекты высокого уровня не зависят от реализации объектов низкого уровня.
Dependency injection:
//todo
There was an error while loading. Please reload this page.