всегда у классов есть функционал?
а какой в этом смысл? Когда класс реализует сразу несколько интерфейсов, это нормально, но делать макаронину ради экономии 3 строчек кода, ну такое
Как было сказано в одной умной статье, слово "функционал" мы используем, когда говорим про математику или секс 😉, а когда про разработку приложений — "функциональность".
А в чём проблема макаронин?
оставим это для разработчиков из Италии
Бытует мнение, что наследование — это вообще древнее зло. )
Да и чем длиннее эти "макаронины", тем сильнее становится быть спаггети, из-за чего и может в какой то момент твой код стать в виде spaghetti-code (популярный термин)
А как без наследования например реализовать список объектов с определенной функциональностью. Без наследования, это намного более трудная задача
Отткройте за собой форточку
У меня он и так на калбеках сделан, куда уж более спагетти)))
Паттерны вам в зубы. )) А вообще, я бы сначала задался вопросом, а точно ли эта определённая функциональность должна быть частью этих объектов? Может её надо просто вынести отдельно? Вы не подумайте, я не считаю что наследование в топку не нужно (хотя и не исключаю такую вероятность). Я просто рассуждаю — а точно ли оно нужно конкретно здесь и сейчас? Может, я просто устал от вебдевовского спагетти и мусора... 🤔
Типа, vector<unique_ptr<Base>>? А зачем тебе в Base тут поля?
ну вот тут Animal это (пустой) интерфейс, все ок, вопросов нет
Не уверен, что это можно назвать наследованием. Скорее полиморфизм, если говорить о концепциях ООП.
Да. Но с точки зрения языка это тоже называется наследованием.
Обсуждают сегодня