Кстати об ООП дизайне
От: Hacker_Delphi Россия  
Дата: 09.12.03 09:07
Оценка: 2 (1) :))
Вот отрывок из книши одного очень хорошего писателя:
      - Долгая история. Все дело в том, что местные программисты пошли
по неверному пути. Этот путь называется объектно ориентированный подход
в программировании. На самом деле это мина с часовым механизмом в
красивой упаковке. В очень красивой упаковке. Как с этим бороться, я
не знаю. Упустил момент.
      - Мастер, ближе к делу.
      - Знаешь анекдот, как программист кипятит чайник. Дано: пустой
чайник, кран, спички, газовая плита. Программа действий: наполнить
чайник водой из-под крана, поставить на плиту, зажечь газ. Ждать, пока
закипит чайник. Эта программа оформляется как объект. Второй случай.
Все то же самое, но чайник с водой уже стоит на плите. Действия
программиста: вылить воду из чайника и выполнить предыдущий объект.
      - Грустно. А нырнуть внутрь объекта нельзя? Туда, где надо газ
зажечь?
      - Нельзя. Можно добавить новое свойство или действие. В нашем случае
- воду вылить. Будет новый объект. Но внутрь влезть нельзя. Объект дается
как единое целое. Никто не знает, что там внутри. Все давно забыли, откуда
ноги растут. В результате получается колоссальное дублирование кода и данных
и огромная потеря производительности компьютера. С каждым годом компьютеры
требуют все больше памяти, а работают все медленнее.

Которая лишь подтверждает мысль, что ООП везде — это вред и блед, хотя и не отрицает что в бизнес приложениях ООП — это просто круто
... << RSDN@Home 1.1.2 beta 2 >>

15.12.03 11:36: Перенесено модератором из 'Проектирование' — ХД
Если при компиляции и исполнении вашей программы не происходит ни одной ошибки — это ошибка компилятора :)))
Re: Кстати об ООП дизайне
От: LaptevVV Россия  
Дата: 09.12.03 09:09
Оценка:
Здравствуйте, Hacker_Delphi, Вы писали:

H_D>Вот отрывок из книши одного очень хорошего писателя:

H_D>
H_D>      - Долгая история. Все дело в том, что местные программисты пошли
H_D>по неверному пути. Этот путь называется объектно ориентированный подход
H_D>в программировании. На самом деле это мина с часовым механизмом в
H_D>красивой упаковке. В очень красивой упаковке. Как с этим бороться, я
H_D>не знаю. Упустил момент.
H_D>      - Мастер, ближе к делу.
H_D>      - Знаешь анекдот, как программист кипятит чайник. Дано: пустой
H_D>чайник, кран, спички, газовая плита. Программа действий: наполнить
H_D>чайник водой из-под крана, поставить на плиту, зажечь газ. Ждать, пока
H_D>закипит чайник. Эта программа оформляется как объект. Второй случай.
H_D>Все то же самое, но чайник с водой уже стоит на плите. Действия
H_D>программиста: вылить воду из чайника и выполнить предыдущий объект.
H_D>      - Грустно. А нырнуть внутрь объекта нельзя? Туда, где надо газ
H_D>зажечь?
H_D>      - Нельзя. Можно добавить новое свойство или действие. В нашем случае
H_D>- воду вылить. Будет новый объект. Но внутрь влезть нельзя. Объект дается
H_D>как единое целое. Никто не знает, что там внутри. Все давно забыли, откуда
H_D>ноги растут. В результате получается колоссальное дублирование кода и данных
H_D>и огромная потеря производительности компьютера. С каждым годом компьютеры
H_D>требуют все больше памяти, а работают все медленнее.
H_D>

H_D>Которая лишь подтверждает мысль, что ООП везде — это вред и блед, хотя и не отрицает что в бизнес приложениях ООП — это просто круто
"Это спорный вопрос. Я Вам ничего плохого не делал" (с) Лукашин
Ты лучше скажи что за книжка и где ее взять.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re: Кстати об ООП дизайне
От: Алексей Одинцов Россия  
Дата: 09.12.03 09:23
Оценка:
Здравствуйте, Hacker_Delphi, Вы писали:

H_D>Которая лишь подтверждает мысль, что ООП везде — это вред и блед, хотя и не отрицает что в бизнес приложениях ООП — это просто круто


