К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

ООП - кто пользуется?

Гость
0 - 26.05.2012 - 18:25
Помню, раньше столько пели про ООП! А сейчас смотрю на реальные проекты - ООП в чистом виде практически не используется. А вы используете ООП?


Гость
41 - 07.02.2013 - 22:58
39-wayerr >

в итоге у вас "интерфейс" списка будет содержать 25 методов


А как иначе программе объяснить, что она должна делать при попытке передать списку мышей параметра-слона на вход? Только кодированием метода. Революционный (для своего времени) вин ООП - что это можно сделать ОДИН раз, на уровне методов. А не тягать по всему коду системы блоки из 25 кусков if-then-else.

причем не дельфи, а имитиацию синтаксиса objectpascal на платформе .net, для тех кто не осилил C#

Это был как раз чистый Delphi, пятерочка, под Win32. Безо всяких противных .NET и С#. Более того, я использовал этот код для генерации отчетов FreeReport, отображая функции объекта напрямую в отчет, без дополнительных строчек-переходников.
Гость
42 - 08.02.2013 - 00:14
>А как иначе программе объяснить, что она должна делать при попытке передать списку мышей параметра-слона на вход?

в моем коде это и объясняется программе

>это можно сделать ОДИН раз, на уровне методов

на самом деле это kill, потому что методы будут дублироваться в большой системе, а на реальных задачах все скатится к множественному наследованию и макаронам методов, потому многие против вашего подхода (http://www.codeart.ru/2010/08/03/nas...dpochtitelnee/ для примера, гдето были статьи "мужиков" на сию тему но щас ночь)
Гость
43 - 08.02.2013 - 08:17
42-wayerr >
а на реальных задачах все скатится к множественному наследованию

За 12 лет ни разу не пришлось использовать множественное наследование, даже в виде костылей-интерфейсов. В одном моем проекте - 250 классов. ЧЯДНТ?
Гость
44 - 08.02.2013 - 08:19
42-wayerr > Статью прочитал. Фаулер пишет про это лучше :-)
Гость
45 - 08.02.2013 - 09:15
>В одном моем проекте - 250 классов. ЧЯДНТ?

наверное не пишешь проекты где больше тысячи классов, не?
Гость
46 - 08.02.2013 - 09:29
Прочитал статью. Имхо всё это - следствия отсутствия проекта. В идеале если ТЗ перевести сначала в объектную модель, а потом уже приступать к реализации, то на грабли скорее всего и не наступишь.
А если сразу взяться за карандаш....
void main()
**
Пишу что всё пропало :-))) ;
**
Гость
47 - 08.02.2013 - 09:45
45-wayerr >
наверное не пишешь проекты где больше тысячи классов, не?


Пока не приходилось. Но все равно, смысл множественного наследования мне непонятен.

Вот из моей практики. Много работал с риэлторами. Базы всякие, скрипты для упрощения будней.

Разгребал поделку своего коллеги. У него был класс "Дом" и класс "Участок". Когда ему понадобилось сделать объект "Загородный дом", он, недолго думая, сделал его как потомка этих двух классов. Решение? Возможно.

Я же переделал эту схему с использованием паттерна "Фасад", слегка упрощенного и искаженного. Объект "Недвига" содержит ссылки на все возможные объекты в нем. Например, на дом, землю и сарай. А там уже можно изгаляться - скажем, применить "Null-объект" при отсутствии сарая, или считать цену как сумму отдельных вложенных классов.

В целом, дискуссию считаю скорее бесполезной. Мне нравится ООП, потому что позволяет изящно решать те задачи, который ВСТАВАЛИ передо мной. Когда упрусь рогом во что-то непригодное для ООП - мое мнение, возможно, поменяется.
Гость
48 - 08.02.2013 - 11:29
>Мне нравится ООП

а я не говорил что ооп - говно, я лишь к тому что это не панацея 8)
Гость
49 - 08.02.2013 - 15:47
читатель # 1: представим себе сферу.
читатель # 2: идеально сферических объектов не существует.
читатель # 1: я же сказал: представим.
читатель # 2: это я просто что бы вы помнили.
Гость
50 - 10.02.2013 - 11:32
49-vxg > бгг :)


К списку вопросов






Copyright ©, Все права защищены