Comments 4
«Инкапсуляция, наследование, полиморфизм» — это не ООП. Это только одна из разновидностей ООП: да, самая модная, но совсем не единственная.
Композиция + интерфейсы обеспечивают не меньшую мощность, чем наследование + полиморфизм через наследование.
Даже в языки с наследованием включают интерфейсы, позволяющие вообще отказаться от наследования — именно потому, что одиночное наследование слишком ограничено, а множественное создаёт больше проблем, чем решает. А для переиспользования кода есть типажи (trait) и обобщённое программирование (generic).
Композиция + интерфейсы обеспечивают не меньшую мощность, чем наследование + полиморфизм через наследование.
Даже в языки с наследованием включают интерфейсы, позволяющие вообще отказаться от наследования — именно потому, что одиночное наследование слишком ограничено, а множественное создаёт больше проблем, чем решает. А для переиспользования кода есть типажи (trait) и обобщённое программирование (generic).
+2
Это принципы проектирования а не программирования.
+2
А есть где-то объяснение ООП для совсем уж новичков, Сишников?
Сколько таких статьей не читал — так и непонятно зачем это надо. Понял лишь, что разработка в команде удобнее с ООП.
0
Sign up to leave a comment.
Принципы объектно-ориентированного программирования