Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » В чем преимущество ООП ?

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10

Открыть новую тему     Написать ответ в эту тему

delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Про дженерики прекрасно понимаю. В своё время мечтал чтобы они были в Дельфях, а про полноценные шаблоны даже в мечтах не было. Таких как в в плюсах возможно уже никогда не будет. Так как при необходимости решается внешними средствами, ну и сложновато для фичек вроде кодекомплит. И сталобыть перекликается про простоту.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 18:06 26-09-2011
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Qraizer
ООП - это не свойство языка, это философия и стиль. Объектно программировать можно хоть на ассемблере.

 
пожалуй, в данном топе лучше не скажешь...

Всего записей: 24112 | Зарегистр. 06-12-2002 | Отправлено: 18:17 26-09-2011
Qraizer



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
Таких как в в плюсах возможно уже никогда не будет.
К сожалению, на полноценном обощённом программировании ставит крест разная семантика разных Дельфийных типов. Какие-то ссылочные, какие-то нет. Это в Плюсах поставил & и получил ссылку, не поставил - получил значение. Написал a=b, и получил в a копию b. А в Дельфях написал a:=b, и для integer скопил значние, а для класса получил копию ссылки, блин, прям указатели какие-то. А для классов надо вызвать метод классового объекта для получения копии. Блин, а у integer-а нету классового объекта... Танунафик такую обобщённость.

----------
Одни с годами умнеют, другие становятся старше.

Всего записей: 613 | Зарегистр. 08-08-2006 | Отправлено: 22:30 26-09-2011 | Исправлено: Qraizer, 07:15 27-09-2011
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Qraizer
 
да дельфи-то что пинать...
детище одной-единственной фирмы, что хочет (и как может), то и делает
ниша вполне определена, папа-паскаль окаменел (кстати, если на паскале уж написал @ -- то тоже адрес, однозначно)...
а я вот на новый фортран с ужасом смотрю: тоже объекты, конструкторы, ужос...

Всего записей: 24112 | Зарегистр. 06-12-2002 | Отправлено: 00:01 27-09-2011 | Исправлено: akaGM, 02:53 27-09-2011
Qraizer



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Дык в .NET, к примеру, та же картина.

Всего записей: 613 | Зарегистр. 08-08-2006 | Отправлено: 07:14 27-09-2011
wasilissk

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
akaGM
В Delphi @ тоже всегда возвращае адрес переменной.
Qraizer
Судя по статисике использования, на каждую операцию копирования объекта приходится много больше операций копирования ссылки на объект, так что такое поведение операции присваивания, имхо куда как более логично. А что касаемо сишных темплейтов, так это не более чем синтаксический сахар. Необходимости в них нет, функционала дженериков вполне достаточно.
У .NET и Delphi один и тот же главный разработчик Андерс Хейлсберг, соответственно и схожие концепции.

Всего записей: 293 | Зарегистр. 25-12-2006 | Отправлено: 09:30 27-09-2011
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
неправомерно, имхо, сравнивать технологию/методу/среду/язык (не знаю как теоретики позиционируют .нет и дельфи), которая мало того что не имеет своей раб. группы ISO, так даже за рамки одной платформы не вышла...
 
Qraizer

Цитата:
Дык в .NET, к примеру, та же картина.
на .нет мне, по большому счёту...
а вот, за Ф, который последнее время каждые 5 лет получает ISO-стандарт, как-то боязно...
 
wasilissk

Цитата:
В Delphi @ тоже всегда возвращае адрес переменной.
ну тогда уж чтоб быть на 100% педантично-точным: не в дельфи, а в object pascal

Всего записей: 24112 | Зарегистр. 06-12-2002 | Отправлено: 09:46 27-09-2011 | Исправлено: akaGM, 09:56 27-09-2011
Eternal_Shield

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Qraizer

Цитата:
К сожалению, на полноценном обощённом программировании ставит крест разная семантика разных Дельфийных типов. Какие-то ссылочные, какие-то нет. Это в Плюсах поставил & и получил ссылку, не поставил - получил значение. Написал a=b, и получил в a копию b. А в Дельфях написал a:=b, и для integer скопил значние, а для класса получил копию ссылки, блин, прям указатели какие-то. А для классов надо вызвать метод классового объекта для получения копии. Блин, а у integer-а нету классового объекта... Танунафик такую обобщённость.

Те, кто моногамен, таких проблем не испытывает, а полигамщики (котрые везде и нигде одновременно) - ломают себе мозги.
 
CSUXClass *ImaKillah1 = new CSUXClass();
CSUXClass *ImaKillah2 = new CSUXClass();
 
Что при
ImaKillah1 = ImaKillah2;  
случится, а? не это ли

Цитата:
 
а для класса получил копию ссылки, блин, прям указатели какие-то
 

а? как хреново то ...
 
 
З.Ы: Надеюсь message уловили

Всего записей: 767 | Зарегистр. 18-05-2009 | Отправлено: 10:07 27-09-2011
wasilissk

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
akaGM

Цитата:
не знаю как теоретики позиционируют .нет и дельфи

