Здравствуйте, mihailik, Вы писали:
FWP>>>А хотя бы задумался с чего бы это в Java уже почти 8 лет нет шаблонов. WH>>Ибо реализовать их нАмного сложнее чем кажется. M>Ага. Компилятор Java написали. Интерпретатор и JIT'тер написали. А шаблоны — нет, тут сложность невероятно высока.
Ты просто не представляешь возможности шаблонов.
... << RSDN@Home 1.1 beta 2 >>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, mihailik, Вы писали:
M>А вот главные, архитектурные части — очень похожи. В трёх ключевых точках:
M>RTTI (aka Reflection)
Рефлекшен в дельфе... Бедные мои тапочки... Ну не надо сравнивать бумажный самолетик с истребителем пятого поколения. M>Свойства
О да это величайшая АРХИТЕКТУРНАЯ особенность. К стати VC++ поддерживает свойства в качестве расширения. M>Упор на простоту синтаксиса
Или убогость? Так чтобы [censured] поняли?
M>Значительная часть преимуществ как Делфи, так и C# коренится в этих трёх пунктах.
Особенно два последних.... величайшие преймущества.
И вобще при чем тут C#? Вы на сабж посмотрите.
... << RSDN@Home 1.1 beta 2 >>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, mihailik, Вы писали:
А>>3) Dispose() может выбрасывать исключения M>А деструкторы C++, очевидно, не выбрасывают исключений? То-то прикольно, когда какой-нибудь Flush в деструкторе не вызовется и твоё приложение скромно об этом умолчит.
А теперь подумай что будет еслидеструкторы начнут кидать исключения:
Летит исключение прибивая объекты и в друг один из деструкторов сам кинул исключение и того два исключения одновременно. Что делать?
M>Правильно, а фиг ли что файл не сохранился. Нужно было почаще Backup делать
flush в деструкторе... гениально.
А>>4) Рекомендательный характер вызова Dispose(). Поубивал бы за это M>Ага, не поняли они в Редмонде твоей таинственной русской души.
Ага и потом народ долго думает почему на тачке с 256М программа работает прекрасно, а на серваке с двумя гигами вешается в месте с виндой.
... << RSDN@Home 1.1 beta 2 >>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, mihailik, Вы писали:
M>Короче, хотите программировать под Windows — читайте Страуструпа. Там всё написано. MSDN — для лохов. А если ваша программа заглючила, это всё бредни и чушь. Всё равно Страуструп круче в сто раз!
Ну что за бред ты тут несешь. MSDN ни кто не отменял. А вот слушать все что говорит братва из MS
... << RSDN@Home 1.1 beta 2 >>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, mihailik, Вы писали:
A>>Но насчёт полезности этого Net для программирования и применения компьютеров можно долго рассуждать. Это же чёртов новый взгляд на интерпретаторы при ощутимом росте мощностей и производительности компьютеров...
M>Интерпретаторы? Причём здесь интерпретаторы?
Я же не говорю, что это интерпретатор, я говорю о взглядах.
Похожая схема, только дополнительные преобразования в некий промежуточный код, который потом ещё преобразовывается, но не сразу, а по необходимости, по требованию.
В Бейсиках есть похожая вещь, одни реализации интерпретируют те словоблудия, что видит и человек, другие (Access VBA) могут чего-то там прекомпилировать, и интерпретировать потом это быстрее...
Здравствуйте, mihailik, Вы писали:
WH>> Разговорные языки по функциональности практически равноценны. Но С++ и делфи... ой не смешите мои тапочки.
M>Мне кажется, твоя обувь слишком много на себя берёт.
Вот это в точку! Это стоит баллов. WH сам провоцировал, так часто употреблял этот "аргумент" в разговорах...
Здравствуйте, mihailik, Вы писали:
WH>>Ни фига ты не понял. С++ САМ превращается в другие язаки. boost::spirit превращает его в язык для записи EBNF грамматики. Дельфя на такое не спасобна.
M>А на фиг это надо?
M>Если вам нужна ножовка, вы берёте в руки ножовку. Если вым нужен утюг, вы берёте утюг. Но кому нужа пила с дополнительными функциями утюга?
Нет, ну как же тебе не понятно, с помощью буста можно C++ назвать другим языком, потому что он легко самостоятельно превращается во что ... нужно? ... угодно? ... в Дельфи? ... другой С++. Во что он САМ превращается, кстати?
Ну а не прикалываясь, я из нашего разговора вынес информацию о удобстве, богатстве, многофункциональности и простоте шаблонов. Про простоту писал. Остальные вещи обсуждаемы и признаваемы полезными. По-дельфийски я бы сказал, что библиотека у них хорошая, с хорошей поддержкой...
Здравствуйте, Serginio1, Вы писали:
S> using в Net нужен только для освобождения системных ресурсов для их немедленного освобождения, во всех других объектах нет деструкторов в в обычном понимании, т.к. за освобождение памяти занятой объектом следит GC. Но через GC а так же через выделение памяти неподвласное GC итд можно многое, к сожалению еще не во все дебри Net залез.
Все что GC попало уже не детерминировано. И using не всегда спасти может.
S>>>>> Например???? Шаблоны будут, что еще??? WH>>>>Ну на эти шаблоны еще посмотреть надо. Еще надо подключение реализации. Короче я жду .NET 2 там будет видно. S>Насчет шаблонов в Net посмотри http://www.dotsite.ru/Publications/PublicationDetails.aspx?ID=115 S> Почитай очень интересно, плю что предлагают SUN. Так что ты со своими шаблонами уже отстал от жизни. Ну прочитал. После С++ шаблонов каменный век. Конечно не на столько плохо как сейчас но всеравно близко нет той мощи.
И ни слова о подключении реализации. Такое впечатление что ни кому не надо. Неполные типы это ИМХО штука безполезная особенно если сделать нормальное подключение реализации.
S> Шаблоны,макросы по сути являются Copy-Paste-Replace и ни о каком ООП не идет и речи и легко реализуются без компиляторов путем генерации соответсвующих модулей на основании "Шаблона".
Да ни фига подобного. Слова дилетанта. Это .НЕТ шаблоны можно генерить генератором, а С++ требуют информации о типах на много больше. S> А вот шаблоны в Net это действительно ООП.
Обьясни мне пожалуйста кого волнует ФИЗИЧЕСКОЕ ООП. А что касается логической состовляющей то шаблоны в С++ очень объектно ориентированые.
При помощи С++ шаблонов можно не только создавать обобщенные контейнеры но и выберать алгоритм наиболие подходящий типу.
Например так Кто хотел определения наличия функции-члена?
И много чего еще.
S> Кроме всего прочего на данном этапе надежность кода встает на первый план (хотя мне это и не импонирует)
Какие проблемы с надежностью С++ шаблонов мне ктонибудь обьяснит наконец?
... << RSDN@Home 1.1 beta 2 >>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, akasoft, Вы писали:
A>Нет, ну как же тебе не понятно, с помощью буста можно C++ назвать другим языком, потому что он легко самостоятельно превращается во что ... нужно? ... угодно? ... в Дельфи? ... другой С++. Во что он САМ превращается, кстати?
Во что хотим в то и превращаем хотим EBNF грамматики пишим, хотим FSM задаем...
Причем используя туже систему FSM может быть задан динамически. Ну это я так для развлечения писал.
A>Ну а не прикалываясь, я из нашего разговора вынес информацию о удобстве, богатстве, многофункциональности и простоте шаблонов. Про простоту писал. Остальные вещи обсуждаемы и признаваемы полезными. По-дельфийски я бы сказал, что библиотека у них хорошая, с хорошей поддержкой...
... << RSDN@Home 1.1 beta 2 >>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Этот Человек одержим! Это положительно его характеризует!
Давно слежу за топиком. Все ответы четкие, все в тему, но с уклоном в одно.. Однобокий взгляд...
Попробуйте поспорить с истинным православным. У вас ничего не получится... Когда человек ВЕРИТ в то, что говорит его не переубедить, он живет этим. Поставить под сомнение веру такого человека — значит посягнуть на самое дорогое, обречь на гибель. Коперника сожгли такие люди! Опомнитесь!
Здравствуйте, mihailik, Вы писали:
M>По функциональности C++ опережает Дельфи только в возможности компилировать драйвера.
Не опережает. Компилировать драйверы для ОС Windows можно только на MS VC++. А вот на GCC или Watcom C++ каком-либо не выйдет. Так же как и на Delphi. Так что это не ограничения языка. Это БОЛЬШАЯ политика MS.
Здравствуйте, WolfHound, Вы писали:
WH>Вот только шаблоны сводят ручную работу практически на нет. А если учесть что очень многим приложениям не нужно куча диалогов...
Насчет многим это ты погорячился. Я к примеру 90% своих программ пишу для конечного пользователя (весьма далекого от программирования и компьютеров). Поэтому хороший GUI ОБЯЗАТЕЛЕН. WH>... и написать интерфейс при помощи WTL не состовляет большого труда...
Вот именно. НАПИСАТЬ. И ты не видишь в этом ничего дурного. А когда я говорю, что сортировку можно написать или использовать библиотеку — это почему-то неправильно. Двойные стандарты какие-то.
WH>>>>>Ты что думаешь я не понимаю try finaly? Напрасно. Просто я не хочу освобождать ресурсы РУЧКАМИ. В С++ за этим следит компилятор. FWP>>И он в некотрых случаях может принять неправильное решение. FWP>>И следить за этим надо и обходить такие ситуации вручную. Да и надежности это не добавляет. WH>Конкретно пожалуйста. Ни разу не встречал.
Посмотри весь топик. Я приводил цитату вашего любимого папочки Страуструпа. Повторять лень.
Здравствуйте, Miem, Вы писали:
M> Этот Человек одержим! Это положительно его характеризует! M>Давно слежу за топиком. Все ответы четкие, все в тему, но с уклоном в одно.. Однобокий взгляд... M>Попробуйте поспорить с истинным православным. У вас ничего не получится... Когда человек ВЕРИТ в то, что говорит его не переубедить, он живет этим. Поставить под сомнение веру такого человека — значит посягнуть на самое дорогое, обречь на гибель. Коперника сожгли такие люди! Опомнитесь!
Ты на остальных посмотри... Они верят в то что отсутствие сторогой типизации благо... Что шаблоны в .НЕТ круче чем в С++ ...
M>PS Не в обиду WolfHound'у
Да я не обидчивый.
И вобще как только появится инструмент превосходящий по возможностям С++ я перейду на него. А пока...
Если у .НЕТ есть коекакие преймущества перед С++ но у дельфи ...
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, Miem, Вы писали:
M> Этот Человек одержим! Это положительно его характеризует! M>Давно слежу за топиком. Все ответы четкие, все в тему, но с уклоном в одно.. Однобокий взгляд... M>Попробуйте поспорить с истинным православным. У вас ничего не получится... Когда человек ВЕРИТ в то, что говорит его не переубедить, он живет этим. Поставить под сомнение веру такого человека — значит посягнуть на самое дорогое, обречь на гибель. Коперника сожгли такие люди! Опомнитесь!
M>PS Не в обиду WolfHound'у
Ага. Осторожно, WolfHound, а то эти Delphi-поклонники и сжечь могут.
Здравствуйте, WolfHound, Вы писали:
WH>Здравствуйте, DOOM, Вы писали:
WH>>>Ах да я же забыл в дельфе нет инлайнов и дробление сказывается на производительности... DOO>>Они есть! Просто их не надо описывать ручками, а это сделает за нас компилятор. WH>А ты с С++ не путаешь? Если мне не изменяет скалероз дельфя вобще ни чего не подставляет.
Посмотри асмовский код... Может просто юзал доисторические Дельфи.
Здравствуйте, FWP, Вы писали:
WH>>Вот только шаблоны сводят ручную работу практически на нет. А если учесть что очень многим приложениям не нужно куча диалогов... FWP>Насчет многим это ты погорячился. Я к примеру 90% своих программ пишу для конечного пользователя (весьма далекого от программирования и компьютеров). Поэтому хороший GUI ОБЯЗАТЕЛЕН.
А слабо на дельфях нарисовать ГУЙ в ХР стиле?
WH>>... и написать интерфейс при помощи WTL не состовляет большого труда... FWP>Вот именно. НАПИСАТЬ. И ты не видишь в этом ничего дурного. А когда я говорю, что сортировку можно написать или использовать библиотеку — это почему-то неправильно. Двойные стандарты какие-то.
Та видел как на WTL пишут ГУИ? Думаю что нет. вот я видел как на дельфе пишут обобщенные сортировки
WH>>Конкретно пожалуйста. Ни разу не встречал. FWP>Посмотри весь топик. Я приводил цитату вашего любимого папочки Страуструпа. Повторять лень.
Это про забытый сопиконструктор чтоли? Дык они нужны только помошникам. Классы логики в 99.99% случаев имеют правильный.
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, WolfHound, Вы писали:
WH>Ты на остальных посмотри... Они верят в то что отсутствие сторогой типизации благо... Что шаблоны в .НЕТ круче чем в С++ ...
M>>PS Не в обиду WolfHound'у WH>Да я не обидчивый. WH>И вобще как только появится инструмент превосходящий по возможностям С++ я перейду на него. А пока... WH>Если у .НЕТ есть коекакие преймущества перед С++ но у дельфи ...
Просто нужно всегда понимать что язык — инструмент, шаблоны,строгая типизация — это тоже инструменты. Это то, с помощью чего решают задачи. Дык вот правильным набор инструментов будет тот, который по возможностям максимально сверху приближен к достаточным условиям задачи. И цитата в твоей подписи об этом говорит:
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, DOOM, Вы писали:
DOO>>>Они есть! Просто их не надо описывать ручками, а это сделает за нас компилятор. WH>>А ты с С++ не путаешь? Если мне не изменяет скалероз дельфя вобще ни чего не подставляет. DOO>Посмотри асмовский код... Может просто юзал доисторические Дельфи.
VC++7.1
int add1(int x, int y)
{
return x+y;
}
int add2(int x, int y)
{
return add1(x, y)+add1(x, y);
}
int main()
{
return add2(5, 6);
}
PUBLIC _main
; Function compile flags: /Ogty
; COMDAT _main
_TEXT SEGMENT
_main PROC NEAR ; COMDAT
; 186 : return add2(5, 6);
mov eax, 22 ; 00000016H
; 187 : }
ret 0
_main ENDP
Здравствуйте, Miem, Вы писали:
M>Просто нужно всегда понимать что язык — инструмент, шаблоны,строгая типизация — это тоже инструменты. Это то, с помощью чего решают задачи. Дык вот правильным набор инструментов будет тот, который по возможностям максимально сверху приближен к достаточным условиям задачи. И цитата в твоей подписи об этом говорит:
По мне так чем меньше РУЧНОЙ работы тем лучше. В С++ ручками надо работать один раз при написании шаблона, а потом в сотне мест с различными типами использую.
M>
M>Пусть это будет просто:
M>просто, как только можно,
M>но не проще.
M>(C) А. Эйнштейн
Вот именно нельзя делать проще чем можно.
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн