Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

Когда нужно использовать ООП?   Найти похожие ветки 

 
Компромисс ©   (2012-05-31 12:54) [120]

robt   (31.05.12 12:42) [119]

Если нет иерархии объектов, то согласен. Но обычно она есть...


 
Плохиш ©   (2012-05-31 13:06) [121]

Ужасть, как всё усложнили, и это в ответ-то на [0]

А аФФтору, просто, предлагаю написать простейший многооконный текстовый редактор без использования объектов на borland pascal 5.0 и с использованием оных на borland pascal 5.5. И сразу основы ооп будут понятны.


 
stas ©   (2012-05-31 13:15) [122]

robt   (31.05.12 12:42) [119]
Ну, а я рассматриваю как [18] и не вижу как [18] можно решить без ООП.
можно конечно но громоздко.


 
Kerk ©   (2012-05-31 13:17) [123]

Внес правки в статью, по-моему лучше стало

http://ru.wikipedia.org/wiki/%D0%98%D0%BD%D0%BA%D0%B0%D0%BF%D1%81%D1%83%D0%BB%D1%8F%D1%86%D0%B8%D1%8F_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)


 
Kerk ©   (2012-05-31 13:18) [124]

Как-то однажды знаменитый учитель Кх Ан вышел на прогулку с учеником Антоном. Надеясь разговорить учителя, Антон спросил: "Учитель, слыхал я, что объекты - очень хорошая штука - правда ли это?" Кх Ан посмотрел на ученика с жалостью в глазах и ответил: "Глупый ученик! Объекты - всего лишь замыкания для бедных."

Пристыженный Антон простился с учителем и вернулся в свою комнату, горя желанием как можно скорее изучить замыкания. Он внимательно прочитал все статьи из серии "Lambda: The Ultimate", и родственные им статьи, и написал небольшой интерпретатор Scheme с объектно-ориентированной системой, основанной на замыканиях. Он многому научился, и с нетерпением ждал случая сообщить учителю о своих успехах.

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


 
robt   (2012-05-31 13:59) [125]


> stas ©   (31.05.12 13:15) [122]

а я ваще не понял чо там написано
все три объекта могут быть абсолютно разными и не наследовать другдруга

> Если нет иерархии объектов, то согласен. Но обычно она есть.

ичо меняеца если она есть


 
stas ©   (2012-05-31 14:07) [126]

robt   (31.05.12 13:59) [125]
Это в продолжении [17] при условии что они наследники объекта1


 
robt   (2012-05-31 14:27) [127]

да ничо сложного, указатели да записи
в техже винапишных функциях есть параметры записи переменного размера в зависимости от версии,что можно интерпретировать как наследование


 
Inovet ©   (2012-05-31 14:39) [128]

> [117] Компромисс ©   (31.05.12 12:06)
> На примере болезней становится заметно, чем ООП принципиально
> отличается от процедурного подхода

Процедурный кабинет не зря в стационарах делают и в поликлинниках вроде бы тоже.


 
Компромисс ©   (2012-05-31 14:40) [129]


> в техже винапишных функциях есть параметры записи переменного
> размера в зависимости от версии,что можно интерпретировать
> как наследование


а винапишная функция имеет код типа
if(version==N){
...
} else if (version==M){
...
}

?


 
ProgRAMmer Dimonych ©   (2012-05-31 14:49) [130]

> [129] Компромисс ©   (31.05.12 14:40)

Зато если положить туда не длину, а адрес процедуры - вот это будет самый что ни на есть виртуальный метод. С наследованием и структурами.


 
robt   (2012-05-31 15:01) [131]


> Компромисс ©   (31.05.12 14:40) [129]

не по другому,"версию" определяет размер структуры записаный первым,а по смещению работаеца с полями


 
Компромисс ©   (2012-05-31 15:02) [132]

ProgRAMmer Dimonych ©   (31.05.12 14:49) [130]


> Зато если положить туда не длину, а адрес процедуры - вот
> это будет самый что ни на есть виртуальный метод. С наследованием
> и структурами.


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


 
Макс Черных   (2012-06-01 01:49) [133]


> но объектно мы все-таки не мыслим, во всяком случае, на
> абстрактном уровне, без конкретных реализаций.

Ой да неужели. А куда девать понятие хотения "выпить и закусить", "пожрать" и т.д. Если это не есть абстракции - тогда что такое абстракции по вашему?

Человек соображает именно абстрактно. А вот разделяет эти абстрактности, естественно, по признакам, в т.ч. и по реализации. Более того, человек (да и не только) может эти признаки обобщать и проецировать на подобия (наследование объектов).


 
oxffff ©   (2012-06-01 10:01) [134]

Кто хочет погрузиться более, можно погуглить

про existential types, Abstract Data Type(ADT)

http://fprog.ru/2010/issue4/roman-dushkin-existentials/
http://en.wikipedia.org/wiki/Abstract_data_type
http://www.haskell.org/haskellwiki/Existential_types


 
ProgRAMmer Dimonych ©   (2012-06-01 11:06) [135]

> [132] Компромисс ©   (31.05.12 15:02)

Это если совсем по-трушному делать. Для небольших задач в качестве компромисса между процедурным и ООП - самое оно. Но вообще я больше с точки зрения того, чтобы на ассемблере такое реализовывать, подходил к вопросу. Ибо на ЯВУ делать свой ООП-велосипед - нафиг.


 
Компромисс ©   (2012-06-01 11:14) [136]

Макс Черных   (01.06.12 01:49) [133]


> Ой да неужели. А куда девать понятие хотения "выпить и закусить",
>  "пожрать" и т.д. Если это не есть абстракции - тогда что
> такое абстракции по вашему?


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


> Человек соображает именно абстрактно. А вот разделяет эти
> абстрактности, естественно, по признакам, в т.ч. и по реализации.
>  Более того, человек (да и не только) может эти признаки
> обобщать и проецировать на подобия (наследование объектов).
>


Человек скорее мыслит "процедурно": что делать и кто виноват? :)
Кстати, "выпить и закусить" из той же области. Никаких абстракций, только конкретика



Страницы: 1 2 3 4 вся ветка

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.77 MB
Время: 0.065 c
15-1341952202
Юрий
2012-07-11 00:30
2013.03.22
С днем рождения ! 11 июля 2012 среда


2-1329813740
Vasili Lubavin
2012-02-21 12:42
2013.03.22
Помогите с алгоритмом


15-1346963402
Юрий
2012-09-07 00:30
2013.03.22
С днем рождения ! 7 сентября 2012 пятница


15-1331116336
Leon-Z
2012-03-07 14:32
2013.03.22
Установить прогу на сервер.


9-1193070314
lubass
2007-10-22 20:25
2013.03.22
Обратная функцыя к RGB() существует?