Delphi  это язык програмирования.  
http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/devcommon/overview_xml.html
Под .Net тут неверняка имеют в виду C# раз уж сравнивать с C++, в любом случае не я первым его упомянл...
Рамки платформ не понимаю каким тут вообще боком? Если играть бицепсами распространенности, применимости языков, тут без вопросов делфи окажется пылью на корпусе С++.  Но мы же вроде о темплейтах?

Всего записей: 293 | Зарегистр. 25-12-2006 | Отправлено: 10:14 27-09-2011
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
wasilissk

Цитата:
Но мы же вроде о темплейтах?

я? -- нет...
я об
Цитата:
философии и стиле ООП


Цитата:
Delphi  это язык програмирования.

пусть так, я не против, особенно если учесть, что головной файл моего проекта имеет расширение .dpr :)
 

Всего записей: 24112 | Зарегистр. 06-12-2002 | Отправлено: 11:01 27-09-2011
wasilissk

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
akaGM
Я не думаю, что популярность С++ обусловлена философией и стилем её реализации ООП.

Всего записей: 293 | Зарегистр. 25-12-2006 | Отправлено: 13:08 27-09-2011
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
наверное, популярность С++ и причины её возникновения -- это отдельная тема...
а
Цитата:
Объектно программировать можно хоть на ассемблере.

Qraizer, ты у меня прям как цитатник Мао... :)

Всего записей: 24112 | Зарегистр. 06-12-2002 | Отправлено: 14:17 27-09-2011
Qraizer



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
akaGM,

Цитата:
неправомерно, имхо, сравнивать технологию/методу/среду/язык
.NET я упомянул, чтоб не перечислять всё туда входящее. Фрэймворк на всех всё равно один. Ну, хочешь - считай, я сказал про C#. Дженерики везде одинаковы.
Eternal_Shield, в Mass Efffect-ы играл, да?

----------
Одни с годами умнеют, другие становятся старше.

Всего записей: 613 | Зарегистр. 08-08-2006 | Отправлено: 01:28 28-09-2011
rrromano



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ALeXkRU

Цитата:
думаете, он с этим за семь лет не справился?

 
Не знаю ).
Но вопросы задаёт такие, на которые за 7 лет уже пора бы и самому ответ найти. )

Всего записей: 283 | Зарегистр. 20-09-2006 | Отправлено: 10:22 29-09-2011
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Qraizer

Цитата:
К сожалению, на полноценном обощённом программировании ставит крест разная семантика разных Дельфийных типов.

А мне, всё же, кажется, Дельфи никогда не бежала впереди наукоёмких технологий, в первом числе язык Си. Как разная семантика довольно однообразного языка может на что-то влиять не знаю, помню был текстовый режим с прерываниями и было очень жаль, что приходится приспосабливаться к какой-то графической оболочке Ну привыкли же.  

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 23:45 30-09-2011 | Исправлено: delover, 11:35 01-10-2011
Bladerender

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ООП создано не только для того, что бы задавать глупые вопросы на парах у внивере или на собеседовании на работу. Оно создано для того, что бы удобно повторно использовать уже написанный код. Если написать одну программу и все - оно не нужно. А если проект расширяем и имеет модули для реюзабла - то без этого не обойтись.

Всего записей: 13 | Зарегистр. 15-01-2007 | Отправлено: 12:23 01-10-2011
Qraizer



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ну прям так и не нужно. Главное преимущество ООП - сужение границ чёрных ящиков с модуля/единицы трансляции до класса. Модули/единицы трансляции можно использовать для структуризации по иным критериям.
Кстати, пространства имён служат для инкапсуляции интерфейсов подсистем, обычно состоящих из многих чёрных ящиков и обвязок вокруг них, как то свободные функции, типы, константы/перечисления итп. И без них, т.е. только классами, всё равно сложно добиться приемлимого дизайна.

----------
Одни с годами умнеют, другие становятся старше.

Всего записей: 613 | Зарегистр. 08-08-2006 | Отправлено: 00:33 02-10-2011
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Немного вернусь к вопросу о том что может мешать. Мой способ больше похож на намывание песка. Чтобы выделить мешающее чаще всего нужно несколько итераций. Допустим модуль-единица и я выделяю общие характеристики классов внутри модуля. При первой итерации-переносе в новое пространство имён произошло N изменений. A - количество принятых изменений меньше N. Намного меньше, следующие итерации дают N2..Nk изменений. И разница между N и A у каждой итерации есть и чаще всего не пересекаются на всём k. Без ООП эту задачу можно выразить только в декларируемых и не декларируемых функциях, что решаемо просто - декларируй всё подряд с префиксами в именах функций и привет...

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 10:54 02-10-2011
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
wasilissk

Цитата:
 .NET и Delphi один и тот же главный разработчик

А мне кажется что Сишарп больше похож на Си. Как ни странно это звучит, это так. )

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 19:56 06-10-2011
wasilissk

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover
Синтаксисом? Безусловно. Я писал о концепциях, общего там у С и С# очень мало.

Всего записей: 293 | Зарегистр. 25-12-2006 | Отправлено: 07:49 07-10-2011
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » В чем преимущество ООП ?


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru