Какие два принципа SOLID максимально похожи друг на друга

Python Junior Рунити
Какие два принципа SOLID максимально похожи друг на друга
Ответы
Принципы **LSP (Liskov Substitution Principle)** и **ISP (Interface Segregation Principle)** часто путают, так как оба связаны с проектированием интерфейсов и наследованием. - **LSP** требует, чтобы подклассы могли заменять родительские классы без изменения корректности программы. - **ISP** говорит, что клиенты не должны зависеть от интерфейсов, которые они не используют. Пример нарушения LSP: ``` class Bird: def fly(self): pass class Penguin(Bird): # Пингвин не может летать, нарушение LSP def fly(self): raise NotImplementedError ``` Пример нарушения ISP: ``` class Worker: def work(self): pass def eat(self): pass class Robot(Worker): # Роботу не нужно есть, но он вынужден реализовывать eat() def eat(self): raise NotImplementedError ``` Оба принципа направлены на избегание "ненужных" методов, но LSP фокусируется на поведении подклассов, а ISP — на разделении интерфейсов.