А там не сказано, куда делись громандные функицонально-ориентированные монстры? :-D
Re[2]: Кстати об ООП дизайне
От: Hacker_Delphi Россия  
Дата: 09.12.03 09:27
Оценка:
Здравствуйте, LaptevVV, Вы писали:
[skipped]
LVV>"Это спорный вопрос. Я Вам ничего плохого не делал" (с) Лукашин
LVV>Ты лучше скажи что за книжка и где ее взять.
Павел Шумилов (Павел Шумил) "Пойди поймай свою звезду".
Взять — в интернете, лежит на его сайте в свободном доступе...
точнее щаз не скжу — фавориты все потерлись... добавлю только, что сайт тот, который на narod.ru.
PS Данное произведенгие, как и большинство его произведений не издано в бумажном виже.
... << RSDN@Home 1.1.2 beta 2 >>
Если при компиляции и исполнении вашей программы не происходит ни одной ошибки — это ошибка компилятора :)))
Re: Кстати об ООП дизайне
От: Ведмедь Россия  
Дата: 09.12.03 09:27
Оценка: 24 (1)
Здравствуйте, Hacker_Delphi, Вы писали:

Узнаю отрывок. Павел Шумилов рулит, жаль что давно ничего нового не выпускал

Мне там еще поравилась как строилась логика у Вредин
Да пребудет с тобой Великий Джа
Re[3]: Кстати об ООП дизайне
От: Ведмедь Россия  
Дата: 09.12.03 09:29
Оценка: +1
Здравствуйте, Hacker_Delphi, Вы писали:

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

H_D>[skipped]
LVV>>"Это спорный вопрос. Я Вам ничего плохого не делал" (с) Лукашин
LVV>>Ты лучше скажи что за книжка и где ее взять.
H_D>Павел Шумилов (Павел Шумил) "Пойди поймай свою звезду".
H_D>Взять — в интернете, лежит на его сайте в свободном доступе...
H_D>точнее щаз не скжу — фавориты все потерлись... добавлю только, что сайт тот, который на narod.ru.
H_D>PS Данное произведенгие, как и большинство его произведений не издано в бумажном виже.

В бмажном виде изданы 2 или 3 книжки из Слова о драконе и вроде бы я видел "Страшные сказки"
Да пребудет с тобой Великий Джа
Re: Кстати об ООП дизайне
От: dad  
Дата: 09.12.03 09:30
Оценка: 36 (3) +2
H_D> — Знаешь анекдот, как программист кипятит чайник. Дано: пустой
H_D>чайник, кран, спички, газовая плита. Программа действий: наполнить
H_D>чайник водой из-под крана, поставить на плиту, зажечь газ. Ждать, пока
H_D>закипит чайник. Эта программа оформляется как объект. Второй случай.
H_D>Все то же самое, но чайник с водой уже стоит на плите. Действия
H_D>программиста: вылить воду из чайника и выполнить предыдущий объект.
H_D>Которая лишь подтверждает мысль, что ООП везде — это вред и блед, хотя и не отрицает что в бизнес приложениях ООП — это просто круто

Вообщето приведена какая совершенно глупая ООп модель, для данного случая (неверная декомпозиция)..
Веру-ю-у! В авиацию, в научную революци-ю-у, в механизацию сельского хозяйства, в космос и невесомость! Веру-ю-у! Ибо это объективно-о! (Шукшин)
Re[3]: Кстати об ООП дизайне
От: LaptevVV Россия  
Дата: 09.12.03 09:31
Оценка:
Здравствуйте, Hacker_Delphi, Вы писали:

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

H_D>[skipped]
LVV>>"Это спорный вопрос. Я Вам ничего плохого не делал" (с) Лукашин
LVV>>Ты лучше скажи что за книжка и где ее взять.
H_D>Павел Шумилов (Павел Шумил) "Пойди поймай свою звезду".
H_D>Взять — в интернете, лежит на его сайте в свободном доступе...
H_D>точнее щаз не скжу — фавориты все потерлись... добавлю только, что сайт тот, который на narod.ru.
H_D>PS Данное произведенгие, как и большинство его произведений не издано в бумажном виже.
Большой рахмат!!!!!
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[2]: Кстати об ООП дизайне
От: Hacker_Delphi Россия  
Дата: 09.12.03 09:37
Оценка:
Здравствуйте, Алексей Одинцов, Вы писали:

АО>Здравствуйте, Hacker_Delphi, Вы писали:


