Re[22]: мнение о Delphi
От: VladD2 Российская Империя www.nemerle.org
Дата: 28.04.04 23:04
Оценка:
2 kuj: Гляжу на твои оценки и не пойму... у тебя раздвоение личности, или просто мышь глючит?
... << RSDN@Home 1.1.3 beta 2 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[16]: мнение о Delphi
От: VladD2 Российская Империя www.nemerle.org
Дата: 28.04.04 23:04
Оценка:
Здравствуйте, Serginio1, Вы писали:

S> Смотрим Delphi.Net совместимость с нативной версией 95%. Какой язык еще может позволить такой безболзненный переход ?????

S> Сколько мучаются с С++ ????

Гы-гы. На С++ достаточно врубить ключик /clr и получишь менеджед-приложение. Так что совместимость на 100%.
... << RSDN@Home 1.1.3 beta 2 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[33]: мнение о Delphi
От: Andir Россия
Дата: 28.04.04 23:54
Оценка:
Здравствуйте, AndrewVK, Вы писали:

A>>>>nested constants

AVK>>>Это есть.
A>>А что это такое? константы вложенные в константы? Даже представить такое себе не могу
AVK>Константы внутри методов.

Значит у меня с английским беда ... почему-то был уверен, что nested употребляется для обозначения "вложенный один в другой" ...
Тогда я с nested прокололся

P.S. Спасибо за разъяснения.

С Уважением, Andir!
Re[34]: мнение о Delphi
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 29.04.04 04:58
Оценка:
Здравствуйте, Andir, Вы писали:

A>Значит у меня с английским беда ... почему-то был уверен, что nested употребляется для обозначения "вложенный один в другой" ...


Так и есть. Просто один и другой не обязательно одно и то же.
... << RSDN@Home 1.1.3 beta 2 (mobile station) >>
AVK Blog
Re[14]: мнение о Delphi
От: NoFate Россия  
Дата: 29.04.04 09:36
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>К сожалению в С++ таких среств маловато, а грабель приводящих к ошибкам достаточно.

Но, согласитесь, C++ предоставляет огромную гибкость. Он позволяет быстро реализовывать "странные" идеи.

VD>И я видел, да что душой кривить использую постоянно, языки которые позволяют не допускать многие ошибки, или если это не возможно, хотя бы сгладить последствия этих ошибок.

Кстати, о таких языках. Вы имеете в виду, думаю, Delphi. Я сам не так давно пользовался исключительно им. Но он(а может и мои знания по нему) перестал удовлетворять моим запросам. Всё, что в нём удобно, имхо, это дизайн форм... Это моё лично мнение. Но их обычно приходиться делать меньше, чем живого кода.

VD>Самое смешное, что нововведения в этих языках банальны. Они направлены на увеличение типобезопасности и на устранение граблей. Результатом таких изменений является значительное сокращения общего (включающего время на отладку) времени разработки. И это проверенный факт.

А про ошибки типов... Можете не верить, но обычно удаётся заметить их ещё на этапе написания кода. Правда, не всегда, но тем не менее.

VD>Говорить нужно о нестабильности програм написанных на языке, а не о нестабильности языка. Но это так о точности терминологии.

А может быть, о нестабильности программ, написанных программистом?

VD>Что же касается сути, то как раз не верно, причем в корне, полагаться на внимательность человека. Ему и так хватает проблем. Если можно снять с него часть проблем, то это нужно делать. Так как мозг — это тонкий инструмент причем очень дорогой и использоват его лучше там где он может дать нибольший эффект.

Он и даёт наибольший эффект, когда имеет наибольшую свободу.

VD>Изумитльный пример проблем языка — МС Ворд. Он глючит на протяжении всего срока своего существования и программисты МС ничего не могут с этим поделать. А ведь у МС бабок и хороших программистов выше крыши.

Думаю, дело не в языке, а в объёме кода. Там его тоже выше крыши. И такой продукт на Delphi... Это что-то около научной фантастики. Думаю, с этим Вы согласны.

VD>Ладно, не принимай близко к сердцу. Но заявления твои столь же не верны как и безопеляционны. А это не есть гуд. Сомнения — это не стыдно. Без них не может быть найдено верное решение.

... << RSDN@Home 1.1.3 stable >>
Re[23]: мнение о Delphi
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 29.04.04 09:51
Оценка:
Здравствуйте, kuj, Вы писали:

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


S>>>>>> В Delphi появилась только перегрузка операторов, и статические переменные, аттрибуты , ЖЦ, динамическая компиляция и все, остальное метаданные и другие примочки только расширение уже имеющегося.

S>>>> А много в C# ты пользуешься перегрузкой операторов???? Они в большей степени для шаблонов.
kuj>>>А зачем шаблонам перегрузка операторов?
S>> Вместо компараторов и единый синтаксис при преобразовании шаблонов в нормальный код.
kuj>Я не понимаю Вас. Поясните, пожалуйста, детальнее.
Хотя C#,Delphi.Net и поддерживает перегрузку оператоторов но примняется очень редко, т.к. тянет за собой переопределение многих методов и не столь нужны как при создании шаблонов.
AVK>>>>>И это ты считаешь мало? Полязыка переделали. В С++/CLI и то изменений поменьше будет, не говоря уж об МС++.
S>>>> Да уж. Единный базовый класс, компонентность, рефлексия это совсем немного.
kuj>>>Атрибуты, пространства имен... — совсем "немного"... Кстати, MC++ действительно заметно меньше изменений претерпел.
S>> Еще раз аттрибуты частично перекрываются RTTI и метаклассами,
kuj>Э-э, а как, интересно? Никакой связи не вижу...
Если брать аттрибуты получаемые через Attribute. GetCustomAttributes. То в Delphi метаклассы хорошо справляются с этой задачей путем кодирования виртуальных статических методов, RTTI тоже многое позволяет, хотя и не идет ни в какое сравнение с рефлексией, но ручками и тогда можно было многое делатью
S>> Появилась перегрузка операторов. C++ с точки зрения архитектуры классов это вообще разные языки,
kuj>А как языки можно сравнивать по некой "архитектуре классов"? Поясните.
Сами по себе языки достаточно одинаковы. Шаблоны тоже не являются языковой фичей. Различие их только на уровне компиляторов.
А вот здесь как раз и проявляются различие в единой иерархии, RTTI управление памятью итд. Введение в Delphi варианта сильно упростило работу не только с валуе типами но и с олеавтоматизацией и программирование стало наиного легче с заранее неизвестными типами.
S>>т.к. класс и структура в С++ одно и тоже,
kuj>Но их суть (reference type, value type) отличается от их тезок в Delphi Language не менее сильно.
Не совсем. В Delphi packed Object сравнима со структурами Net. Объекты вообще близнецы братья. Причем в Delphi.Net через хэлперы была достигнута полная их совместимость.
S>> в отличие от единого базового класса и иерархии классов очень схожих как в Delphi и Яве.
kuj>А что с базовым классом? Вы полагаете, что в C++ нет библиотек с единым (не таким уж и единым в случае Delphi, кстати) базовым классом? Про MFC, например, Вы ничего не слышали?
Дело не разрозненных библиотеках а об общей архитектуре классов. Так при едином базовом классе в этих средах работа выделение памяти, уничтожение, RTTI, работа с типом намного упрощает компиляцию и получение информации о типе в рантайме.
Тенденция развития говорит об этом. Подход С++ отвергнут в угоду гибгости.
... << RSDN@Home 1.1.0 stable >>
и солнце б утром не вставало, когда бы не было меня
Re[29]: мнение о Delphi
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 29.04.04 09:51
Оценка:
Здравствуйте, kuj, Вы писали:


S>>>>11) variants

kuj>Зачем? Есть ведь полноценная метаинформация.
Ты с поздним связыванием в C# видно не работал http://www.rsdn.ru/Forum/Message.aspx?mid=621138&amp;only=1
Автор: Serginio1
Дата: 27.04.04

Хотя в у меня варианты с поздним связыванием и не работают но в модуле вариатс такая возможность присутствует.
S>>>>13) sets with more than 64 elements
kuj>Интересно зачем? В каких задачах может понадобиться?
При работе с AnsiChar.

AVK>>>И? Как видишь отличий дофига и больше.

S>> 17 отличий это много у C# и 14 у Delphi ??? И у кого еще больше премуществ????
kuj>Преимуществ, судя по всему, больше все-таки у C#.
На вкус и цвет
... << RSDN@Home 1.1.0 stable >>
и солнце б утром не вставало, когда бы не было меня
Re[27]: мнение о Delphi
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 29.04.04 09:51
Оценка:
Здравствуйте, AndrewVK, Вы писали:


