Не согласен, а шаблоны проектирования зачем разрабатывают тогда, а потом ещеС другой стороны
программирование ООП на С++ требует очень высокой степени проработки
алгоритма программы (читай структуры классов) и в реальной жизни
зачастую невозможно учесть всех потенциальных изменений , которые
может претерпеть программа. И это сводит на нет всю ООП парадигму,
т.е. гладко бывает только на бумаге. Единственная область, где ООП
пытается доказать свое право на существование - GUI, но и здесь не
все просто.
и применяют на практике? ООП уже больше 20 лет и сейчас этот подход очень
оправдан.
Насчет Си могу сказать, что его использование оправдано при программировании
микроконтроллеров, где программы не столь большие, а памяти не так много,
как хотелось бы. Да и производителям гораздо легче реализовывать компилятор
Си для каждой серии микроконтороллеров, чем Си++ с его шаблонами, классами и
т.п.
Но вообще-то все идет к тому, что и на Си вскоре забьют окончательно.