H_D>>Которая лишь подтверждает мысль, что ООП везде — это вред и блед, хотя и не отрицает что в бизнес приложениях ООП — это просто круто


АО>А там не сказано, куда делись громандные функицонально-ориентированные монстры? :-D

Нет... тот, от чьего имени это все исходит на 300 лет в добровольное отшельничество отлучался...
... << RSDN@Home 1.1.2 beta 2 >>
Если при компиляции и исполнении вашей программы не происходит ни одной ошибки — это ошибка компилятора :)))
Re[3]: Кстати об ООП дизайне
От: dad  
Дата: 09.12.03 09:37
Оценка:
LVV>>"Это спорный вопрос. Я Вам ничего плохого не делал" (с) Лукашин
LVV>>Ты лучше скажи что за книжка и где ее взять.
H_D>Павел Шумилов (Павел Шумил) "Пойди поймай свою звезду".
H_D>Взять — в интернете, лежит на его сайте в свободном доступе...

Так это киберпанк какой то , причем тут ООП?

http://lib.udm.ru/lib/RUFANT/SHUMIL/
Веру-ю-у! В авиацию, в научную революци-ю-у, в механизацию сельского хозяйства, в космос и невесомость! Веру-ю-у! Ибо это объективно-о! (Шукшин)
Re[2]: Кстати об ООП дизайне
От: S-SH Россия http://shmakov.ru/
Дата: 09.12.03 09:42
Оценка: 24 (1)
L> "Это спорный вопрос. Я Вам ничего плохого не делал" (с) Лукашин Ты
L> лучше скажи что за книжка и где ее взять.

http://dragonbase.narod.ru/
Posted via RSDN NNTP Server 1.8 beta
IMHO. смайлики добавить по вкусу.
Re: DataSet & OOP
От: _vovin http://www.pragmatic-architect.com
Дата: 09.12.03 11:19
Оценка:
Здравствуйте, Hacker_Delphi, Вы писали:

H_D>Вот отрывок из книши одного очень хорошего писателя:

H_D>
[...]
H_D>

H_D>Которая лишь подтверждает мысль, что ООП везде — это вред и блед, хотя и не отрицает что в бизнес приложениях ООП — это просто круто

Этот пример классического непонимания ООП.
Очень хорошее объяснение этому заблуждению можно найти в статье Objects Have Failed.

Objects, as envisioned by the designers of languages like Smalltalk and Actors—long before C++ and Java came around— were for modeling and building complex, dynamic worlds. Programming environments for languages like Smalltalk were written in those languages and were extensible by developers. Because the philosophy of dynamic change was part of the post-Simula OO worldview, languages and environments of that era were highly dynamic.

But with C++ and Java, the dynamic thinking fostered by object-oriented languages was nearly fatally assaulted by the theology of static thinking inherited from our mathematical heritage and the assumptions built into our views of computing by Charles Babbage whose factory-building worldview was dominated by omniscience and omnipotence.

And as a result we find that object-oriented languages have succumb to static thinkers who worship perfect planning over runtime adaptability, early decisions over late ones, and the wisdom of compilers over the cleverness of failure detection and repair.


--

Владимир.
Re: Кстати об ООП дизайне
От: jazzer Россия Skype: enerjazzer
Дата: 09.12.03 11:28
Оценка: 30 (2) +2 -1
Здравствуйте, Hacker_Delphi, Вы писали:

H_D>Вот отрывок из книши одного очень хорошего писателя:

H_D>
H_D>      - Долгая история. Все дело в том, что местные программисты пошли
H_D>по неверному пути. Этот путь называется объектно ориентированный подход
H_D>в программировании. На самом деле это мина с часовым механизмом в
H_D>красивой упаковке. В очень красивой упаковке. Как с этим бороться, я
H_D>не знаю. Упустил момент.
H_D>      - Мастер, ближе к делу.
H_D>      - Знаешь анекдот, как программист кипятит чайник. Дано: пустой
H_D>чайник, кран, спички, газовая плита. Программа действий: наполнить
H_D>чайник водой из-под крана, поставить на плиту, зажечь газ. Ждать, пока
H_D>закипит чайник. Эта программа оформляется как объект. Второй случай.
H_D>Все то же самое, но чайник с водой уже стоит на плите. Действия
H_D>программиста: вылить воду из чайника и выполнить предыдущий объект.
H_D>      - Грустно. А нырнуть внутрь объекта нельзя? Туда, где надо газ
H_D>зажечь?
H_D>      - Нельзя. Можно добавить новое свойство или действие. В нашем случае
H_D>- воду вылить. Будет новый объект. Но внутрь влезть нельзя. Объект дается
H_D>как единое целое. Никто не знает, что там внутри. Все давно забыли, откуда
H_D>ноги растут. В результате получается колоссальное дублирование кода и данных
H_D>и огромная потеря производительности компьютера. С каждым годом компьютеры
H_D>требуют все больше памяти, а работают все медленнее.
H_D>


