Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Вниз

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

 
Компромисс ©   (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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.75 MB
Время: 0.129 c
15-1328778076
БарЛог
2012-02-09 13:01
2013.03.22
Удаление сообщений, удаление имен на форуме


15-1347443626
KSergey
2012-09-12 13:53
2013.03.22
Сроки рассмотрения вариантов перевода для MSDN


15-1332236757
webpauk
2012-03-20 13:45
2013.03.22
WebBrowser DocumentComplete


15-1341492118
Unknown user
2012-07-05 16:41
2013.03.22
Определить или открыто главное меню


2-1341839644
well
2012-07-09 17:14
2013.03.22
Код раскладки - Английский США-международная





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский