Так все-таки, что же не так с ООП?
От: 0x7be СССР  
Дата: 29.01.12 11:42
Оценка: 37 (9) +5
Коллеги,
хочу в отдельной теме высказаться в продолжение топика Что-то нетак с ООП
Автор: Artifact
Дата: 18.01.12


Я думаю, что главная проблема ООП совсем не в ООП, а в людях, которые некогда превратили его в религию. Даже в университете, как я помню, наc учили в духе, что ООП — это Единственный Истинный Путь (как любил говорить один художник: "Ein Volk, ein Reich, ein Führer"). Отсюда и проблемы. Когда же к ООП относятся просто как к ещё одному инструменту из арсенала разработчика, таких проблем не возникает.

Только, вот, это беда не только ООП — это беда нашей индустрии вообще. Периодически появляются какие-то мессии в виде отдельных людей или корпораций, которые начинают двигать очередную модную идею или технологию, провозглашая её спасением от всех наших бед (в какой уж раз!) и будущим разработки программного обеспечения. Если этот посыл подхватывается массами, то проблемы гарантированы: много людей начнет следовать новым идеям, не понимая их до конца, и тем яростнее их отстаивая, чем примитивнее их понимание. Сколько таких религий уже было и прошло! ООБД ("реляционные СУБД умрут!"), разный веб ("десктопные приложения умрут!"), виртуальные машины ("нативный код умрёт!"), разные новые языки ("С++ умрёт!") и платформы ("вообще все умрут...").

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

Вот сейчас, например, такой "модной фишкой" является agile и scrum. Подчас его пытаются силой натянуть на те проекты, где он совсем не нужен, как тот презерватив на глобус. Опять же, проблема не в agile, проблема в тех, кто слишком уверовал в его чудодейственную силу.

Проблема в людях.
Re: Так все-таки, что же не так с ООП?
От: dimgel Россия https://github.com/dimgel
Дата: 29.01.12 11:45
Оценка:
Здравствуйте, 0x7be, Вы писали:

0>это беда нашей индустрии вообще. Периодически появляются какие-то мессии в виде отдельных людей или корпораций, которые начинают двигать очередную модную идею или технологию,


Я даже знаю, о какой технологии идёт речь.

0>Вот сейчас, например, такой "модной фишкой" является agile и scrum.


А нет, извините, ошибся.

0>Проблема в людях.


Слава роботам!
Re[2]: Так все-таки, что же не так с ООП?
От: 0x7be СССР  
Дата: 29.01.12 11:55
Оценка:
Здравствуйте, dimgel, Вы писали:

D>Я даже знаю, о какой технологии идёт речь.

Я их много перечислил

D>Слава роботам!

Воистину акбар!
Re[3]: Так все-таки, что же не так с ООП?
От: Sharov Россия  
Дата: 30.01.12 09:14
Оценка:
Здравствуйте, 0x7be, Вы писали:

Согласен на 108% процентов. Собственной головы ни один паттерн на заменит.
Кодом людям нужно помогать!
Re: Так все-таки, что же не так с ООП?
От: x-code  
Дата: 30.01.12 11:25
Оценка: :)
Здравствуйте, 0x7be, Вы писали:

0>Проблема в людях.


В жадности человеческой.

Взять к примеру тот же С++. Язык мощный, с множеством возможностей, в общем неплохой но до ужаса кривой, главным образом из-за унаследованных от си вещей. Взять хотя-бы ту же систему #include или препроцессор... Казалось бы, всем все понятно, что стоит всем крупным IT компаниям и open-source сообществу собраться и придумать новый язык — нативный, похожий на С++, но исключительно грамотно спроектированный, избавленный от всех недостатков С++ и с множеством новых полезных и грамотно спроектированных фич. Назвать его C++2, договориться о том, что в течение какого-то времени все компиляторы будут поддерживать файлы обоих типов cpp и cpp2.