чушь какая-то :)))
особенно мне понравилась фраза "выполнить предыдущий объект". Прям функторы :))))
И так далее. "воду вылить. Будет новый объект."
Явно автор не понимает, о чем пишет.
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[2]: Кстати об ООП дизайне
От: Hacker_Delphi Россия  
Дата: 09.12.03 12:13
Оценка: -1
Здравствуйте, jazzer, Вы писали:

J>чушь какая-то

J>особенно мне понравилась фраза "выполнить предыдущий объект". Прям функторы )
J>И так далее. "воду вылить. Будет новый объект."
J>Явно автор не понимает, о чем пишет.
Да нет, судя по его другому произведения ("Долг перед видом") очень даже понимает.
Просто пишет он не только для тех, кто разбирается в программировании и тем более — в ООП.
ты читай не "объект вскипятить воду", а "метод объекта чайник всипятить воду" то же самое с "вылить воду" — и поямешь, что он описывает все верно
... << RSDN@Home 1.1.2 beta 2 >>
Если при компиляции и исполнении вашей программы не происходит ни одной ошибки — это ошибка компилятора :)))
Re[2]: DataSet & OOP
От: Hacker_Delphi Россия  
Дата: 09.12.03 12:13
Оценка:
Здравствуйте, _vovin, Вы писали:

Я тут ряддом написал... jazzer'у...
... << RSDN@Home 1.1.2 beta 2 >>
Если при компиляции и исполнении вашей программы не происходит ни одной ошибки — это ошибка компилятора :)))
Re[4]: Кстати об ООП дизайне
От: Hacker_Delphi Россия  
Дата: 09.12.03 12:13
Оценка:
Здравствуйте, dad, Вы писали:

LVV>>>"Это спорный вопрос. Я Вам ничего плохого не делал" (с) Лукашин

LVV>>>Ты лучше скажи что за книжка и где ее взять.
H_D>>Павел Шумилов (Павел Шумил) "Пойди поймай свою звезду".
H_D>>Взять — в интернете, лежит на его сайте в свободном доступе...

dad>Так это киберпанк какой то , причем тут ООП?


dad>http://lib.udm.ru/lib/RUFANT/SHUMIL/

не — не киберпанк.. если прочитаешь все его произведения — поймешь, что это — science fiction.
Блин! тоже мне программисты... ПОЧЕМУ ВСЕ ВСЕ ПОНЯЛИ ТОЛЬКО БУКВАЛЬНО???
... << RSDN@Home 1.1.2 beta 2 >>
Если при компиляции и исполнении вашей программы не происходит ни одной ошибки — это ошибка компилятора :)))
Re[5]: Кстати об ООП дизайне
От: dad  
Дата: 09.12.03 12:19
Оценка:
dad>>http://lib.udm.ru/lib/RUFANT/SHUMIL/
H_D>не — не киберпанк.. если прочитаешь все его произведения — поймешь, что это — science fiction.

Не вижу принципиальной разницы (хотя я не искуствовед), но однозначно этому топику не место в проектировани , гыгыгыгы

ЗЫ (сам рассказики пописываю)
Веру-ю-у! В авиацию, в научную революци-ю-у, в механизацию сельского хозяйства, в космос и невесомость! Веру-ю-у! Ибо это объективно-о! (Шукшин)
Re[2]: Кстати об ООП дизайне
От: Ведмедь Россия  
Дата: 09.12.03 12:24
Оценка: +1
Здравствуйте, jazzer, Вы писали:

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


H_D>>Вот отрывок из книши одного очень хорошего писателя:

H_D>>
H_D>>      - Долгая история. Все дело в том, что местные программисты пошли
H_D>>по неверному пути. Этот путь называется объектно ориентированный подход
H_D>>в программировании. На самом деле это мина с часовым механизмом в
H_D>>красивой упаковке. В очень красивой упаковке. Как с этим бороться, я
H_D>>не знаю. Упустил момент.
H_D>>      - Мастер, ближе к делу.
H_D>>      - Знаешь анекдот, как программист кипятит чайник. Дано: пустой
H_D>>чайник, кран, спички, газовая плита. Программа действий: наполнить
H_D>>чайник водой из-под крана, поставить на плиту, зажечь газ. Ждать, пока
H_D>>закипит чайник. Эта программа оформляется как объект. Второй случай.
H_D>>Все то же самое, но чайник с водой уже стоит на плите. Действия
H_D>>программиста: вылить воду из чайника и выполнить предыдущий объект.
H_D>>      - Грустно. А нырнуть внутрь объекта нельзя? Туда, где надо газ
H_D>>зажечь?
H_D>>      - Нельзя. Можно добавить новое свойство или действие. В нашем случае
H_D>>- воду вылить. Будет новый объект. Но внутрь влезть нельзя. Объект дается
H_D>>как единое целое. Никто не знает, что там внутри. Все давно забыли, откуда
H_D>>ноги растут. В результате получается колоссальное дублирование кода и данных
H_D>>и огромная потеря производительности компьютера. С каждым годом компьютеры
H_D>>требуют все больше памяти, а работают все медленнее.
H_D>>


J>чушь какая-то

J>особенно мне понравилась фраза "выполнить предыдущий объект". Прям функторы )

Кстати действие тоже можно представить обтектом, пример тому делегаты в .NET Ну чем не объект? А выполнить ты его можешь? Можешь И что тебе не нравится?

J>И так далее. "воду вылить. Будет новый объект."


Можно добавить новое свойство или действие. В нашем случае
— воду вылить. Будет новый объект.

воду вылить — метод, если добавить новый метод, будет новый класс. Все логично, А вот если оставить только

"воду вылить. Будет новый объект." Получается действительно чушь. Не надо вырывать слова их контекста.

J>Явно автор не понимает, о чем пишет.


На самом деле не вижу никаких больших ляпов... ты бы примерно так же 5 летнему ребенку обьяснял. На пальцах.
Да пребудет с тобой Великий Джа
Re[3]: Кстати об ООП дизайне
От: jazzer Россия Skype: enerjazzer
Дата: 09.12.03 13:21
Оценка: -2
Здравствуйте, Ведмедь, Вы писали:

J>>чушь какая-то :)))

J>>особенно мне понравилась фраза "выполнить предыдущий объект". Прям функторы :))))

В>Кстати действие тоже можно представить обтектом, пример тому делегаты в .NET :) Ну чем не объект? А выполнить ты его можешь? Можешь :) И что тебе не нравится? :)


я и говорю — функторы. Кстати, попробуй объяснить их 5-летнему ребенку. На пальцах :)

J>>И так далее. "воду вылить. Будет новый объект."


В>Можно добавить новое свойство или действие. В нашем случае

В>- воду вылить. Будет новый объект.

В>воду вылить — метод, если добавить новый метод, будет новый класс. Все логично, А вот если оставить только


В>"воду вылить. Будет новый объект." Получается действительно чушь. Не надо вырывать слова их контекста.


это ж надо было додуматься — спроектировать чайник, в который воду можно только налить и вскипятить, а вот вылить уже нельзя :))))))) типа и горлышко забыли пробить, и дно забыли приделать :)

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

J>>Явно автор не понимает, о чем пишет.


В>На самом деле не вижу никаких больших ляпов... ты бы примерно так же 5 летнему ребенку обьяснял. На пальцах.


абсолютно не так я бы ему объяснял. Чайник НЕ МОЖЕТ сам поставиться на плиту, сам залиться водой. А сам вскипятиться может только электрический чайник. Но он, опять же, не может сам включиться.

собственно, почитайте здесь
Автор: jazzer
Дата: 06.11.02
, меня ломает копировать всю аргументацию оттуда.
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[3]: Кстати об ООП дизайне
От: George Seryakov Россия  
Дата: 09.12.03 15:11
Оценка:
Здравствуйте, Hacker_Delphi, Вы писали:

LVV>>Ты лучше скажи что за книжка и где ее взять.

H_D>Павел Шумилов (Павел Шумил) "Пойди поймай свою звезду".

Виндж (рекомендую) тоже по программситам-археологам проходится.
GS
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.