А вот и не соглашусь.
Именно ООП ближе к материализму, так как все пытается объяснить сущностями (отдельными самодостаточными и самдеятельными объектами). А философия идеализма по Гегелю - нет мира в отрыве от наблюдателя. И наблюдатель способен изменять окружающую среду по своему усмотрению. Что кстати недавно доказали какие-то ученые (не британские))).
Они проводили какой-то эксперимент с элементарными частицами и вычислили, что при наблюдении за процессом они ведут себя совсем не так, как в "свободном плавании".
Ну это так, отвлечение. Просто то, чего я не вижу и на что не могу влиять для меня существует. Допустим в данный момент в каком-нибудь Гондурасе чёрный негр рвет банан с пальмы, но мне нет до того дела, а значит и негра нет. Как только появится к нему интерес, он начнет для меня существовать. Не ранее. Другими словами мир, это то, что я вижу, ощущаю и на что могу влиять. Это конечно в идеале, но на то он и идеализм.
Так вот. Мне допустим совершенно не нравится, что в моем коде какие-то собаки бегают сами по себе. Я создал этот мир (программу) и только я должен ей управлять. И у меня разрыв шаблона от того, что собака.лает() Кто ей позволил лаять?
Мне допустим ближе и роднее рассуждения плана слушать('собака'); Пока я не захочу услышать лай, должна быть тишина.
Если в реальном мире не получается сделать то, что хочется, какой смысл переводить его недостатки в программирование. Как раз вот такие действия собака.летать(); сносят крышу. С чего она вдруг полетела... А вот такие: пнуть('собака'); вполне логичны с точки зрения моего эго, как разработчика.
Тут вот как раз и зарыта та самая собака, почему грамотный ООП код мало кто способен написать. Как не крути, а внутри любого человека, способного к созиданию (а это суть программирования) сидит такой маленький Бог, который хочет прогнуть мир под себя. И если у него не достаточно фантазии и смелости, он начинает плыть по течению, становится зависимым от внешних факторов и уже программа управляет им, а не он программой. Сие есть материализм.
А программирование дает нам возможность сделать невозможное, воплатить мечты в реальность. Вобщем то тут нет большой разницы, какой инструмент использовать, ООП, процедурку или смешать все в кучу.
Тут важно не проецировать реальный мир на коды. Или наоборот. А это как раз и пытаются вдолбить в неокрепшие умы авторы фундаментальных трудов по ООП, пытаясь связать все объектами и аналогиями с реальным миром. Это сильно мешает, о чем я и написал в первом посте, что и вызвало бурные дебаты.
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.