Author

Topic: ООП как... мифология разработки? (Read 2164 times)

legendary
Activity: 2128
Merit: 1019
Т.е. если не ставить ООП как самоцель, а именно, что бы всё было кошерно и согласно вумным книжкам, то и эта технология имеет право на существование, на мой взгляд.

Именно так. Что то удобно, что то неудобно. Пользуйтесь тем, что когда и кому удобно.
Сдуру - можно и хер сломать, чего уж там...

Статья - повод поговорить журналюгам. Работа такая.
legendary
Activity: 1554
Merit: 1008
писал на Си и как только появился первый ООП - попробовал, думал - ура! можно создать мир объектов типа нашего мира и тд.
но - тьфу

во всех ООП пишу только статические классы - по сути подпрограммы

полезной сути в объектах не вижу - лишнее замусоривании памяти компа и снижение его скорости работы

вместо того чтобы хранить данные в массивах и обрабатывать их в продпрограммах - народ их пихает в объекты и создает кучу проблем - как по памяти так и по скорости
legendary
Activity: 3556
Merit: 1100

Запад гниёт.
Север замерзает?
Юг поджаривается?
Восток - дело тонкое?  (всё что и приходит на ум... А где тонко, там и рвётся[логика Roll Eyes])
hero member
Activity: 574
Merit: 523
Просто парадигма ООП в программировании продолжает "проваливаться" точно так же, как Запад "загнивать", а доллар "рушиться"...

Проблема то именно в том, что запад действительно гниет (чего стоит разрешение однополых браков, например). Но это уже разговор о политике а не о ЯП.
legendary
Activity: 1498
Merit: 1021
Was mich nicht umbringt macht mich stärker [F.N.]
Просто парадигма ООП в программировании продолжает "проваливаться" точно так же, как Запад "загнивать", а доллар "рушиться"...
hero member
Activity: 672
Merit: 500
Опять ООП провалилось?

Quote
Прошло ровно 10 лет с публикации..
Снова прошло 10 лет? Как-то знакомо это..

Нашел оригинал: http://rsdn.ru/article/philosophy/WhyOOP.xml

Осматриваем снизу
Quote
Эта статья опубликована в журнале RSDN Magazine #2-2010. Информацию о журнале можно найти здесь

Глянул дату первого коментария в блоге:
Quote
Дмитрий
21.09.2010 в 17:59

То есть статья 2010 года и тогда прошло 10 лет. То есть "ООП провалилось" где-то в 2000-м году..

Прошло почти 15 лет, а воз и ныне там. Неужели все так плохо?
hero member
Activity: 574
Merit: 523
Любопытная статейка.

Думаю, что всё хорошо, когда мера соблюдается. Сейчас почти не принято (хотя в крипто- и криптовалютных технологиях этот вид оптимизации как раз встречается очень часто) писать критичные по времени участки кода на ассемблере, но 20 лет назад в любой статье по оптимизации можно было найти "правило 95%" - т.е. примерно 95% кода могут быть реализованы без ущерба для производительности на языке высокого уровня и, в худшем случае, около 5% подлежат скруппулезной оптимизации, в том числе, с использованием машинно-ориентированных языков.

Кстати, хороший, на мой взгляд, пример сбалансированного использования возможностей C++ - это биткоин-клиент. Код не перегружен разнообразием никчемных классов, при этом очень активно используется мехнизм шаблонов и перегрузки операций, что облегчает понимание сути кода и разработку (доработку/модификацию).

Т.е. если не ставить ООП как самоцель, а именно, что бы всё было кошерно и согласно вумным книжкам, то и эта технология имеет право на существование, на мой взгляд.
legendary
Activity: 1064
Merit: 1023
habr

Почему объектно-ориентированное программирование провалилось?

Quote
Александр Александрович полностью разочаровался в парадигме ООП, в частности он пишет:

    «Я уверен, что ООП методологически неверна. Она начинает с построения классов. Это как если бы математики начинали бы с аксиом. Но реально никто не начинает с аксиом, все начинают с доказательств. Только когда найден набор подходящих доказательств, лишь тогда на этой основе выводится аксиома. Т.е. в математике вы заканчиваете аксиомой.

    Тоже самое и с программированием: сначала вы должны начинать развивать алгоритмы, и только в конце этой работы приходите к тому, что вы в состоянии сформулировать четкие и непротиворечивые интерфейсы. Именно из-за этой неразберихи в ООП так популярен рефакторинг — из-за ущербности парадигмы вы просто обречены на переписывание программы, уже в тот самый момент, когда только задумали её спроектировать в ООП-стиле».

Ричард Столлман также известен своим критическим отношением к ООП, особенно он любит шутить насчет мифа объектников что ООП «ускоряет разработку программ»:

«Как только ты сказал слово „объект“, можешь сразу забыть о модульности»

    «ООП ради самой ООП уже давно превратилось в замкнутый круг. Конечно, можно считать C# в .NET 3.5 с более чем 50,000 реализованных классов „венцом эволюции“. Добавить в следующей версии .NET ещё миллион классов — что может быть более правильным и более вожделенным, с точки зрения ООП-программиста? Говорите, это и есть то самое бегство от сложности?» (на этом месте интервью Ричард демонстративно делает паузу и выкашливается от приступа смеха).

Java/C# не являются ни развитием, ни «осознанием ошибок» C++. Они взяли наихудшую парадигму из языка и возвели ее в степень настоящей догмы. А именно — идею наследования.

Наследование — это самая большая провокация в индустрии. Ни в каком моделировании наследования не существует (и в реальной жизни его нет тоже) — ни в электронике, ни в бухгалтерии, ни в политике, ни где бы то ни было еще. Есть лишь одна область, где наследование теоретически встречается — генеалогия (эй, парни, лучше не путать это с гинекологией). Но это не имеет ни малейшего отношения к тому, что называется наследованием в программировании. Все эти многоэтажные иерархии классов только усложняют жизнь программиста, вместо того, чтобы упрощать по своему замыслу.



Полня статья: http://blogerator.ru/page/oop_why-objects-have-failed

Jump to: