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 > бгг :) | |
| Интернет-форум Краснодарского края и Краснодара |