Но нет. Вместо этого все упорно продолжают колоться и жрать кактусы. И еще придумывать свои языки (Java, C#). Патентовать их и судиться друг с другом.
Re[2]: Так все-таки, что же не так с ООП?
От: Mamut Швеция http://dmitriid.com
Дата: 30.01.12 12:05
Оценка:
0>>Проблема в людях.

XC>В жадности человеческой.


XC>Взять к примеру тот же С++. Язык мощный, с множеством возможностей, в общем неплохой но до ужаса кривой, главным образом из-за унаследованных от си вещей. Взять хотя-бы ту же систему #include или препроцессор... Казалось бы, всем все понятно, что стоит всем крупным IT компаниям и open-source сообществу собраться и придумать новый язык — нативный, похожий на С++, но исключительно грамотно спроектированный, избавленный от всех недостатков С++ и с множеством новых полезных и грамотно спроектированных фич. Назвать его C++2, договориться о том, что в течение какого-то времени все компиляторы будут поддерживать файлы обоих типов cpp и cpp2.


XC>Но нет. Вместо этого все упорно продолжают колоться и жрать кактусы. И еще придумывать свои языки (Java, C#).


Вообще-то, эти языки претендуют на выделенное.


dmitriid.comGitHubLinkedIn
Re[2]: Так все-таки, что же не так с ООП?
От: Sharov Россия  
Дата: 30.01.12 12:12
Оценка:
Здравствуйте, x-code, Вы писали:

C++ кривой в следствие своей мощности. Хотите грамотно спроектированный, избавленный от всех недостатков С++ и с множеством новых полезных и грамотно спроектированных фич — C# и java к Вашим услугам, хотите нативный, похожий на С++ и относительно простой — шаг назад к Си.
Причем здесь жадность?
Поймите, люди работающие в крупных ИТ компаниях не дураки, они прекрасно понимают что C++ 2 закончиться все тем же C++ 1. Здесь как обычно все сводится к компромиссам.
Кодом людям нужно помогать!
Re[2]: Так все-таки, что же не так с ООП?
От: 0x7be СССР  
Дата: 30.01.12 13:51
Оценка:
Здравствуйте, x-code, Вы писали:

0>>Проблема в людях.

XC>В жадности человеческой.
Боюсь, мы о разных вещах.
Re: Так все-таки, что же не так с ООП?
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 30.01.12 13:52
Оценка:
Здравствуйте, 0x7be, Вы писали:

0>Проблема в людях.


Конкретнее, в догматиках.
Re[2]: Так все-таки, что же не так с ООП?
От: 0x7be СССР  
Дата: 30.01.12 14:28
Оценка:
Здравствуйте, Mystic, Вы писали:

M>Конкретнее, в догматиках.

Не только. Восторженные юноши, окрыленные передовыми идеями, тоже вносят свою лепту
Re: Так все-таки, что же не так с ООП?
От: Lloyd Россия  
Дата: 30.01.12 14:31
Оценка:
Здравствуйте, 0x7be, Вы писали:

0>Вот сейчас, например, такой "модной фишкой" является agile и scrum. Подчас его пытаются силой натянуть на те проекты, где он совсем не нужен, как тот презерватив на глобус. Опять же, проблема не в agile, проблема в тех, кто слишком уверовал в его чудодейственную силу.


Уже года 2-3 как нет. Отстал ты от тренда. Сейчас рулят облака и мобайл.
Re[3]: Так все-таки, что же не так с ООП?
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 30.01.12 14:34
Оценка:
Здравствуйте, 0x7be, Вы писали:

0>Здравствуйте, Mystic, Вы писали:


M>>Конкретнее, в догматиках.

0>Не только. Восторженные юноши, окрыленные передовыми идеями, тоже вносят свою лепту

Юноши — догматики

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

Re[2]: Так все-таки, что же не так с ООП?
От: 0x7be СССР  
Дата: 30.01.12 14:45
Оценка:
Здравствуйте, Lloyd, Вы писали:

L>Уже года 2-3 как нет. Отстал ты от тренда. Сейчас рулят облака и мобайл.

Одно другому не мешает
Re[4]: Так все-таки, что же не так с ООП?
От: 0x7be СССР  
Дата: 30.01.12 14:46
Оценка:
Здравствуйте, Mystic, Вы писали:

M>Юноши — догматики

M>

M>Догматизм способ мышления, оперирующий догмами (считающиеся неизменными вечными положениями, не подвергаемых критике) и опирающийся на них.
M>Для догматизма характерны некритичность по отношению к догмам (отсутствие критики и сомнений) и консерватизм мышления (неспособность воспринимать информацию, противоречащую догмам), слепая вера в авторитеты.

Хорошо, пусть будет так.
Re: Так все-таки, что же не так с ООП?
От: Sinclair Россия https://github.com/evilguest/
Дата: 31.01.12 04:32
Оценка: 11 (3) +5
Здравствуйте, 0x7be, Вы писали:

0>Я думаю, что главная проблема ООП совсем не в ООП, а в людях, которые некогда превратили его в религию.

А я думаю, что главная проблема ООП — в мифологии. Мы сейчас наблюдаем крайне интересную картину во многих областях программирования, включая и ООП: засилье мисконцепций (не знаю правильное слово на русском языке).
Ну то есть берётся какая-нибудь вполне разумная вещь, и начинает доводиться до абсурда. И этот абсурд каким-то непонятным мне образом проникает в популярную литературу.
Например, очень много "учебников ООП" предлагают в качестве примера иерархии классов иерархию геометрических фигур. Опытным разработчикам понятно, что
а) в реальных программах так никто никогда не делает — требования к ним исключают использование иерархии фигур
б) получить математически корректную иерархию фигур вообще невозможно — гуглить срачи по "наследованию прямоугольника от квадрата"
Неопытные разработчики принимают этот бред за чистую монету, откуда происходит злоупотребление ООП.
Очень мало литературы упирает на поведение в поисках иерархий наследования, и много — на состояние. Редкий частный случай, когда имеет смысл наследовать реализацию, а не интерфейс, выдаётся за основное применение.