AVK>>>Декларативное программирование императивным? Мда, зашибись аналоги нашел.

S>> Но выполняющие одно и тоже (Attribute.GetCusomAttribute).

AVK>Не мужик, если ты не понимаешь разницы между императивным и декларативным программированием то это в морг.

Большое спасибо. Пошел заказывать место.


S>> А 1 и 2 архитектурно.


AVK>Что архитектурно? Отличаются? Нет, не отличаются.


Хрен с ним, что появились длинные строки, System.Pas (вернее не было исходников этого класса), Перписан Windows.pas, итд
Хватит одного Варианта с его поддержкой компилятором особенно при позднем связывании и их поддержка в БД ,TOlrContainer значительно расширен,
Помню читал книжечку Оле за 21 день. Как я сочувствовал сишникам.
Если для тебя это ничего то ....
1 вообще в глаза не видел, 2 мельком сразу начал с 3 ки. Кстати интерфейсы появились в тройке , в 2 ке взаимодействие было на уровне абстрактных классов и перекрытии методов. До 5 ки шло развитие среды и языка, затем только компонентов. Уход Хэйлсберга всетаки сказался.
Блин из-за тебя столько времени потратил.
... << RSDN@Home 1.1.0 stable >>
и солнце б утром не вставало, когда бы не было меня
Re[17]: мнение о Delphi
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 29.04.04 11:01
Оценка: -2
Здравствуйте, VladD2, Вы писали:

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


S>> Смотрим Delphi.Net совместимость с нативной версией 95%. Какой язык еще может позволить такой безболзненный переход ?????

S>> Сколько мучаются с С++ ????

VD>Гы-гы. На С++ достаточно врубить ключик /clr и получишь менеджед-приложение. Так что совместимость на 100%.

С MFC,STL и OWL
... << RSDN@Home 1.1.0 stable >>
и солнце б утром не вставало, когда бы не было меня
Re[25]: мнение о Delphi
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 29.04.04 11:01
Оценка:
Здравствуйте, Lloyd, Вы писали:

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


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


S>> Да и M$ скоро Акзапту с Навижн под Net выпустят.


L>Откуда такая информация?

http://www.rsdn.ru/Forum/Message.aspx?mid=475852&amp;only=1
Автор: Serginio1
Дата: 11.12.03

http://www.rsdn.ru/Forum/Message.aspx?mid=485167&amp;only=1
Автор: AndrewVK
Дата: 19.12.03
... << RSDN@Home 1.1.0 stable >>
и солнце б утром не вставало, когда бы не было меня
Re[26]: мнение о Delphi
От: Lloyd Россия  
Дата: 29.04.04 12:21
Оценка:
Здравствуйте, Serginio1, Вы писали:

L>>Откуда такая информация?

S>http://www.rsdn.ru/Forum/Message.aspx?mid=475852&amp;only=1
Автор: Serginio1
Дата: 11.12.03

S>http://www.rsdn.ru/Forum/Message.aspx?mid=485167&amp;only=1
Автор: AndrewVK
Дата: 19.12.03


Да, но это не Аксапта
... << RSDN@Home 1.1.3 stable >>
Re[27]: мнение о Delphi
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 29.04.04 12:45
Оценка:
Здравствуйте, Lloyd, Вы писали:

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


L>>>Откуда такая информация?

S>>http://www.rsdn.ru/Forum/Message.aspx?mid=475852&amp;only=1
Автор: Serginio1
Дата: 11.12.03

S>>http://www.rsdn.ru/Forum/Message.aspx?mid=485167&amp;only=1
Автор: AndrewVK
Дата: 19.12.03


L>Да, но это не Аксапта


M$ скупила эти компании и если не хочет потерять клиентов то обязана их и в дальнейшем поддерживать.
Переход на Net преопределен. Либо создадут новый продукт на базе скупленных, либо будут поддерживать но уже на основе технологий Net но с другим ядром. А как новый продукт будет называться не важно. Мы говорим Акзапта на Net подразумеваем нетовского наследника Axapta, Navision, Great Planes и Solomon
... << RSDN@Home 1.1.0 stable >>
и солнце б утром не вставало, когда бы не было меня
Re[25]: мнение о Delphi
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 29.04.04 13:19
Оценка:
Здравствуйте, Lloyd, Вы писали:

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


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


S>> Да и M$ скоро Акзапту с Навижн под Net выпустят.


L>Откуда такая информация?


Еще
http://idc.mpei.ac.ru/SRV-VMSS/rus/html/edcenter1.htm

В третьих, корпорация Microsoft не ограничивает себя лишь совершенствованием и продвижением на рынок систем MBS Axapta и MBS Navision, хотя в предстоящие три-четыре года они будут основными в объемах продаж. Корпорация решила создать эффективную инструментальную основу для разработки ERP-систем различного масштаба и профиля, названную ею Microsoft Business Framework (MBF). MBF будет интегрирована в среду разработки Visual Studio.NET, одну из наиболее используемых инструментальных сред в мире.

В-четвертых, корпорация Microsoft предполагает дать пользователю полный спектр взаимосвязанных систем базового программного обеспечения таких, как операционная система MS Longhorn, набор бизнес-серверов MS Business Servers, офисная система MS Office System, система автоматизации программирования MS Visual Studio.NET с включенной в нее MBF и, наконец, масштабируемые корпоративные системы MBS Axapta и MBS Navision. Последние будут иметь общую кодовую часть, базирующуюся на MBF и написанную на новом языке C#, который вскоре придется изучать всем, кто собирается разрабатывать сколь-нибудь эффективные программные приложения для локальных корпоративных сетей или глобальной сети Интернет.
... << RSDN@Home 1.1.0 stable >>
и солнце б утром не вставало, когда бы не было меня
Re[28]: мнение о Delphi
От: Lloyd Россия  
Дата: 29.04.04 14:29
Оценка:
Здравствуйте, Serginio1, Вы писали:

L>>Да, но это не Аксапта


S> M$ скупила эти компании и если не хочет потерять клиентов то обязана их и в дальнейшем поддерживать.

S> Переход на Net преопределен. Либо создадут новый продукт на базе скупленных, либо будут поддерживать но уже на основе технологий Net но с другим ядром. А как новый продукт будет называться не важно. Мы говорим Акзапта на Net подразумеваем нетовского наследника Axapta, Navision, Great Planes и Solomon

Говорим одно, думаем другое.
... << RSDN@Home 1.1.3 stable >>
Re[29]: мнение о Delphi
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 29.04.04 14:44
Оценка:
Здравствуйте, Lloyd, Вы писали:

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


L>>>Да, но это не Аксапта


S>> M$ скупила эти компании и если не хочет потерять клиентов то обязана их и в дальнейшем поддерживать.

S>> Переход на Net преопределен. Либо создадут новый продукт на базе скупленных, либо будут поддерживать но уже на основе технологий Net но с другим ядром. А как новый продукт будет называться не важно. Мы говорим Акзапта на Net подразумеваем нетовского наследника Axapta, Navision, Great Planes и Solomon

L>Говорим одно, думаем другое.

А что на это ответишь http://www.rsdn.ru/forum/Message.aspx?mid=624299&amp;only=1
Автор: Serginio1
Дата: 29.04.04
... << RSDN@Home 1.1.0 stable >>
и солнце б утром не вставало, когда бы не было меня
Re[28]: мнение о Delphi
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 29.04.04 14:58
Оценка: :)
Здравствуйте, Serginio1, Вы писали:

S> Хрен с ним, что появились длинные строки,


Те же строки что и были, сказался переход на 32 бита.

S> System.Pas (вернее не было исходников этого класса),


О да, серьезное архитектурное изменение.

S> Перписан Windows.pas,


Целиком? Это опять же вынужденная мера в связи с переходом на Win32. В любом случае к архитектуре это не имеет никакого отношения.

S> Хватит одного Варианта с его поддержкой компилятором особенно при позднем связывании и их поддержка в БД ,TOlrContainer значительно расширен,


Опять ты путаешь версии. Это появилось в Delphi 3. В двойке СОМ был постольку поскольку.

S> Помню читал книжечку Оле за 21 день. Как я сочувствовал сишникам.

S> Если для тебя это ничего то ....
S> 1 вообще в глаза не видел, 2 мельком сразу начал с 3 ки.

