OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Суббота, 25 Сентябрь, 2021 20:19

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 54 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 12:12 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Цитата:
Игорь Савчук подготовил заметку, резюмирующую позицию противников объектно-ориентированного программирования. Статья написана на основе публикации Ричарда Гэбриела и родившихся после ее выхода обсуждений, в которых приняли участие целый ряд известных программистов, от редакции американского журнала Др.Добс, до таких ученых как Энди Танненбаум.

http://blogerator.ru/page/oop_why-objects-have-failed
http://www.opennet.ru/opennews/art.shtml?num=28148


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 15:49 
Аватара пользователя

Зарегистрирован: Суббота, 06 Декабрь, 2008 22:59
Сообщения: 246
Откуда: Волгоградская обл.
Искусство публичных дискуссий не может быть доказательством провала ООП или его отсутствия. Это чисто личностные качества, не имеющие отношения к ООП.
ООП - реальный инструмент, приносящий реальную пользу, и реальное ускорение процесса разработки.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 17:07 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9438
Откуда: Россия, Орёл
На эту тему - как раз свежее обсуждение на Педсовете:
http://pedsovet.org/forum/topic7190.html


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 17:13 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Alexanbar писал(а):
Искусство публичных дискуссий не может быть доказательством провала ООП или его отсутствия. Это чисто личностные качества, не имеющие отношения к ООП.
ООП - реальный инструмент, приносящий реальную пользу, и реальное ускорение процесса разработки.

Проблема в том, что то, что нынче называют ООП, от ООП имеет только термины. По сути современное ООП, это просто набор терминологии, которую утащили из настоящего ООП, куча лозунгов, вокруг этого маркетинга и шумихи + немного синтаксического сахара для старых добрых процедурных методик (модульность, абстрактные типы данных, манипуляции с указателями на функции для диспетчерезации вызовов). Всё.

Отодрали от ООП фасад и прилепили на процедурной язык. Назвали явой, c# или что там нынче модно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 18:01 
Аватара пользователя

Зарегистрирован: Суббота, 06 Декабрь, 2008 22:59
Сообщения: 246
Откуда: Волгоградская обл.
Alexey Veselovsky писал(а):
Проблема в том, что то, что нынче называют ООП, от ООП имеет только термины. По сути современное ООП, это просто набор терминологии, которую утащили из настоящего ООП, куча лозунгов, вокруг этого маркетинга и шумихи + немного синтаксического сахара для старых добрых процедурных методик (модульность, абстрактные типы данных, манипуляции с указателями на функции для диспетчерезации вызовов). Всё.

Отодрали от ООП фасад и прилепили на процедурной язык. Назвали явой, c# или что там нынче модно.

Как говорится, хоть горшком назови - только в печь не ставь.

Видать, знали, что отдирать. И какая от этого польза может быть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 18:18 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
У меня такое ощущение иногда складывается, что народ считает ООП тем, где написав имя переменной и поставив точку (или ->, от языка зависит) IDE выдаст список всего того, что с этой переменной можно сделать (список методов и полей, ага). Это считается если не единственным свойством, то основным.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 18:54 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3258
Откуда: Астрахань
Цитата:
Типы записей (указательные типы) могут переопределяться, обеспечивая таким образом полиморфизм.

Проясните этот момент, пожалуйста...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 19:03 
Аватара пользователя

Зарегистрирован: Суббота, 06 Декабрь, 2008 22:59
Сообщения: 246
Откуда: Волгоградская обл.
Alexey Veselovsky писал(а):
У меня такое ощущение иногда складывается, что народ считает ООП тем, где написав имя переменной и поставив точку (или ->, от языка зависит) IDE выдаст список всего того, что с этой переменной можно сделать (список методов и полей, ага). Это считается если не единственным свойством, то основным.


Народ может считать по-разному, но то, что IDE выдаёт после точки всё, что можно сделать с объектом, крайне удобно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 19:07 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Alexanbar писал(а):
Народ может считать по-разному, но то, что IDE выдаёт после точки всё, что можно сделать с объектом, крайне удобно.

А в BB этого нет, следует ли из этого, что BB крайне не удобен? ;-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 19:18 
Аватара пользователя

Зарегистрирован: Суббота, 06 Декабрь, 2008 22:59
Сообщения: 246
Откуда: Волгоградская обл.
Alexey Veselovsky писал(а):
Alexanbar писал(а):
Народ может считать по-разному, но то, что IDE выдаёт после точки всё, что можно сделать с объектом, крайне удобно.

А в BB этого нет, следует ли из этого, что BB крайне не удобен? ;-)


ВВ далеко до удобства. По крайней мере, в моём разумении. А удобство - это не мода, а возможность ускорить процесс разработки. По крайней мере, для значительного количества задач.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 19:49 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Alexey Veselovsky писал(а):
У меня такое ощущение иногда складывается, что народ считает ООП тем, где написав имя переменной и поставив точку (или ->, от языка зависит) IDE ...
В точку!

Точечка (или ...) -- вот главное для народа. Даже без IDE :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 19:50 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Alexanbar писал(а):
удобство - это не мода, а возможность ускорить процесс разработки.
Представляю себе программера, который не помнит толком, об чём класс, и быстро-быстро выбирает методы :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 19:51 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Alexanbar писал(а):
ВВ далеко до удобства. По крайней мере, в моём разумении. А удобство - это не мода, а возможность ускорить процесс разработки. По крайней мере, для значительного количества задач.

Возвращаясь к теме -- ООП не позволяет ускорить процесс разработки для значительного количества задач. Вот исследование на эту тему: http://www.csm.ornl.gov/~v8q/Homepage/P ... ntable.pdf

Существенное ускорение процесса разработки можно достичь правильным выбором инструментария. Языка, библиотек, утилит всевозможных и т.п. Да, это будет не общее решение, это будет частное решение под эту задачу. Серебряной пули нет.

Более того, ООП поощряет частенько ТАКУЮ архитектуру, что в простом процедурном коде "почти без архитектуры" разобраться оказывается намного проще. Напарывался неоднократно на проектах маленьких-среднего размера (100-300 тыс. строк кода).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 19:55 
Аватара пользователя

Зарегистрирован: Суббота, 06 Декабрь, 2008 22:59
Сообщения: 246
Откуда: Волгоградская обл.
Info21 писал(а):
Alexanbar писал(а):
удобство - это не мода, а возможность ускорить процесс разработки.
Представляю себе программера, который не помнит толком, об чём класс, и быстро-быстро выбирает методы :)


Не совсем так. Программер не помнит толком, об чём класс, но набравши точку, начинает изучать, что за диковинные свойства и методы есть у объекта, и чего ему надо скормить, чтобы активировать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 20:01 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Info21 писал(а):
Alexanbar писал(а):
удобство - это не мода, а возможность ускорить процесс разработки.
Представляю себе программера, который не помнит толком, об чём класс, и быстро-быстро выбирает методы :)

Зачем представлять? Достаточно пройтись по конторам и посмотреть как народ пишет. Это "нормальная" практика. Особенно если класс не свой, а какой-то там системный/библиотечный.

Очень простая схема: нужно сделать НЕЧТО. Ищется класс который походит на то, что нам нужно, пусть это скажем класс Foo. Пишем в функции (где должен быть наш функционал нечто вроде) "Foo f; f." и смотрим что там IDE нам вывалила. Ищем в списке нечто похожее на то. что решит нашу проблему (по названию и аргументам + там же дока ещё вываливается) если нашлось то пробуем, если нет, либо проба оказалась неудачной, то стрираем нашу "Foo f; f." и ищем другой класс. Повторяем пока не найдем.

Здорово, правда?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 20:07 
Аватара пользователя

Зарегистрирован: Суббота, 06 Декабрь, 2008 22:59
Сообщения: 246
Откуда: Волгоградская обл.
Alexey Veselovsky писал(а):
Возвращаясь к теме -- ООП не позволяет ускорить процесс разработки для значительного количества задач. Вот исследование на эту тему: http://www.csm.ornl.gov/~v8q/Homepage/P ... ntable.pdf

Не смог осилить. Много букв. И все английские.

Alexey Veselovsky писал(а):
Существенное ускорение процесса разработки можно достичь правильным выбором инструментария. Языка, библиотек, утилит всевозможных и т.п. Да, это будет не общее решение, это будет частное решение под эту задачу. Серебряной пули нет.


Это само собой разумеется.

Alexey Veselovsky писал(а):
Более того, ООП поощряет частенько ТАКУЮ архитектуру, что в простом процедурном коде "почти без архитектуры" разобраться оказывается намного проще. Напарывался неоднократно на проектах маленьких-среднего размера (100-300 тыс. строк кода).


В чужом коде, действительно тяжелее разобраться с кодами, если всё разделено на классы, нежели просто содержится набор процедур.

Но для модификации собственного кода классы предпочтительней.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 20:09 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Alexanbar писал(а):
В чужом коде, действительно тяжелее разобраться с кодами, если всё разделено на классы, нежели просто содержится набор процедур.

Но для модификации собственного кода классы предпочтительней.

Свой код становится чужим через полгода-год (на год забросил проект, вернулся через год). Либо через примерно 50 тысяч строк кода. Кроме того, код обычно пишется командой, так что 90 процентов времени ты разбираешься с чужим кодом. Т.о. вы подтвердили, что ООП провалилось :-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 20:31 
Аватара пользователя

Зарегистрирован: Суббота, 06 Декабрь, 2008 22:59
Сообщения: 246
Откуда: Волгоградская обл.
Alexey Veselovsky писал(а):
Alexanbar писал(а):
В чужом коде, действительно тяжелее разобраться с кодами, если всё разделено на классы, нежели просто содержится набор процедур.

Но для модификации собственного кода классы предпочтительней.

Свой код становится чужим через полгода-год (на год забросил проект, вернулся через год). Либо через примерно 50 тысяч строк кода. Кроме того, код обычно пишется командой, так что 90 процентов времени ты разбираешься с чужим кодом. Т.о. вы подтвердили, что ООП провалилось :-)


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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 20:45 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Alexanbar писал(а):
Провал будет тогда, когда ООП в массе своей перестанут пользоваться. Безусловно, что на выбор способа программирования влияет много вещей, не имеющих прямого отношения к технологиям, тем не менее, ООП востребовано.

ООП перестали пользоваться как только появился С++, а добила ООП окончательно Ява. C# надругался над трупом.

Помните фильм "Люди в черном"? Там вначале замечательный эпизод. Прилетает этот прекрасный тараканчик, к воронке подходит мужык, и тараканчик его немного убивает, и залезает внутрь этого мужика, и ходит потом в виде него. Носит его тело в качестве сарафанчика. Так вот, С++ (в плане ООП) и далее, java, c# -- это та самая комбинация из таракана (процедурщина) и мужика (ооп). Названия ООПшные, звучит похоже, но уже попахивает, странно движется, и внутри сидит огромадный таракан под два метра ростом.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Почему ООП провалилось
СообщениеДобавлено: Воскресенье, 03 Октябрь, 2010 20:59 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Alexey Veselovsky писал(а):
Названия ООПшные, звучит похоже, но ...ростом.
То исть это гут, что в Обероне нет ООП-терминологии? :)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 54 ]  На страницу 1, 2, 3  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2021, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB