|
|
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
MasterZiv ...С++ - это эдакий танк-вездеход с мощной силовой установкой, Паскаль -- тоже с довольно мощным движком, но -- автобус. Больше 80 не едет. порадовало сравнение! какая аналогия! это ж нарочно не придумаешь!!! танк-вездеход который жрет салярку тоннами и везет, кроме своей массы, экипаж и немного боеприпасов. имеет весьма ограниченный ресурс по подвижности. гораздо дороже по производству и сопровождению. а в условиях соверменного боя (для чего и создавался) время жизни исчисляется минутами. автобус - трудяга... он на своих 80ти ездит круглый год, практически 24/7. и когда его списывают в германии, он продолжает трудицца в какой нить Самаре или Чебоксарах. не раз сталкивался с лихими "танкистами" уверяющими, что вмиг не только доедут, но и довезут. но в походе толи гусеницы были выбраны не те, толи дорога не разведана - танки ломались, танкисты разбегались. а воз везли автобусами. по теме : многое зависит от квалификации тех, кто за рулем. при переходе на новое приходится затратить время на освоение нового средства на том же уровне, что знаешь старое. и хорошо, когда это время есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 15:39:10 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
кое-ктоАргументы с++-ников убивают... Шаблоны, макросы - они что есть что их нету в текущей реализации; посмотрите на дженерики и макры с лиспе - и поймете, что с++ в этом смысле в том же самом месте где и делфи, ничуть не выше, ибо вся эта штукенция совершенно неюзабельна, только в случае с с++ заставляет порождать таких монстров-уродцев как MFC и т.п., в делфе же этой возможности нет, потому и кошмаров таких не возникает. Адресная арифметика, множественное наследование, абстрактные фабрики вместо встроенных объектов типов... Да какие же это плюсы, товарищи? Это источники ошибок, причины кровоточения геморроидальных шишечек и палки в колесах. Мощь-мощь %) может, ассемблер еще круче чем с++, или даже бинарные коды - уж на них-то можно написать вааааааще всё что угодно?)) Короче... вообще-то я против с++ ничего не имею, но пост какой-то не такой получился, это все виноваты защитнички с-п-п))). А что хотел сказать: чем сложнее инструмент, тем сильнее он облегчает решение задач, но тем уже область его применения. В этом смысле делфи - позволяет проще решать узкий класс задач, а с++ - позволяет сложно решать почти любую задачу. Отсюда и ответ на вопрос топикстартера %) Ну, парень ты даешь - лисп то тут при чем? Чем сложнее инструмент... Женская логика отдыхает. Это следствие, друг мой. Сложнее от гибкости и широты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 15:44:11 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
можно даже самим это не делать . уже сравнивали тут вот Только там не MSVC 2003 vs Delphi , а g++ vs Free pascal . Второй отстал но совсем на немного .... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 15:44:13 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
AkhНу, парень ты даешь - лисп то тут при чем? Я что-то не по-русски написал? При том, что ни шаблоны ни макросы в с++ не являются его плюсами. AkhЧем сложнее инструмент... Женская логика отдыхает. Это следствие, друг мой. Сложнее от гибкости и широты. Ну-ну. Сравните железную палку и микроскоп. Логик, ё. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 15:46:40 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
quaidguest568В своё время переходил с Delphi6 на С++Builder6 Потерял: 1. Удобную работу с динамическими массивами, Вы что-то слышали про STL? Вам знакомы классы типа map, vector, deque... ? P.S. Покажите пример кода Вашей работы с динамическим массивом в Delphi, и объясните конкретно, в чем, по-Вашему, "потерялось удобство" при переходе на Билдер. Имелось ввиду следующее: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. Для 99% случаев этого достаточно! По моему удобнее некуда, и не нужно ничего городить ни с STL, ни с шаблонами. Отладчик прекрасно всё понимает - в любой момент времени можно посмотреть и изменить любое значение массивов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 15:48:55 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
кое-ктоAkhНу, парень ты даешь - лисп то тут при чем? Я что-то не по-русски написал? При том, что ни шаблоны ни макросы в с++ не являются его плюсами. Глупости какие. Даже, вроде в этом топике пытались шаблоны в Делфе реализовать. Еще раз повторю - может в лиспе оно и лучше, может нет, но он здесь ни при чем. кое-ктоAkhЧем сложнее инструмент... Женская логика отдыхает. Это следствие, друг мой. Сложнее от гибкости и широты. Ну-ну. Сравните железную палку и микроскоп. Логик, ё. Полный бред. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 15:50:49 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)А ты сравни как нибудь производительность того что выдает Delphi с оптимизированным C++ По моему, в сравнении производительности С++/Delphi/Java был какой-то парадокс. Несколько мес. назад были холиварчеги, где можно было увидеть Java (ко всеобщему ужасу) выходит победителем. Не то, что-бы это не вязалось с общими концепциями программирования под платформы. Но порождало много сторонних (не алгоритмических вопросов). И поэтому, к теме сравнения производительности надо относится пристально, внимательно, и с большим подозрением. И не верить ни одному слову. Зачастую глубокий провал в перформансе связан то не с той опций компилляции, то с технологиями lazy-copy, то с GC, а то еще с бог-весть какой реализацией строковых типов данных, а то и с багом оптимизатора. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 15:51:08 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
можно порядки оценить .. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 15:53:26 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
AkhГлупости какие. Даже, вроде в этом топике пытались шаблоны в Делфе реализовать. Еще раз повторю - может в лиспе оно и лучше, может нет, но он здесь ни при чем. Повторите хоть сто раз %) он здесь лишь для большего убеждения в том простом факте, что отсутствие в делфи того, что в спп называется "макросами" и "шаблонами" только избавило делфи от растущего в геометрической прогрессии кучи монструозного наследства. Все самое "полезное", что дают программисту шаблоны просто встроено в делфи, не потому что делфи крут, а потому что слишком мало эти шаблоны дают "полезного")) AkhПолный бред. Ваша аргументация на высоте!))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 15:56:09 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
guest568Имелось ввиду следующее: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. Для 99% случаев этого достаточно! По моему удобнее некуда, и не нужно ничего городить ни с STL, ни с шаблонами. Отладчик прекрасно всё понимает - в любой момент времени можно посмотреть и изменить любое значение массивов. А Вы на STL можете написать (или представить) такой код? Будет один в один :) Так что ничего городить не придется. Разве что будет более объектно-ориентированно - не какую-то внешнюю функцию зовем, а явно просим её у контейнера (a1.resize()), ну да ладно. И цифирка 99% откуда? Обоснуйте :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 15:56:24 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Отладчик прекрасно всё понимает. В любой момент времени можно посмотреть и изменить любое значение массивов. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 15:56:35 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
iCapможно даже самим это не делать . уже сравнивали тут вот Только там не MSVC 2003 vs Delphi , а g++ vs Free pascal . Второй отстал но совсем на немного .... сам с собою поговорю ... Там по ссыкле кстати мухлюют . Примеры на C++ с OpenMP собраны. И процессоры многоядерные . А на паскале примеры не распараллелены.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 16:02:46 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
кое-кто, Любой язык даёт программисту только возможности. Как их использовать - зависит от программиста. Если он пихает шаблоны всюду, где можно и где нельзя, если он не умеет работать с указателями, если он не знает, когда надо использовать стековые объекты, а когда динамические, когда передавать объекты по ссылке, когда по значению, когда по указателю, если он не умеет использовать множественное наследование, то его надо либо учить, либо пересаживать на Delphi/Java/C#, где лишнего сделать ему просто не позволено - память почистит GC (не в Delphi), объекты будут передваться по ссылке, вместо "опасного" множественного наследования - реализация интерфейсов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 16:06:14 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
кое-ктоAkhГлупости какие. Даже, вроде в этом топике пытались шаблоны в Делфе реализовать. Еще раз повторю - может в лиспе оно и лучше, может нет, но он здесь ни при чем. Повторите хоть сто раз %) он здесь лишь для большего убеждения в том простом факте, что отсутствие в делфи того, что в спп называется "макросами" и "шаблонами" только избавило делфи от растущего в геометрической прогрессии кучи монструозного наследства. Все самое "полезное", что дают программисту шаблоны просто встроено в делфи, не потому что делфи крут, а потому что слишком мало эти шаблоны дают "полезного")) Так можно все что угодно ненужным обозвать. Не пользуешься С++ шаблонами - скорее всего ты не умеешь. Еще раз про логику - если что-то есть в языке, то это либо его плюс, либо ничего - в зависимости от полезности. На счет сложности языка не спорю и никогда не спорил, но она не является основным критерием. Ты не будешь ездить на самокате, т.к. он проще авто. кое-ктоAkhПолный бред. Ваша аргументация на высоте!))) Что ты хотел доказать приводя связь между железной палкой и гибкостью? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 16:08:25 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
Я сравнивал скорость аналогичных программ на MS VC++ 6.0 и Delphi 7. Delphi 7 тормознее, чем MS VC 6.0 от 1.5 до 3х раз на различных программах. При этом Intel C++ Compiler быстрее MS VC++ в 1.5-3 раза. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 16:08:37 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
AkhТак можно все что угодно ненужным обозвать. Не пользуешься С++ шаблонами - скорее всего ты не умеешь. Приведите пример задачи, в решении которой шаблоны оказывают ощутимую помощь. Абстрактные структуры (в частности STL) и умные указатели не предлагать - примитивно, встроено в большинство языков. AkhЕще раз про логику - если что-то есть в языке, то это либо его плюс, либо ничего - в зависимости от полезности. Нет, "что-то" может служить и гадкую службу. Вот не было бы макросов в спп - не было бы этого уродливого DECLARE_MESSAGE_MAP и прочих страстей-мордастей. Скорее всего, их заменила бы гораздо более стройная библиотека классов. AkhТы не будешь ездить на самокате, т.к. он проще авто. Там где нет бензина - буду. кое-ктоЧто ты хотел доказать приводя связь между железной палкой и гибкостью? Очевидно, обратную зависимость между сложностью решения задачи при помощи некоторого инструмента и широтой класса задач, которые этот инструмент позволяет решать. Самокат с автомобилем тоже подходят, хотя и похуже %) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 16:18:36 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
кое-ктоОчевидно, обратную зависимость между простотой решения задачи при помощи некоторого инструмента и широтой класса задач, которые этот инструмент позволяет решать. Самокат с автомобилем тоже подходят, хотя и похуже %) self-fix ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 16:21:20 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
iCapможно даже самим это не делать . уже сравнивали тут вот Только там не MSVC 2003 vs Delphi , а g++ vs Free pascal . Второй отстал но совсем на немного .... -O ставилось в gcc ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 16:21:34 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan), Там вроде под примерам есть и описание как собирали .. MAKE: /usr/bin/g++ -c -pipe -O3 -fomit-frame-pointer -march=native -fopenmp binarytrees.gpp-6.c++ -o binarytrees.gpp-6.c++.o && \ /usr/bin/g++ binarytrees.gpp-6.c++.o -o binarytrees.gpp-6.gpp_run -fopenmp rm binarytrees.gpp-6.c++ COMMAND LINE: ./binarytrees.gpp-6.gpp_run 20 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 16:23:19 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
Dihotomкое-кто, Любой язык даёт программисту только возможности. Как их использовать - зависит от программиста. Если он пихает шаблоны всюду, где можно и где нельзя, если он не умеет работать с указателями, если он не знает, когда надо использовать стековые объекты, а когда динамические, когда передавать объекты по ссылке, когда по значению, когда по указателю, если он не умеет использовать множественное наследование, то его надо либо учить, либо пересаживать на Delphi/Java/C#, где лишнего сделать ему просто не позволено - память почистит GC (не в Delphi), объекты будут передваться по ссылке, вместо "опасного" множественного наследования - реализация интерфейсов. Всё верно, платой за возможности являются сложности. Об этом я и написал в самом первом своем посте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 16:24:46 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
кое-ктоAkhТак можно все что угодно ненужным обозвать. Не пользуешься С++ шаблонами - скорее всего ты не умеешь. Приведите пример задачи, в решении которой шаблоны оказывают ощутимую помощь. Абстрактные структуры (в частности STL) и умные указатели не предлагать - примитивно, встроено в большинство языков. Ну например BGL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 16:25:12 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
maytonGluk (Kazan)А ты сравни как нибудь производительность того что выдает Delphi с оптимизированным C++ По моему, в сравнении производительности С++/Delphi/Java был какой-то парадокс. Несколько мес. назад были холиварчеги, где можно было увидеть Java (ко всеобщему ужасу) выходит победителем. Не то, что-бы это не вязалось с общими концепциями программирования под платформы. Но порождало много сторонних (не алгоритмических вопросов). И поэтому, к теме сравнения производительности надо относится пристально, внимательно, и с большим подозрением. И не верить ни одному слову. Зачастую глубокий провал в перформансе связан то не с той опций компилляции, то с технологиями lazy-copy, то с GC, а то еще с бог-весть какой реализацией строковых типов данных, а то и с багом оптимизатора. Тут все не просто на самом деле :) У нас в конторе тоже был локальный холиварчег на эту тему. Тянулось довольно долго, но после того как учли, что Java строит хэш для объектов заранее, цыфры встали на свои места и парадокс исчез ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 16:27:04 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
iCapможно порядки оценить .. Лично я последние 3 недели сравниваю производительность .Net vs Win32 vs FreeBSD Не в порядках там дело. У первых двух (угадайте у кого из них сильнее) просто гораздо больше мотыляет время отклика. А порядки там вполне сопоставимые (кроме отдельных клинических случаев) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 16:29:08 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
blindedкое-ктоAkhТак можно все что угодно ненужным обозвать. Не пользуешься С++ шаблонами - скорее всего ты не умеешь. Приведите пример задачи, в решении которой шаблоны оказывают ощутимую помощь. Абстрактные структуры (в частности STL) и умные указатели не предлагать - примитивно, встроено в большинство языков. Ну например BGL Векторы, списки, деревья, графы - это абстрактные структуры, к вашему сведению. Интереса не представляют, в делфи реализуются тем же двойным динамическим массивом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 16:31:04 |
|
||
|
Delphi vs C++ или "Что я теряю, преходя с Delphi на C++ при разработке системного ПО?"
|
|||
|---|---|---|---|
|
#18+
кое-ктоDihotomкое-кто, Любой язык даёт программисту только возможности. Как их использовать - зависит от программиста. Если он пихает шаблоны всюду, где можно и где нельзя, если он не умеет работать с указателями, если он не знает, когда надо использовать стековые объекты, а когда динамические, когда передавать объекты по ссылке, когда по значению, когда по указателю, если он не умеет использовать множественное наследование, то его надо либо учить, либо пересаживать на Delphi/Java/C#, где лишнего сделать ему просто не позволено - память почистит GC (не в Delphi), объекты будут передваться по ссылке, вместо "опасного" множественного наследования - реализация интерфейсов. Всё верно, платой за возможности являются сложности. Об этом я и написал в самом первом своем посте. Тогда почему Вы говорите, что некоторые (или многие :)) дополнительные возможности - это минус языка? Вот сложность языка, являющуюся следствием этих возможностей, можно назвать минусом. Но сами возможности - большой плюс при грамотном использовании. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2008, 16:32:10 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=35688486&tid=1344739]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
159ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 196ms |
| total: | 423ms |

| 0 / 0 |