Ты про меня? Я начал с первой.

S> Блин из-за тебя столько времени потратил.


Не из-за меня, а из-за себя.
... << RSDN@Home 1.1.3 stable >>
AVK Blog
Re[29]: мнение о Delphi
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 29.04.04 15:16
Оценка:
Здравствуйте, AndrewVK, Вы писали:

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


S>> Хрен с ним, что появились длинные строки,


AVK>Те же строки что и были, сказался переход на 32 бита.


S>> System.Pas (вернее не было исходников этого класса),


AVK>О да, серьезное архитектурное изменение.

А как можно о чем то судить не имея исходного кода.
S>> Перписан Windows.pas,

AVK>Целиком? Это опять же вынужденная мера в связи с переходом на Win32. В любом случае к архитектуре это не имеет никакого отношения.


S>> Хватит одного Варианта с его поддержкой компилятором особенно при позднем связывании и их поддержка в БД ,TOlrContainer значительно расширен,


AVK>Опять ты путаешь версии. Это появилось в Delphi 3. В двойке СОМ был постольку поскольку.

Блин из-за тебя перечитал еще раз Чарльза Клаверта "Delphi 2" Все там было. Во всяком случае это его слова.
И приведенный код.
S>> Помню читал книжечку Оле за 21 день. Как я сочувствовал сишникам.
S>> Если для тебя это ничего то ....
S>> 1 вообще в глаза не видел, 2 мельком сразу начал с 3 ки.

AVK>Ты про меня? Я начал с первой.

Но читал Чарльза Клаверта "Delphi 2" это была моя первая книга по Delphi. Очень мне понравилась.


S>> Блин из-за тебя столько времени потратил.


AVK>Не из-за меня, а из-за себя.

А у тебя с памятью плохо. Кому верить тебе или Чарльзу Клаверту главу по ОЛЕ он писал кстати с Хэйлсбергом
... << RSDN@Home 1.1.0 stable >>
и солнце б утром не вставало, когда бы не было меня
Re[24]: мнение о Delphi
От: kuj  
Дата: 29.04.04 15:23
Оценка:
Здравствуйте, Serginio1, Вы писали:

S>>>>>>> В Delphi появилась только перегрузка операторов, и статические переменные, аттрибуты , ЖЦ, динамическая компиляция и все, остальное метаданные и другие примочки только расширение уже имеющегося.

S>>>>> А много в C# ты пользуешься перегрузкой операторов???? Они в большей степени для шаблонов.
kuj>>>>А зачем шаблонам перегрузка операторов?
S>>> Вместо компараторов и единый синтаксис при преобразовании шаблонов в нормальный код.
kuj>>Я не понимаю Вас. Поясните, пожалуйста, детальнее.
S> Хотя C#,Delphi.Net и поддерживает перегрузку оператоторов но примняется очень редко, т.к. тянет за собой переопределение многих методов и не столь нужны как при создании шаблонов.
Нет. Еще раз. Объясните зачем шаблонам перегрузка операторов?
AVK>>>>>>И это ты считаешь мало? Полязыка переделали. В С++/CLI и то изменений поменьше будет, не говоря уж об МС++.
S>>>>> Да уж. Единный базовый класс, компонентность, рефлексия это совсем немного.
kuj>>>>Атрибуты, пространства имен... — совсем "немного"... Кстати, MC++ действительно заметно меньше изменений претерпел.
S>>> Еще раз аттрибуты частично перекрываются RTTI и метаклассами,
kuj>>Э-э, а как, интересно? Никакой связи не вижу...
S> Если брать аттрибуты получаемые через Attribute. GetCustomAttributes. То в Delphi метаклассы хорошо справляются с этой задачей путем кодирования виртуальных статических методов, RTTI тоже многое позволяет, хотя и не идет ни в какое сравнение с рефлексией, но ручками и тогда можно было многое делатью
Нет. Это ведь совсем другое. Атрибуты — это декларативный способ описания поведения, а Вы предлагаете использовать императивный да еще и таким способом, что все плюсы данной методики становятся минусами. Понимаете?
S>>> Появилась перегрузка операторов. C++ с точки зрения архитектуры классов это вообще разные языки,
kuj>>А как языки можно сравнивать по некой "архитектуре классов"? Поясните.
S> Сами по себе языки достаточно одинаковы. Шаблоны тоже не являются языковой фичей.
Являются, конечно. Посмотрите спецификацию С++.
S>Различие их только на уровне компиляторов.
Сами себе противоречите...
S> А вот здесь как раз и проявляются различие в единой иерархии,
Так "единая" иерархия это вообще-то фича библиотеки классов, но уж никак не языков. Я же Вам уже напоминал о MFC.
S>>>т.к. класс и структура в С++ одно и тоже,
kuj>>Но их суть (reference type, value type) отличается от их тезок в Delphi Language не менее сильно.
S> Не совсем. В Delphi packed Object сравнима со структурами Net.
Я конечно не считаю себя специалистом по Delphi, но разве behavior у packed object такой же, как у структур в .НЕТ? То бишь тоже value type?
S>Объекты вообще близнецы братья.
Не совсем. Вчасности, поведение деструкторов отличается. Да и, на сколько я знаю, для обычных классов (не COM) Delphi не предоставляет возможности множественного интерфейсного наследования.
S>Причем в Delphi.Net через хэлперы была достигнута полная их совместимость.
Что есть "хэлпер"?
S>>> в отличие от единого базового класса и иерархии классов очень схожих как в Delphi и Яве.
kuj>>А что с базовым классом? Вы полагаете, что в C++ нет библиотек с единым (не таким уж и единым в случае Delphi, кстати) базовым классом? Про MFC, например, Вы ничего не слышали?
S> Дело не разрозненных библиотеках а об общей архитектуре классов.
А что есть "общая архитектура классов"? У MFC, например, архитектура классов вполне себе "общая". Речь, я так понимаю, об архитектуре иерархии классов?
S>Так при едином базовом классе в этих средах работа выделение памяти, уничтожение, RTTI, работа с типом намного упрощает компиляцию и получение информации о типе в рантайме.
Все это есть в MFC. Более того, есть полноценная бинарная сериализация объектов...
S> Тенденция развития говорит об этом. Подход С++ отвергнут в угоду гибгости.
Наоборот — негибкости. Подумайте логически...
... << RSDN@Home 1.1.3 stable >>
Re[25]: мнение о Delphi
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 29.04.04 16:02
Оценка: +1 -1
Здравствуйте, kuj, Вы писали:


S>> Хотя C#,Delphi.Net и поддерживает перегрузку оператоторов но примняется очень редко, т.к. тянет за собой переопределение многих методов и не столь нужны как при создании шаблонов.

kuj>Нет. Еще раз. Объясните зачем шаблонам перегрузка операторов?


В С++ существует такое понятие "функтор" это объект который ведет себя как функция.
struct some
{
//...
};
struct some_dynamic_cmp
{
    bool operator()(const some& lhs, const some& rhs)
    {
    //Тут сравниваем
    }
};
void main()
{
    std::vector<some> some_vec;
    //Заполняем
    some_dynamic_cmp cmp;
    //Устанавлеваем правила сравнения
    std::sort(some_vec.begin(), some_vec.end(), cmp);
}


kuj>Нет. Это ведь совсем другое. Атрибуты — это декларативный способ описания поведения, а Вы предлагаете использовать императивный да еще и таким способом, что все плюсы данной методики становятся минусами. Понимаете?


Метаклассов нет в Net и этим они сильно обедненны. Частично атрибуты призваны залатывать дыры. Хотя введение атрибутов большой плюс.
S>>>> Появилась перегрузка операторов. C++ с точки зрения архитектуры классов это вообще разные языки,
kuj>>>А как языки можно сравнивать по некой "архитектуре классов"? Поясните.
S>> Сами по себе языки достаточно одинаковы. Шаблоны тоже не являются языковой фичей.
kuj>Являются, конечно. Посмотрите спецификацию С++.
S>>Различие их только на уровне компиляторов.
kuj>Сами себе противоречите...
S>> А вот здесь как раз и проявляются различие в единой иерархии,
kuj>Так "единая" иерархия это вообще-то фича библиотеки классов, но уж никак не языков. Я же Вам уже напоминал о MFC.
Еще раз. В MFC есть единая иерархия но ее нет во всех классах и по количеству не очень хороших откликов о ней можно попытаться найти в чем причина.
S>>>>т.к. класс и структура в С++ одно и тоже,
kuj>>>Но их суть (reference type, value type) отличается от их тезок в Delphi Language не менее сильно.
S>> Не совсем. В Delphi packed Object сравнима со структурами Net.
kuj>Я конечно не считаю себя специалистом по Delphi, но разве behavior у packed object такой же, как у структур в .НЕТ? То бишь тоже value type?
Да единственно, что если packed object будет содержать объекты по выходе из видимости нужно их уничтожать.
S>>Объекты вообще близнецы братья.
kuj>Не совсем. Вчасности, поведение деструкторов отличается. Да и, на сколько я знаю, для обычных классов (не COM) Delphi не предоставляет возможности множественного интерфейсного наследования.
Опятьже Есть класс TInterfacedObject в котором реализован IUnknown
 TInterfacedObject = class(TObject, IInterface)
  protected
    FRefCount: Integer;
    function QueryInterface(const IID: TGUID; out Obj): HResult; stdcall;
    function _AddRef: Integer; stdcall;
    function _Release: Integer; stdcall;
  public
    procedure AfterConstruction; override;
    procedure BeforeDestruction; override;
    class function NewInstance: TObject; override;
    property RefCount: Integer read FRefCount;
  end;


Наследуясь от которого получаем реализацию IUnknown.

А вот
        function TInterfacedObject.QueryInterface(const IID: TGUID; out Obj): HResult;
begin
  if GetInterface(IID, Obj) then
    Result := 0
  else
    Result := E_NOINTERFACE;
end;


А вот GetInterface(IID, Obj) уже реализован в базовом классе TObject. И InterfaceTable и смещения заполняются на этапе компиляции . Это к тому зачем нуже единый базовый класс и единый базовый метакласс. Если мне нужен объект с поддержкой интерфейсов или с подсчетом ссылок если мне лениво вызывать Free я использую TInterfacedObject иначе TObject Все от ситуации.
S>>Причем в Delphi.Net через хэлперы была достигнута полная их совместимость.
kuj>Что есть "хэлпер"?

Это фича компилятора. Если он не видит метода у объекта он обращается к хэлперу этого класса и если там есть такой метод то вызывает его.
http://www.rsdn.ru/Forum/Message.aspx?mid=548308&amp;pg=1
Автор: Serginio1
Дата: 24.02.04

S>>>> в отличие от единого базового класса и иерархии классов очень схожих как в Delphi и Яве.
kuj>>>А что с базовым классом? Вы полагаете, что в C++ нет библиотек с единым (не таким уж и единым в случае Delphi, кстати) базовым классом? Про MFC, например, Вы ничего не слышали?
S>> Дело не разрозненных библиотеках а об общей архитектуре классов.
kuj>А что есть "общая архитектура классов"? У MFC, например, архитектура классов вполне себе "общая". Речь, я так понимаю, об архитектуре иерархии классов?
S>>Так при едином базовом классе в этих средах работа выделение памяти, уничтожение, RTTI, работа с типом намного упрощает компиляцию и получение информации о типе в рантайме.
kuj>Все это есть в MFC. Более того, есть полноценная бинарная сериализация объектов...
S>> Тенденция развития говорит об этом. Подход С++ отвергнут в угоду гибгости.
kuj>Наоборот — негибкости. Подумайте логически...
Я уже попытался ответить. В любом случае переубеждать не собираюсь.
Но вот по интефейсам дам еще одну ссылочку что бы было понятно зачем нужен единый базовый класс
http://www.rsdn.ru/Forum/Message.aspx?mid=527260&amp;only=1
Автор: Serginio1
Дата: 02.02.04
... << RSDN@Home 1.1.0 stable >>
и солнце б утром не вставало, когда бы не было меня
Re[18]: мнение о Delphi
От: kuj  
Дата: 29.04.04 16:05
Оценка:
Здравствуйте, Serginio1, Вы писали:

S>>> Смотрим Delphi.Net совместимость с нативной версией 95%. Какой язык еще может позволить такой безболзненный переход ?????

S>>> Сколько мучаются с С++ ????
VD>>Гы-гы. На С++ достаточно врубить ключик /clr и получишь менеджед-приложение. Так что совместимость на 100%.
S> С MFC,STL
А какая проблема?
S>и OWL
А какое отношение оно имеет к C++.
... << RSDN@Home 1.1.3 stable >>
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.