> Эта проблема — ещё одна трещина в Столпе Наследования.
Это трещина не в наследовании, а в башке автора
1) ООП не предназначено для прямого уменьшения повторного использования, оно предназначено для корректного моделирования системы. Повторное использование если вообще и бывает, является
Дублирвание кода (текста) делается макросами или еще какой копипастой. Дублирование высокоуровнего смысла - это совсем другая область, другой логический уровень.
Соответственно, сама система должна быть спроектирована для увеличения повторного использования. А не говнокод которым ты это всё замоделил. Если ты моделируешь говно, то на выходе всегда получается говно, а на Java или Common Lisp оно получится - разница не чтобы сильно большая. Чтобы система была правильно спроектирована нужен хороший разработчик систем, например выделенный системный аналитик или архитектор.
Аналитика у человека не было, сам он не то чтобы гений проектирования, поэтому подпер убогую идею костылями на С++ и Java, и плачет теперь что говно почему-то С++, а не его подход к решению задачи.
Т.е. в проблеме поиска сотрудников (аналитиков, архитекторов) обвинили ООП. Хм, отличная отмаза. На менее подготовленного читателя даже проканало бы, но у нас в Инквизиции за такое сразу же сжигают на рее.
Кстати, все вопросы касательно экономики говна, заставляющей писать софт без аналитиков и анализа, т.е. на самом деле - на все актуальные вопросы современности вообще - отвечает вот эта статья:http://2k.livejournal.com/520078.html
2) > Проблема с ОО-языками заключается в том, что они тянут за собой всё своё окружение. Вы хотели всего лишь банан, но в результате получаете гориллу, держащую этот банан, и все джунгли впридачу. > Джо Армстронг
В 1986 году Джо Армстронг сделал Эрланг. Оперативная память стоила очень дорого, и Джо пришлось капитально попотеть, чтобы сэкономить хоть немного. И процессоры были очень медленные, анализ контекста в компиляторе занимал очень много вычислительных ресурсов.
А потом прошло 30 лет.
3) > Я в течение десятилетий программировал на объектно-ориентированных языках. > private ArrayList