В итоге мы имеем разрыв между тем, чему учат в учебниках и тем, что стоит применять на практике. Отсюда и весь этот горький катаклизм, который мы наблюдаем.

Не думаю, что ООП слишком в этом специфично. Просто сейчас оно в мейнстриме, и заметнее всего бред именно в нём. Когда ФП окажется в мейнстриме и обрастёт своими мифами, мы, скорее всего, будем наблюдать то же самое.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[2]: Так все-таки, что же не так с ООП?
От: Константин Россия  
Дата: 31.01.12 06:51
Оценка:
Здравствуйте, x-code, Вы писали:

XC>Здравствуйте, 0x7be, Вы писали:


XC>Взять к примеру тот же С++. Язык мощный, с множеством возможностей, в общем неплохой но до ужаса кривой, главным образом из-за унаследованных от C ... но исключительно грамотно спроектированный, избавленный от всех недостатков С++ и с множеством новых полезных и грамотно спроектированных фич.


Одно время казалось, что язык D претендует на эту роль. Сейчас же на его развитие без слез взглянуть нельзя.
После появления C++11 нативному любому нативному "наследнику" будет очень тяжело. Тот же D, кажется, окончательно упустил свой шанс.
Re: Главная проблема все же в ООПе
От: igna Россия  
Дата: 31.01.12 13:05
Оценка:
Здравствуйте, 0x7be, Вы писали:

0>Я думаю, что главная проблема ООП совсем не в ООП, а в людях, которые некогда превратили его в религию.


Если под ООП понимать то, что мы имеем в C++/Java/C#, то думаю, что главная проблема все же в ООП.

Трудности появляются сразу, на самых простых задачах; так из-за отсутствия мультиметодов попытка определения любой операции требующей полиморфизма более чем по одному параметру превращаются в вырезание гландов автогеном через понятно что. Посмотрите как реализуются операции equals на Java или Equals на C#. Если реализация такой простой и фундаментальной операции требует каких-то ненулевых усилий, такая парадигма программирования почти всегда приносит больше вреда чем пользы.
Re[2]: Главная проблема все же в ООПе
От: 0x7be СССР  
Дата: 31.01.12 16:33
Оценка:
Здравствуйте, igna, Вы писали:

I>Если под ООП понимать то, что мы имеем в C++/Java/C#, то думаю, что главная проблема все же в ООП.

I>Трудности появляются сразу, на самых простых задачах; так из-за отсутствия мультиметодов попытка определения любой операции требующей полиморфизма более чем по одному параметру превращаются в вырезание гландов автогеном через понятно что. Посмотрите как реализуются операции equals на Java или Equals на C#. Если реализация такой простой и фундаментальной операции требует каких-то ненулевых усилий, такая парадигма программирования почти всегда приносит больше вреда чем пользы.
Боюсь, мы говорим совершенно о разных вещах.
Re[2]: Так все-таки, что же не так с ООП?
От: 0x7be СССР  
Дата: 31.01.12 16:35
Оценка:
Здравствуйте, Sinclair, Вы писали:

S>Здравствуйте, 0x7be, Вы писали:


0>>Я думаю, что главная проблема ООП совсем не в ООП, а в людях, которые некогда превратили его в религию.

S>А я думаю, что главная проблема ООП — в мифологии. Мы сейчас наблюдаем крайне интересную картину во многих областях программирования, включая и ООП: засилье мисконцепций (не знаю правильное слово на русском языке)...
Я примерно о том же говорю. Чем поверхностнее понимание парадигмы, тем больше вокруг неё мифов и верований и меньше понимания границ её применимости.
Re[3]: Так все-таки, что же не так с ООП?
От: VoidEx  
Дата: 31.01.12 17:50
Оценка:
Здравствуйте, Sharov, Вы писали:

S>Здравствуйте, x-code, Вы писали:


S>C++ кривой в следствие своей мощности.

Да ну. Вот Haskell мощный, но не кривой!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.