Перечислите SOLID принципы



SOLID - это аббревиатура. Расшифровывается так:



S - Single Responsibility - означает что класс должен отвечать только за операции одного типа.



O - Open-Closed - описываемый класс должен быть открыт для расширения, но закрыт для изменений.



L - Liskov Substitution - если наш класс А является наследником класса В, то любой объект класса В может быть заменен объектом класса А без негативных последствий и нарушения функционала.



I - Interface Segregation - класс должен выполнять только те функции и задачи которые на него возложены, в ином случае это производит к потере ресурсов и появлению багов.



D - Dependency Inversion - зависимости самого низкого уровня не должны зависеть от зависимостей высшего уровня и наоборот - зависимости высшего уровня НЕ могут существовать без зависимостей низшего уровня.