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

Вниз

Delphi vs. C++   Найти похожие ветки 

 
начинающий ©   (2004-09-05 17:04) [0]

Разговаривал с одним преподавателем по программированию (хотя лучше скзать - по С++). Он утверждает, что у Делфи нет будущего; компиллятор генерит намного более медленный код, чем Визуал С++; Дельфи не годится для больших проэктов (ну, скажем, габариты с MS Office).
Хотя достойно обстоять свою точку зрения он не смог, но, возможно, от этого проблема не исчезла. А что Вы думаете по этому поводу?


 
DrPass ©   (2004-09-05 17:07) [1]

Еще один...
Это у твоего преподавателя нет будущего. Пусть матчасть учит


 
begin...end ©   (2004-09-05 17:09) [2]

Я думаю по этому поводу, что даже если указанные недостатки имеют место, то это не означает, что у Delphi нет будущего. Таким образом, у преподавателя проблемы с логикой. Если это преподаватель по программированию, то, т.к. у него проблемы с логикой, - у него нет будущего.


 
начинающий ©   (2004-09-05 17:12) [3]

А как нащет сабжа? Действительно ли Делфи генерит оччччень медленный код? Или это поклёп?


 
Гаврила ©   (2004-09-05 17:18) [4]

Холи вар...
поклеп
что угодно можно написать на чем угодно
хоть на паскале , ххоть на си
скорость приличная
PS
вреплодаватею скажи что он неправ, если будет возможность


 
YurikGL ©   (2004-09-05 17:20) [5]

Путь на ВизуалАссемблере пишет, если скорости хочет.


 
Gero ©   (2004-09-05 17:20) [6]

Блин, опять...
Не надоело?


 
Игорь Шевченко ©   (2004-09-05 17:27) [7]


> Разговаривал с одним преподавателем по программированию
>


> Хотя достойно обстоять свою точку зрения он не смог


Кто-то из вас врет...


 
SPeller ©   (2004-09-05 17:32) [8]


>  компиллятор генерит намного более медленный код, чем Визуал
> С++;

Да, у VC компилятор сильнее в оптимизациях, но это вовсе не даёт права заявлять что Дельфийский прямо-таки тормоз выдаёт а не код.


> Дельфи не годится для больших проэктов (ну, скажем, габариты
> с MS Office).

У нас на работе на Дельфях написан проект для америкосов, откопилированный ЕХЕ весит 5 метров, прям как апликухи в офисе (всякой графики и прочей фигни в нем мало). А ещё на Дельфях написана бухгалтерская программа, по функциональности примерно 1/3 от 1С. При этом над всем этим (пропорции меняются) работает не более 10 человек программистов. 1-й проект пишем 1 год, второй два года. Первый два месяца назад ушел на внедрение, второй уже год как исправно работает. Так что ваш препод самый обычный сишник приплюсник, фанатик.


 
начинающий ©   (2004-09-05 17:34) [9]

2 Игорь Шевченко:
Врёт? Отчего же? Напр.: когда я спросил привести хоть один везкий аргумент в пользу C++ он ответил, что это язык, наиболее часто используемый при составлениии программ для компов. Меня лично это не убедило.
2 anyone:
Вы бы слышали тон его разговора: как будто я потерял рассудок, а он пытается бросить мне соломинку, которая меня спасет от неминуемого. Еще немного, и похоже, что он начал бы меня оплакивать. Жаль, что я не знаю ни одного более-менее крупного и известного проекта, сотворенного на Дельфи - можно было бы немного его обломать.


 
Ермак ©   (2004-09-05 17:35) [10]

Преимуществ языка C (но не С++!) по сравнению с Паскаль сейчас нет вообще. Скорость +-15% уже давно не является критерием для высокоуровневого программирования. Главное - суметь написать быстрый алгоритм, а уж компилятор - дело десятое...
Зато по ошибкоопасности - С - самый насыщенный язык. На втором месте - С++, на тертьем Visual Basic :-), затем Дельфи, Ява, а самым ошибкобезопасным считается Smalltalk.

Поэтому писать средний прикладной проект на Дельфи лучше всего.

В то же время я не противник, а напротив горячий поклонник С++. Но его стоит применять в задачах, требующих сложного проектирования со множеством взаимосвязей между сущностями. Там ему равных нет. Когда я разрабатывал виртуальную машину под динамический язык, я насчитал десятки моментов, которые нельзя было бы напрямую описать в иерархии классов Дельфи. Множественное наследование, шаблоны и перегрузка операторов - незаменимые вещи для таких задач. В дельфи с их эмуляцией начинается жуткий геморрой, который действительно приводит либо к нечитабельному и нерасширяемому коду, либо к падению быстродействия на порядок (что лучше выбрать - это вопрос, который не даст вам спать спокойно).

Резюме: единственное, но для многих задач огромное, преимущество С++ - возможности проектирования ООП и обощенного программирования (шаблоны).


 
Игорь Шевченко ©   (2004-09-05 17:42) [11]

начинающий ©   (05.09.04 17:34) [9]

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


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


Это действительно так по отношению к паскалю. Хотя бы потому, что число программистов, знающих С (без плюсов) больше.

На самом деле, скорее всего, наибольшее количество программ написано на Basic"е или на Cobol"e.


> Жаль, что я не знаю ни одного более-менее крупного и известного
> проекта, сотворенного на Дельфи


Их есть, и немало. В основном, прикладные.


 
начинающий ©   (2004-09-05 17:46) [12]

Как раз препод. и говорил о том, что Дельфи - для среднячков, а не для профессионалов. Так же было сказано, что ни одна приличная фирма не станет набирать программистов со знанием Дельфи, а то что Дельфи более удобен с точки зрения ошибкобезопасности - ни кого не волнует, и бедным программистам приходится учить то, что надо, а не то что хочется.


 
Ермак ©   (2004-09-05 17:49) [13]

Хороший программист должен знать хотя бы два языка. Дельфи и Си++ - идеальное сочетание.


 
SPeller ©   (2004-09-05 17:51) [14]

То что Си распространённее - у этого языка поддержка очень сильная. Идин мелкософт чего стоит.

Вот писал бы Билл Гейтс изначально на Паскале, был бы сейчас Visual Pascal, а не Visual C++ :)


 
Игорь Шевченко ©   (2004-09-05 18:05) [15]

начинающий ©   (05.09.04 17:46) [12]

Мой совет, смени преподавателя, если возможно. Потому что ламер не сможет научить чему-то.


 
DrPass ©   (2004-09-05 18:46) [16]


> Вот писал бы Билл Гейтс изначально на Паскале

Ты будешь смеяться, но Windows была изначально написана на Паскале. Естественно, на Майкрософтовском, а не Борландовском. И они выпускали довольно передовой компилятор Quick Pascal. А потом стали делить сферы влияния с Борландом, и договорились: Микрософт не посягает на Паскаль, Борланд не посягает на Бейсик (впрочем, это неофициальная версия. И Борланд, и Микрософт упорно хранят молчание о причинах прекращения развития этих линеек компиляторов).
А преподавателя смени - фанатики никогда не были специалистами в программировании


 
начинающий ©   (2004-09-05 19:19) [17]

Игорь Шевченко ©   (05.09.04 18:05) [15]
...ламер не сможет научить...

А какие внешние признаки ламера? Мне кажется, что я еще не вышел ростом, чтобы человека годящегося мне в отцы называть ламером, и бросать в него упрёки в некомпетентности. А может лучше него С++ знает только Страустрап?


 
Nous Mellon ©   (2004-09-05 19:34) [18]

В пятницу тоже такая же ситуация была у меня. Познакомился со своим преподом по программированию. Эх он мне начал втирать :) Столько лапши на ушах я давненько не чувствовал. Сначала он мне сказал что С++ лучший язык. Я молча согласился. С++ и правда хорош чего тут спорить, но я и не собирался с ним спорить. А он расказал мне что Паскаль уже давно умер, потому что был под ДоС. На мое напонимание про Делфи, он ответил, что да, мол, есть такой зверек, но узкий и неказистый и испоьзуюется только малоквалифицированными программистами. Я и тут спорить не стал, а нафига?
Потом он еще рассаказал что Ассемблер никто уже давно не использует и не знает, что NET ничего нового не принесет, что Интел лучшие процессоры и их ГиперТрединг дает на одной машине преимущество в скорости в 50% перед тем же процессором но с ваыключенным HT. Потом пожаловался что у него слабенький проц P4 2.8. На этом я подакав спешно попрощался. Другого и не ждал.


 
Palladin ©   (2004-09-05 19:35) [19]


> А может лучше него С++ знает только Страустрап?

Еслиб это было так, врядли он сделал подобное заявление.


 
Юрий Зотов ©   (2004-09-05 20:36) [20]

> начинающий ©   (05.09.04 17:04)  

> Он утверждает, что у Делфи нет будущего;

Такое говорят с момента появления Delphi. А она все живет, и живет. Видимо, она просто не знает, что у нее нет будущего.

> компиллятор генерит намного более медленный код,
> чем Визуал С++;

Для меня довольно странно, что утверждения подобного рода не сопровождаются конкретными цифрами. Уж кто-то, а преподаватель должен был бы сказать примерно так: "в задачах такого-то класса код медленнее примерно на X процентов, для такого-то класса - на Y процентов, для такого-то класса скорость примерно одинакова, а в среднем код медленнее на Z процентов. Оценки проводились на компьютере таком-то, сравнивались компиляторы таких-то версий, методика сравнения была такой-то."

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

> Дельфи не годится для больших проэктов (ну, скажем, габариты с
> MS Office).

Опять же - хотелось бы знать, почему не годится? Иначе снова получаем голословное (пустословное?) утверждение человека, не знающего предмета, о котором он берется судить.

Сама Delphi, как известно, написана на Delphi - это большой проект? Наш EXE-шник весит более 10 метров (а в исходниках насчитывает порядка миллиона строк) - это большой проект?

> Хотя достойно обстоять свою точку зрения он не смог, но,
> возможно, от этого проблема не исчезла. А что Вы думаете по
> этому поводу?

По этому поводу я думаю, что не стоит воспринимать всерьез слова человека, который позволяет себе иметь (тем более, высказывать) точку зрения, при этом не располагая реальными подтверждениями этой точки.

-------------------------------------------------------

P.S.
Чтобы сравнивать компиляторы двух языков, надо, как минимум:
- в совершенстве владеть обоими языками;
- иметь хотя бы представление о том, как устроен компилятор;
- на базе двух предыдущих пунктов разработать методику проведения тестов (для разных задач, языковых конструкций и пр.) - такую, которая была бы объективна и сравнила бы именно компияторы, а не что-то там еще;
- провести сами тесты;
- удостовериться в том, что их результам можно верить.

Иначе получаем примерно вот что:
"Слышал звон, да не знает, где он".
(c) Пословица.


 
Nous Mellon ©   (2004-09-05 20:47) [21]


>
> Такое говорят с момента появления Delphi. А она все живет,
> и живет. Видимо, она просто не знает, что у нее нет будущего.

Давайте не будем ей об этом рассказывать! Пусть остается в неведении и далее :) А то поверит еще во всякую чушь :)


 
KSergey ©   (2004-09-06 08:27) [22]

> [16] DrPass ©   (05.09.04 18:46)
> Ты будешь смеяться, но Windows была изначально написана
> на Паскале.

Мне очень нравится живучесть этой сказки ;))
Уже давно прошли времена упоминания слова pascal в шаблонах функций WinAPI - а сказка упорно живет ;)


 
31512 ©   (2004-09-06 08:54) [23]

Бедные, бедные, несчастные студенты.


 
Мюмзик в мове   (2004-09-06 08:55) [24]

начинающий ©
у Visual С++ есть будущее, пока есть будущее у Windows


 
Rule ©   (2004-09-06 09:04) [25]

Прикольная ветка, которая дала мне толчок вспомнить С, вчастности выучить вижуал С++, хотя я думаю это будет легче чем учить с нуля, так как я знаю синтаксис этого языка и углубленно щас изучаю принципы ООП, по учебнику Буча (кстати учебник таки ориентирован на С++) ...
Спасибо всем, а именно
Юрий Зотов ©   (05.09.04 20:36) [20]
Ермак ©   (05.09.04 17:49) [13]
Хороший программист должен знать хотя бы два языка. Дельфи и Си++ - идеальное сочетание.


Эти посты меня побудили на глубокое изучение С++


 
31512 ©   (2004-09-06 09:32) [26]

Всё это мне напомнило одну забавную ситуацию...
Мне надо было затянуть подшипник один на коробке передач. Я отогнал машину в сервис. Там надо было открутить задний кардан. Мастер берёт специальный гайковёрт (типа дрели какой-то) ставит насадку, откручивает 4 болта... Тратит на это, ну, скажем, 2 минуты (я не засекал). Производит все необходимые действия, закручивает всё на место. Я поездил немного, через некоторое время подшипник опять загремел. Я решил всё сделать сам. Сделал тоже самое, но обычными рожковыми ключами. Пыхтел, пыхтел... Убил на это минут 20. Опять поездил. Подшипник снова гремит. Я поехал на дачу, в деревню. А там есть у меня знакомый мужичок, Володя зовут его. Я прошу ему помочь. Говорю, мол, подшипник гремит, покажи как сделать по человечески. Он (under fly уже с утра) берёт те же рожковые ключи, что и у меня... Вжик, вжик, вжик... Тратит те же, условно,  2 минуты. Показывает, обьясняет, закручивает. Подшипник не гремит до сих пор...
----------------------------------------------------------------
Это я к тому, что от мастерства всё зависит. Инструменты разные, люди разные. Задача одна, а результат может тоже разным может оказаться.
----------------------------------------------------------------
По поводу проектов, написанных на Delphi...
Если я не ошибаюсь это The Bat, Nero... Мало ли их.

С кривыми руками даже на супер-пупер компиляторе делать нечего.
Таково моё скромное мнение...


 
1g0r ©   (2004-09-06 10:54) [27]

Может не совсем в тему, но думаю будет интересен сравнительный анализ компиляторов С++ (Microsoft Visual C++ 6.0, Intel C++ Compiler 4.5, Borland Builder 6.0, MinGW)

ИМХО неплохая такая разборка :)
http://www.cpp.com.ua/?in=kpp_show_article&kpp_art_ID=202&SearchString=компилятор&by_id=3


 
Суслик ©   (2004-09-06 11:10) [28]

У меня был приятель. Мы вместе учились в школе. Во времена появления первых персоналов - xt (персоналки были и раньше, но мы тогда были в начальной школе) он серьезно занимался программирование. Она деж ВО не получил из-за своего пристрастия именно к программированию - паскаль, си, си++, асм и пр. Занимал призовые места на конкурсах "демонстрашка в 16 байт", "демонстрашка в 128" и т.д. Т.е. серьезно знает асм.

Сейчас он полностью ушел от MS - использует только юникс, линукс и пр. Он там является специалистом по безопасности - фактически консультантом. Ездит по всяким международным конференциям - свободный софт, безопасность и т.д.

По его словам и MS c++ и delphi по оптимальности генеренного кода сильно проигрывают c++ под unix (названия производителя не помню). По его словам даже он практически не может ничего ускорить в полученном коде.

Зачем я об этом. Ясный перец, что я в этом не разбираюсь. Просто хотелось привести слова уважаемого мной человека, которые говорят о бесмысленности споров MS C++ vs Delphi.


 
Rem   (2004-09-06 11:11) [29]

[10] >>огромное преимущество С++ - возможности проектирования ООП

А Object Pascal что, инвалид в этом?


 
BorisMor ©   (2004-09-06 11:12) [30]

Пусть препод так не радуется. Скоро(годика 3/4) все перейдут на NET и  всем будет глубоко фиолетово на чем написан твой проект. На VB, VC++, С# или Delphi. Будет работать с более менее одинаковой скоростью + к этому в одном проекте можно будет использовать разные языки. В общем ждем эры коммунизма от Microsoft :)


 
Суслик ©   (2004-09-06 11:16) [31]


> А Object Pascal что, инвалид в этом?

Сейчас Шевченко меня ногами запинает (Юрий Зотов тоже думаю присоединиться), но в java или в C++ реализация ООП мне нравится больше (а чем дальше, тем еще больше :-р))).

Я считаю, что в ООП в указанных языках выше защита от дурака. Т.е. автор классов может лучше управлять возможным использованием классов: если автор не хочет, чтобы класс исползовали определенным образом, то он может проинструктировать компилятор этот момент проконтролировать.

В ООП в дельфи, тоже есть свои преимущества. Но для меня (лично) они не перевешивают недостатки.


 
0d08h   (2004-09-06 11:19) [32]

труба полная С++, Паскаль главное чтоб ты хорошо учился.

Язык программирования только инструмент.


 
wicked ©   (2004-09-06 11:21) [33]


> Может не совсем в тему, но думаю будет интересен сравнительный
> анализ компиляторов С++ (Microsoft Visual C++ 6.0, Intel
> C++ Compiler 4.5, Borland Builder 6.0, MinGW)
>
> ИМХО неплохая такая разборка :)
> http://www.cpp.com.ua/?in=kpp_show_article&kpp_art_ID=202&SearchString=компилятор&by_id=3

очень предвзятая статья с очень спорными утверждениями и выводами....


> По его словам и MS c++ и delphi по оптимальности генеренного
> кода сильно проигрывают c++ под unix (названия производителя
> не помню). По его словам даже он практически не может ничего
> ускорить в полученном коде.

свежо предание... :-/
единственный компилятор, который (опять таки, "в статье прочитал") имеет преимущество на генерации кода с плавающей точкой, так это Intel c++.... про SSE, XMM и прочая умолчим, поскольку это уже различия в самой линейке x86 от разных производителей...


 
KSergey ©   (2004-09-06 11:21) [34]

> [31] Суслик ©   (06.09.04 11:16)

Возможно, это от недопонимания.
Выскажу такую вещь: в С++ единица инкапсуляции - класс, в Delphi - модуль.
А потому сравнивать надо сравнимые вещи.


 
Суслик ©   (2004-09-06 11:27) [35]


> KSergey ©   (06.09.04 11:21) [34]

Ну вот ты еще после ИШ и ЮЗ на мое недопонимание будешь указывать.

Конекретных примеров, чего нельзя в рамках указанного мной выше утверждения нешльзя сделать на Дельфи, а можно на СиПП я приводить не буду. Т.к. обязательно услышу, а зачем (как было раньше). Однако ж утверждение про большую гибкость ООП в сях и джаве не вчера родилось и не спроста: стимулом явилось изучшение ряда литературы, посвященной ООП. Чем больше думаю и пробую, тем больше убеждаюсь в своей субъективной правоте.


 
PVOzerski ©   (2004-09-06 11:30) [36]

IMHO, большинство подобных "критиков" Delphi сами его не юзали. Обидно, что иногда они, кажется, не ламеры. Например, на "Королевстве" один такой, предварительно продемонстрировав наличие определенных знаний в области программирования, вдруг заявил, что Delphi - исключительно средство интеграции компонентов, которые пишутся на Си...


 
Dok_3D ©   (2004-09-06 11:33) [37]

Когда вас можно будет назвать профессиональным программистом?
Тогда, когда вы перестанете участвовать в дискуссиях, посвященных сравнению языков программирования, платформ, операционных систем.

Это я сам только что придумал :)


 
Григорьев Антон ©   (2004-09-06 11:34) [38]

Единственное, чего лично мне не хватает в ООП-модели Delphi - это возможности создания объектов в стеке, чтобы они автоматически освобождались, когда переменная выходит из области видимости. Впрочем, от этого отказываются не только в Delphi, но и в других языках (если не ошибаюсь, в той же Java). Почему - я так и не понял.


 
jack128 ©   (2004-09-06 11:38) [39]

а вот что думает сам Страструп о С++ http://hacknet.spb.ru/html/review/001/03_bjstrous.html :-))


 
Суслик ©   (2004-09-06 11:38) [40]


> Григорьев Антон ©   (06.09.04 11:34) [38]

мне не хватает:
1) друзей классов
2) private конструторов и деструкторов (т.е. никто не может создать и удалить объект - только статический собственный метод).
3) статических переменных.



Страницы: 1 2 3 4 5 6 7 8 9 
10 11 12 13 14 15 вся ветка

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

Наверх




Память: 0.6 MB
Время: 0.03 c
14-1095052068
DelphiN!
2004-09-13 09:07
2004.10.03
Путь к диалогу выполнить Windows-a


4-1093280647
v3l0m
2004-08-23 21:04
2004.10.03
Help me please! Перевидите чайнику на C++.


4-1093455004
Dimka-gl
2004-08-25 21:30
2004.10.03
темы WinXP


1-1095609224
Елис
2004-09-19 19:53
2004.10.03
StrinGrid


1-1095493907
lord vader
2004-09-18 11:51
2004.10.03
Вернуть ссылку на компоненту по её описанию в STRING-е