Здравствуйте, Tihomir.I, Вы писали:
TI>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>В чем существенные недостатки у Delphi, как у среды разработки?
Дело в том, что "по жизни" Delphi был продуктом с хреновым QA и очень "прогрессивным" маркетинговым отделом. В результате, в продукт на каждый релиз вваливались новые фичи, покупались целые компании для этого, но вскоре выяснялось, что фича недоделаная, продукт от сторонней компании тоже недоделаный, а ещё при интеграции с ними поломали кусок старого функционала — но это ж фигня, всё равно мало кто пользовался, так ведь? Главное пресс-релиз победный накатать. При этом реально необходимые для приведения своего продукта в современный вид фичи откладывались, снова откладывались, и снова...
— Юникодные контролы? Да кому это надо! Мы ж не китайцы.
— Компилер в 64 бита? Да пусть спасибо скажут, что не в Win3.1 пишут, хипстеры несчастные!
— Нормальная работа не из под админа? Да они там с жиру бесятся — настоящий программист всегда админ у себя!
— Безглючный дебагер? Да нормально всё, ну подвис пару раз — чё.
— Полноценная поддержка COM? Да кому эти прокси-стабы надо. И IDL у нас нормально генерится, почти 100% совместимо с Microsoft. Просто пользуйтесь нашим редактором для TLB, и ничем иным.
— VCL-компоненты? Инсталируйте в общую палитру IDE. Ну да, даже если этот компонент в одном проекте лишь надо. Ширины экрана хватит всем!
— Поддержка source control? Да, конечно, у нас есть плагины от партнёров. TFS — не, не слышал. Берите проверенное временем: SourceSafe, CVS, SVN...
— Бинарный DFM? У нас есть поддержка текстового DFM-формата, если файл не слишком большой. И незачем вам работать вдвоём над одним DataModule, всё равно там кроме хекс-дампов ничего нет! И это, какое Вы там слово сказали... Бранч? Что это? Зачем с ним мёржиться?
И вот этой фигни постоянно накапливающийся список, никто не решает "проблемы 20% пользователей". И об этом не задумываешься, пока сам не попадаешь в эти 20%. Но если попал — приходит понимание что "ты попал", а остальные 80% продолжают петь дифирамбы, пока.
Недавний финальный кумулятивный апофеоз всех этих проблем — Фреймворк FireMonkey, когда даже собственный Embarcadero-саппорт (за который тоже заплачено нефиговое бабло) днями и неделями изображает, что не может "воспроизвести проблему", несмотря на детальное пошаговое описание, и лишь по факту долгих боданий тебе сообщают "will be fixed in next major release" (читай — через полгода минимум). Приплыли.
P.S. Посмотрите на мой ник, если есть сомнения. Начинал с Delphi 1. Закончил в Delphi 2006. Безумно рад, что можно не пользоваться "этим" сейчас, но с удовольствием "тряхну стариной" если продукт приведут в production-ready состояние. Т.е. начнут решать проблемы 20% пользователей.
Здравствуйте, Tihomir.I, Вы писали:
TI>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>В чем существенные недостатки у Delphi, как у среды разработки?
В своё время меня миновал ужас MFC, но писать под винду хотелось. Стал юзать Дельфи 2.0; Всё было хорошо, базы данных лепились играючи (да вообще любые приложения делались на ура!), да и в целом Дельфи на 146% оправдывал слово "визуальный" — большинство вещей делалось мышкой и продуктивность была на высоте. Но со временем целая куча факторов увела меня от Дельфи, о чём я сейчас ничуть не жалею:
Из версии в версию не наблюдал никакого прогресса с существующими контролами — как была кнопка, так она, убогая, и кочует. Как было "никакое" поле ввода — так оно и приплыло аж в дельфу-7. Эта стагнация наводит уныние, ведь у контролов был целый ворох вещей, которые можно и нужно было улучшать! Но почему-то "шахматистам" из Борланда допиливание фич не казалось таким нужным/интересным. За что и поплатились.
Синтаксис. Увы, мне эти begin-end до кишок достали!! У меня и так в программе сотни функций и переменных, зачем мне ещё читать "мусор", обозначающий тривиальные вещи?? and, or, begin, end, for-to-do... мне не нужно читать листинги вслух, мне нужно краткое выражение алгоритма! А объявление всех переменных вначале? Нафик мне это нужно?? Это комп должен работать и собирать переменные, а я — ДУМАТЬ! Поэтому с первым же "си-подобным" C# вопрос "на чём писать" решился сиюсекундно.
Как уже отметили, Борланд покупал "овно" и совал в IDE, хотя это были очевидно сырые (но, видимо, дешёвые?) продукты. Почему-то никто не купил DevExpress'овский грид — король всех гридов! А помоечные Indy компоненты — пжалуйста, деньги про*рали. Никто даже не упомянул хотя бы переговоры купить TAdvStringGrid, зато QuickReport уверенно кочевал, хотя FastReport был круче его на голову. В общем, Буглэнд-маркетоиды, очевидно даже не спрашивая программистов, напокупали всякого фуфла и этим поставили крест на себе.
С появлением ДотНЕТа ещё никто не знал, во что он выльется, но зато было очевидно, что Дельфи там — "чужой". И надо было опять какому-то *удаку вылезти с идеей "а давайте дружно прыгнем на .NET!" — ЗАЧЕМ?? VCL и так был прекрасен, именно на платформе Win32! Продолжи буглэнд допиливать свою среду, они ДАЖЕ СЕЙЧАС ничего не проиграли бы — всё так же люди пользуют XP/7/Win32/64 и хрен клали на мелкомягкие затеи! Это судьбоносное решение принял полный кретин, вбив очередной гвоздь в будущее Дельфы — все прекрасно понимали, что имея компоненты дотнета, VCL (в котором они стали профи) стал нафик не нужен (тем более портированный). Так нафик вообще нужен Дельфи, если не за его библиотеку??
VisualStudio. Мы все помним тот кусог овна, который она представляла в версии "6". Но извините, уже сидя в студии 2005 я понял, что микрософт ОПЕРЕДИЛА годами писанную Дельфу! Код писался буквально вылетая из-под пальцев, всякие интеллисенсы реально экономили время, ну и C# тоже начинал вставлять — простота и лаконичность языка сыграла катализатором. Библиотек тоже было навалом даже "искаропки", чего не скажешь о многострадальной Дельфе, которую без доп.компонент юзать невозможно.
Ну и чисто личный момент: чувствуя потенциал C# и дотнета, стал серьёзно изучать тему. Всё ещё работая дельфизоидом. Ну а как попалась компания, нанимающая шарповодов, вопрос о Дельфи вообще отпал — нет смысла возиться в стагнирующем болоте, да ещё руководимом какими-то лунатиками.
Понятно, что постфактум мы все умные, но решение об уходе с Дельфы я принял вовремя и объективно — все аргументы выше. Дельфи БЫЛА хорошей средой, но тупорылый маркетинг её убил.
Сейчас все проекты пишу на C#, даже "однострочники" и "однодневки". Ну и на Немерлю поглядываю
Здравствуйте, Tihomir.I, Вы писали:
TI>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>В чем существенные недостатки у Delphi, как у среды разработки?
Мое мнение, что Delphi начали готовить к похоронам еще в районе версии Delphi 3-4, вернее с принятой тогда стратегией развития и позиционирования продукта. Так думать может показаться странным: ведь это было уже 18-19 лет назад, что-то долго они загнивают Но для этого надо взглянуть на еще более ранние времена, на турбо-паскаль (и другие турбо-языки).
Фишкой компиляторов паскаль от борланд с самого начала было сочетание удобной лицензии и дешевизны (странно это сейчас слышать про дельфи, да?), удобства разработки и скорости разработки. И что очень важно: низкого порога вхождения. Паскаль был простым языком, научиться писать код в среде TP можно было едва ли не идиоту. И не самый плохой код на выходе (хотя и не лучший, вообще говоря.) В результате в 80-е — 90-е годы вообще был момент, когда TP был возможно самым оптимальным выбором для очень широкого круга задач программирования для PC. Совершенно не случайно его так любят до сих пор в школах, несмотря на жуткое устаревание в своей нише ничего лучшего фактически не было. MSC (Microsoft C compiler) был куда унылее и менее дружелюбнее к разработчику, хотя и более серьезной, основательной штукой.
Наконец 1994-й год. Borland выпускает бомбу: Delphi 1 — среду для быстрого и удобного прототипирования и разработки для Windows. 16-битную, но и в 95-ой винде все нормально работало. И снова дешевый, быстрый, удобный продукт. По сравнению с унылым Visual Basic-ом, который к тому же еще и не в нативный код компилировал, требуя таскать за собой vbrun*.dll — ки.
После первой бомбы последовала вторая — Delphi 2 уже 32-битная для Win95 и NT. Фактически ничего лучшего тогда для создания программ под винду, особенно стартапам и шареварщикам, да и крупным фирмам, не было. Конечно, MFC и Visual C++ были самыми концептуально правильными, так сказать, но до чего же унылее той же Delphi.
Delphi 1 и 2 вызвали появление просто мегатонн различных сторонних компонентов, примеров кода и т.д.
Версия Delphi 3 и 4 на моей памяти получились уже слабыми. Не содержали ничего особо нового, были глючными (особенно 4-ая, да и 3-я тоже). К тому же Borland зачем-то сделала ребрендинг на Inprise. Одновременно с решением, что они теперь мелочами не занимаются, они ого-го, они ЭНТЕРПРАЙЗ и гребут деньги бульдозерами, окучивая жирные корпоративные контракты на всякого рода автоматизации и интеграции.
Примерно с этого момента и пошла хрень какая-то. Впрочем, версии Delphi 6 и 7 были неплохими, фактически Delphi 7 — это до сих пор можно сказать вершина эволюции Delphi как средства написания нативных программ для 32-битных виндов до XP включительно.
V>А в Visual Studio как и в Windows хоть тресни, нет менеджеров пакетов. Максимум какие-нибудь массовые установщики софта, которые программисту не сдались. Майкрософт попросит за пользование всем этим десятки и сотни тысяч рублей и ладно бы. Но представьте, вам с одной стороны предлагают суперкар бесплатно, а с другой переломать ноги и выдать костыли за деньги.
Здравствуйте, Klikujiskaaan, Вы писали:
K>Здравствуйте, velkin, Вы писали:
K>У линукса действительно есть отличный момент, он оттягивает на себя подобных шериданов.
По опыту работы с линуксами могу сказать так:
2005 года выпуска:
Работают, но с windows xp им не тягаться. Менеджер пакетов, конечно, хорош, но дополнительное оборудование работает плохо. А это значит как десктоп плохо пригодны.
2010 года выпуска:
Оборудование стало работать гораздо лучше, но ещё не фонтан. Впрочем они уже не хуже windows, а новые её версии не радуют.
2015 год выпуска:
Удивительно, но теперь оборудование не работает в windows (XP, 7, 8.1) и прекрасно работает в linux. Причём даже то, которое раньше в linux не работало. Linux сразу ловит из коробки как то, что было выпущено 15 лет назад, так и то, что в выпущено в прошлом году.
И вот парадокс, теперь windows это удел гиков, которые любят эксперименты с оборудованием, а linux для домохозяек, которые не способны сделать больше пары кликов в гуишном меню.
Тоже самое касается программирования. Я могу из сорцов собрать библиотеки и программы со всеми зависимостями как в windows, так и в linux. Но в linux есть полный список и кнопка "установить", более того, после можно сразу использовать библиотеки в своих проектах вообще ничего не настраивая. Тоже самое касается и программ, и серверов и всего остального.
Вот и вопрос, кто после этого заумный гик, а кто домохозяйка. У меня параллельно так же установлен windows, если надо запускаю его через Grub, то есть просто выбрав в меню при включении компьютера. Но для программирования он плохо пригоден.
Более того, в Windows нет ничего игрового. Можно точно так же обсудить и эту тему заодно, DirectX vs OpenGL. Реальность же такова, что производители оборудования не дадут майкрософт взять себя за яйца, потому их реализация OpenGL работает нормально. А вообще вместо абстрактных рассуждений можно просто взять и запустить всё, что интересно.
Дни холиваров ушли в прошлое. На С++ потребуют знания или boost на одной работе, или Qt на другой. Если нужны деньги можно вучить Java, аутсорс на нём процветает. Delphi давно устарело, а С# это майкрософт. А майкрософт это война форматов, игра в несовместимость. Не верю, что такая корпорация умрёт как ей предсказывают, но те кто с ней связывался плохо кончили и это факт (программистам на заметку).
Здравствуйте, Tihomir.I, Вы писали:
TI>Да, сумма значительная. TI>Просто я не знаю, сколько стоят лицензии на среду разработки Java, С#, С++ ? Чтоб сравнить по деньгам. TI>А какие еще существенные факторы? М.б. сами технологии, сложность разработки, поддержки ...?
Если охота покупать средства разработки, то можно это делать и для указанных языков. А можно поставить Linux, BSD и программировать на том же C++ бесплатно. Казалось бы экономия на операционке, не лучше ли использовать Visual Studio. Нет, если нужны тысячи библиотек, в том же Debian 40 тысяч пакетов, которые можно ставить как скомпилированными для различных архитектур, так и в виде исходников. На худой конец можно в линуксе компилировать и создавать установщики своих программ для того же Windows.
А в Visual Studio как и в Windows хоть тресни, нет менеджеров пакетов. Максимум какие-нибудь массовые установщики софта, которые программисту не сдались. Майкрософт попросит за пользование всем этим десятки и сотни тысяч рублей и ладно бы. Но представьте, вам с одной стороны предлагают суперкар бесплатно, а с другой переломать ноги и выдать костыли за деньги.
Собственно говоря Delphi предлагает тоже самое, войну библиотек он продул, сама система морально и технически устарела. На Java люди программируют потому, что есть множество проектов на ней написанных, которые нужно развивать и поддерживать. C# живёт потому, что есть поддержка майкрософта, да и в принципе он был бы не так уж и плох, если бы не его ориентированность на Windows.
В наше время очень большое количество высококлассных кроссплатформенных библиотек, так зачем нужен Delphi. Вспоминать Lazarus в связи с этим нет смысла, можно тогда ещё Free Pascal вспомнить, для лабораторных студентов вполне подойдёт. Когда у вас появится цель что-либо сделать, волей не волей мигрируете на более подходящий вариант. С Delphi уходят потому, что это менее подходящий вариант.
Здравствуйте, Klikujiskaaan, Вы писали:
K>Здравствуйте, velkin, Вы писали:
V>>А в Visual Studio как и в Windows хоть тресни, нет менеджеров пакетов. Максимум какие-нибудь массовые установщики софта, которые программисту не сдались. Майкрософт попросит за пользование всем этим десятки и сотни тысяч рублей и ладно бы. Но представьте, вам с одной стороны предлагают суперкар бесплатно, а с другой переломать ноги и выдать костыли за деньги.
K>Открой для себя nuget и chocolatey.
А в них нет пакетов которые мне нужны. Давайте возьмём самые популярные библиотеки.
---------
Самое мощное в мире открытое геометрическое ядро:
opencascade
Search for opencascade returned 0 packages
Search for "opencascade" returned 1 package FreeCAD 0.14.3700
А мне не нужен FreeCAD, мне нужна библиотека с примерами. Да, она работает и в линуксе и в винде, но в винде приходится всё скачивать и устанавливать вручную.
---------
На мой взгляд самый продвинуты открытый физический движок:
bullet physics
Search for bullet returned 26 packages
Search for "bullet" returned 2 packages
Но в этих пакетах его нет. Поиск по "bullet physics" тоже ничего не даёт.
---------
Да и ладно, может обойдёмся обычной 3d графикой:
openscenegraph
Search for openscenegraph returned 0 packages
Search for "openscenegraph" returned 0 packages
Может osg? Нет пакетов, ну и давай до свидание.
---------
Дальше продолжать? У меня внушительный список библиотек. Вот и выходит — "Какая гадость это ваша заливная рыба".
Думаете я не знал, что для винды пытались сделать менеджеры пакетов, которые по сей день ни на что не способны? Собственно говоря в 1998 году была такая IDE Visual Studio 6.0. Из неё пользовался Visual C++ 6.0. Потом перешёл в Visual Studio 2003 и увлёкся дотнетом. Но на Visual Studio 2005 моё терпение кончилось. В 2008 открыл для себя линукс, и кстати, в том году он был очень хорош, сейчас же это просто шедевр по сравнению с виндой. Хотя разные линуксы дают разные эффекты, к примеру, с пакетами deb очень надёжен Debian, а вот Ubuntu ненадёжен, зато обновляется чаще.
Так вот за все эти годы наблюдал одну и ту же картину, как майкрософт гасила конкурентов. Причём на мои потребности как программиста им было абсолютно наплевать.
1. Я не хочу полностью переучиваться каждые пару лет. Причём ладно бы мне давали новые возможности, так нет, всё тоже самое, только называется иначе и по другому сгруппировано. Зачем вы сделали тоже самое по новому? Ах да, вас же поджимали конкуренты, надо было выпустить очередной продукт, а старый бросить, оттянуть на себя программистов, взбаламутить рынок и заработать ещё несколько миллиардов долларов.
2. Мне нужны современные возможности, самые продвинутые библиотеки, бесплатные для коммерческого использования, открытые, чтобы я мог посмотреть код и лучше их понять, кроссплатформенные, если возможно они должны иметь ускорение за счёт видеокарты и прочие фичи. >>"Открой для себя nuget и chocolatey"
Но там же нет того, что мне нужно. >>"Открой для себя nuget и chocolatey"
Ну и что теперь опять вручную всё ставить, почему нельзя сразу начать использовать библиотеку. >>"Открой для себя nuget и chocolatey"
Я же говорю, нет там того, что мне нужно. >>"Открой для себя nuget и chocolatey" >>"Открой для себя nuget и chocolatey" >>"Открой для себя nuget и chocolatey"
Здравствуйте, btn1, Вы писали:
B>Здравствуйте, Tihomir.I, Вы писали: B>... B>Сейчас все проекты пишу на C#, даже "однострочники" и "однодневки". Ну и на Немерлю поглядываю
Вполне объективно. Но к сожалению C# идёт на платформе .NET. А это значит:
1. Нет кроссплатформенности. Обсуждать тот же Mono и работу под Wine на мой взгляд несерьёзно.
2. Код в принципе (без обфускаторов) открыт с помощью декомпиляции, хотя и не бесплатно (ну это ж майкрософт).
.NET Reflector — платная утилита для Microsoft .NET, комбинирующая браузер классов, статический анализатор и декомпилятор, изначально написанная Lutz Roeder.
3. Майкрософт постоянно выпускает новые верссии .NET. Почему бы не прокачать одну? Но нет, так было бы слишком просто для программистов. А пользователи теперь пусть устанавливают пакеты со всеми версиями.
4. Отсутствие библиотек, которым нет аналога. Так уж получилось, что даже не столь экзотические библиотеки будут портом библиотек С/C++.
5. Qt 4.8.x ничуть не хуже .NET любой версии. Есть, и другие проекты, на вроде GTK+, WxWidgets и прочие, но это дело десятое. Важно, что Qt 4.8.x полностью убирает потребность в такой мощном фреймворке как .NET. Но при этом Qt кроссплатформенный и его легко использовать с другими библиотеками C++.
Самое печальное во всём этом, что если отследить на чём выехали крупнейшие софтовые корпорации, то окажется это C/C++. Хотя если ваши проекты в будущем не претендуют на мировое господство, то можно и плюшками (си шарпом) баловаться.
Здравствуйте, aloch, Вы писали:
V>>3. Майкрософт постоянно выпускает новые верссии .NET. Почему бы не прокачать одну? Но нет, так было бы слишком просто для программистов. А пользователи теперь пусть устанавливают пакеты со всеми версиями.
A>А для Qt все по другому?
В настоящее время Qt стабилизировался на версии 4.8.6. Для примера OpenCASCADE без проблем интегрируется в Qt, внутри есть готовые примеры, сразу можно увидеть как загружаются и отображаются различные форматы (STEP, IGES). Если взять OpenSceneGraph, то так же присутствует поддержка Qt, более того, виджеты из Qt могут отображаться внутри 3D видов OpenSceneGraph. Ещё для примера OpenSceneGraph совместим с BulletPhysics, тоже через плагин, и всё это можно отображать посредством Qt.
И подобных примеров масса, совмещаются все парадигмы, процедурная, функциональная, объектно-ориентированная, обобщённая. К примеру, Qt легко подключить к OpenCV, причём обе системы так спроектированы, что не обязательно копировать между QImage и cv::Mat, можно просто ссылаться на данные другого класса.
Можно, конечно, сказать, что есть Qt 5.x. Но вот в чём вопрос, что это такое, для кого сделано, и самое главное кем. Это как если бы одну версию .NET делал майкрософт, вторую гугл, а третью эпл. Считаю, что главный урок, который даёт Raspberry Pi в том, что на нём работает всё тоже самое, что и в линукс (тот же Debian), а значит и в Windows, BSD, MacOSX и других.
В свою очередь возникает вопрос, почему этого не могут планшеты и телефоны, ведь у них такая же начинка. А ответ в том, что они могут, если поставить на них тот же линукс. И как думаете, что творится у корпораций в "голове", а именно Гугла, Эпла и Майкрософта. Всё банально, заработать деньжат. Невыгодно делать совместимые решения, даже если всё "кричит" об этом.
Обычный же программист попадает в мясорубку конкурентной борьбы гигантов. А многие из программистов и жизни то хорошей не знали. Так и кодят на дельфях, да на дотнете. А им ещё сверху теперь ...ут на мозги, что дескать у нас теперь везде мобильное программирование, новое уникальное знание — кастрированный линукс.
И вот как и в стародавние времена рвут программистов на части. Но со временем даже нынешняя молодёжь осознает, что нет у них смартфона или планшета, в их руках обычный компьютер. Думаю в будущем распространятся компьютеры флешки, в том числе и нано формата, компьютеры часы, компьютеры очки. Всё это уже есть, и это обычные компьютеры.
То что сейчас делают программисты не используя кроссплатформенные системы отправится в унитаз. Кроссплатформенное будет просто перекомпилировано. Здесь мы подходим к философской проблеме: — "Зачем работать в унитаз?".
Вот смотрите, что сделал майкрософт, дал возможность писать программы для .NET. Но если он не захочет, программист не вскочет. Иными словами, если ему будет не выгодно, чтобы ваши программы работали на линуксе, макосе, или на новых версиях винды, то они и не будут работать. Достаточно просто не выпустить платформу для этих версий и вуаля.
Предположим у вас солидная фирма, создаёт программные продукты. Но нет батюшка, тушите свет, отправляйтесь на помойку истории, потому что великий и ужасный майкрософт опять с кем-то поцапался и решил всё запретить. Причём не забываем, что майкрософт стоит денег и ваш бизнес никогда не будет масштабируемым.
А противостоят ему железные гиганты, сиречь производители оборудования. Их вовсе не устраивает тявкать вокруг какого-то софтовика. Себя они видят волкодавами. Кроссплатформа это не просто блажь или битва за клиентов, кроссплатформа это борьба за независимость.
Независимость от производителей операционной системы, независимость от производителей железа. Аутсайдер, тот кто всегда в конце списка, это и есть лицо современного программиста. И зарплата здесь не играет никакой роли.
Настанет день и майкрософт аннигилирует дотнет, и будет всем очень смешно. А если не верите, почитайте его историю, или вспомните что он вытворял на протяжении последних десятилетий.
Что касается Delphi, то он уже аннигилировался. С чего бы его выбирать, если хотя бы вот, архитектуры поддерживающиеся дебианом, а значит C++ и всеми кроссплатформенными библиотеками.
i386 — архитектура x86, разработана для Intel-совместимых 32-битных процессоров
amd64 — архитектура x86-64 разработана для Intel/AMD 64-битных процессоров
sparc — архитектура Sun SPARC для систем Sun4m, Sun4u и Sun4v
armel — архитектура ARM для Risc PC и различных встраиваемых систем
powerpc — архитектура PowerPC
ia64 — архитектура Intel Itanium (IA-64)
mips, mipsel — архитектура MIPS (big-endian и little-endian)
s390 — архитектура IBM ESA/390
The operating system, must be one of: (Q_OS_x)
DARWIN — Darwin OS (synonym for Q_OS_MAC)
SYMBIAN — Symbian
MSDOS — MS-DOS and Windows
OS2 — OS/2
OS2EMX — XFree86 on OS/2 (not PM)
WIN32 — Win32 (Windows 2000/XP/Vista/7 and Windows Server 2003/2008)
WINCE — WinCE (Windows CE 5.0)
CYGWIN — Cygwin
SOLARIS — Sun Solaris
HPUX — HP-UX
ULTRIX — DEC Ultrix
LINUX — Linux
FREEBSD — FreeBSD
NETBSD — NetBSD
OPENBSD — OpenBSD
BSDI — BSD/OS
IRIX — SGI Irix
OSF — HP Tru64 UNIX
SCO — SCO OpenServer 5
UNIXWARE — UnixWare 7, Open UNIX 8
AIX — AIX
HURD — GNU Hurd
DGUX — DG/UX
RELIANT — Reliant UNIX
DYNIX — DYNIX/ptx
QNX — QNX
LYNX — LynxOS
BSD4 — Any BSD 4.4 system
UNIX — Any UNIX BSD/SYSV system
The compiler, must be one of: (Q_CC_x)
SYM — Digital Mars C/C++ (used to be Symantec C++)
MWERKS — Metrowerks CodeWarrior
MSVC — Microsoft Visual C/C++, Intel C++ for Windows
BOR — Borland/Turbo C++
WAT — Watcom C++
GNU — GNU C++
COMEAU — Comeau C++
EDG — Edison Design Group C++
OC — CenterLine C++
SUN — Forte Developer, or Sun Studio C++
MIPS — MIPSpro C++
DEC — DEC C++
HPACC — HP aC++
USLC — SCO OUDK and UDK
CDS — Reliant C++
KAI — KAI C++
INTEL — Intel C++ for Linux, Intel C++ for Windows
HIGHC — MetaWare High C/C++
PGI — Portland Group C++
GHS — Green Hills Optimizing C++ Compilers
GCCE — GCCE (Symbian GCCE builds)
RVCT — ARM Realview Compiler Suite
NOKIAX86 — Nokia x86 (Symbian WINSCW builds)
CLANG — C++ front-end for the LLVM compiler
The window system, must be one of: (Q_WS_x)
MACX — Mac OS X
MAC9 — Mac OS 9
QWS — Qt for Embedded Linux
WIN32 — Windows
X11 — X Window System
S60 — Symbian S60
PM — unsupported
WIN16 — unsupported
Java тоже, сколько смотрю, отличные функциональные приложения, но скорость исполнения просто жесть. Тормозит, тормозит, тормозит. На что они рассчитывали, что я введу сто узлов, а я ввёл несколько тысяч, и что, теперь будем тормозить? На C++ почему-то такого не происходит, он и лимон переварит без проблем. Красивые конструкции, никакой оптимизации. И так из приложения в приложение.
Но вернёмся с дотнету. Основная проблема как уже было сказано — аннигиляция продуктов во славу майкрософта. Какое может быть будущее, если не знаешь чего ждать. Ещё раз напомню, те кто используют дотнет целиком и полностью от него зависимы. Это не есть хорошо, даже если забыть о небольших возможностях и неспособности увеличить (масштабировать) бизнес не отбашляв майкрософту за каждый компонент.
Выводы:
Ну и что, что Java тормоз, вы же не поисковик гугла пишите, и не антивирусник, и не CAD/CAE/CAM систему, не управление роботами, и не новейшую игру ААА класса. Если какой-нибудь банк хочет нанять вас программистом Java или аутсорсер не прочь нагреть на вас руки, и вас не обидеть, то почему бы и нет.
На дворе 2015 год, а вы не слышали о других операционных системах кроме винды и даже не подозреваете, что многие виндовые приложения просто портируют в винду за счёт кроссплатформенности, а на самом деле пишут в других осях. Пишите на дотнете, всё равно ваши скрипты мало кому нужны. Ну или если майкрософт заморочил "голову" очередному богатому дурачку и он теперь нанимает дотнетчиков, то почему бы и нет.
Мы говорим о Delphi? И это "в то время, когда наши космические корабли бороздят просторы Вселенной". В общем если платят, пишите хоть в TurboPascal, а если нет или всё равно, для себя выбирайте лучшее.
Здравствуйте, Tihomir.I, Вы писали:
A>>Т.е. какие преимущества есть у Delphi по сравнению, например, с C#?
TI>Вы скажите. Я не знаю C#, поэтому трудно сравнивать. TI>Каждый язык программирования владеет какой-то своей нишей. Грубо: TI> Java — это кросcплатформенность TI> C++ — это гибкость синтаксиса, алгоритмичность языка TI> Delphi — это RAD, GUI
Delphi в отличии от C# и Java компилируется в нативный код не уступающий по скорости C++ и не требующий виртуальных машин
Здравствуйте, Tihomir.I, Вы писали:
TI>В чем существенные недостатки у Delphi, как у среды разработки?
Имхо, само слабое место еще с 2005 года — неопределенное позиционирование среды.
С одной стороны — это был неплохой инструмент для корпоративной разработки, но современная корпоративная разработка это: Web.
Не 100% но достаточно много. У Delphi кроме хитрых решений типа IntraWeb ничего нет
Интеграция.
Там все осталось на уровне COM. Все остальное — только через сторонние компоненты, и то, если повезет (нам, например, не повезло, мы так и не нашли ничего для поддержки полного стека WS-*, пришлось довольствоваться голым SOAP — то, что есть в стандартной поставке).
Поддержка сторонними вендорами.
Например, разработчики компонент. Сказать, что все поставщики свернули разработку компонент, конечно нельзя, но практически все производители VCL компонент занялись разработками для .Net/Java/HTML_CSS/... А вот новых поставщиков на VCL-рынке я с ходу не припомню (впрочем, я не самый большой специалист и могу этот момент просто упускать).
Или другой пример — корпоративное платформенное ПО уровня SharePoint, т.е. то, которому требуется специализированный инструмент разработки/кастомизации. Много ли вы знаете такого рода продуктов, которые бы имели или инструмент разработки интегрированный в Delphi или хотя бы заявляли о поддержке?
Я вот с ходу и не припомню ни одного.
Ну и всякая "мелочевка", которая стала появляться только в последних версиях и то со скрипом, такие как Unicode, x64-компилятор, ... Да что там говорить, даже элементарная работа с XML — "из коробки" есть только обертка над давно уже не поддерживаемым и не развиваемым MSXML, у которого просто куча всяких проблем (и скорость работы, и жор памяти в модели DOM, ...).
Т.е. использовать Delphi как единый инструмент для корпоративного ПО можно только в достаточно простых случаях (типа разработка независимых Desktop-приложений, которые ни с чем, кроме базы не работают). Во всех остальных нужны будут другие среды, другие специалисты, дополнительные затраты, ...
Остается:
— частные разработчики (shareware) и небольшие компании
— мобильные разработчики.
Судя по тому, что анонсирует Embarcadero, они в основном ориентируются на вторых, но на этот рынок они вышли:
поздно
с не самым лучшим по качеству решением
P.S. Еще добавлю... Мой коллега, ездивший на конференцию Borland в 2008-2009 годах (тогда еще владелец Deplhi) приехал с четким ощущением, что "они там все сидят на чемоданах", т.е. даже сами сотрудники Borland (более того — в России были только продавцы и евангелисты) не верили в продукт. Что уж говорить о потенциальных пользователях.
Поэтому сформировавшийся на тот момент тренд "пересаживания" на другие среды и языки, так и остался.
Поэтому проекты есть, но это только поддержка. Новых практически нет.
Здравствуйте, Tihomir.I, Вы писали:
A>>Т.е. какие преимущества есть у Delphi по сравнению, например, с C#?
TI>Вы скажите. Я не знаю C#, поэтому трудно сравнивать. TI>Каждый язык программирования владеет какой-то своей нишей. Грубо: TI> Java — это кросcплатформенность TI> C++ — это гибкость синтаксиса, алгоритмичность языка TI> Delphi — это RAD, GUI
Нет, это не так. В самом Object Pascal или Delphi, если подразумевать язык, нет ни RAD, ни GUI. В C# тоже этого нет, как нет этого и в C++, и даже в Java. Возможности языка реализует компилятор.
Но помимо этого свиту короля играют IDE (среды разработки) и библиотеки. Ситуация сейчас такова, что C++ имеет библиотеки на все случаи жизни, чего нет ни в .NET C#, ни в Java, а хуже всего дела у Delphi.
Резонный вопрос, если C++ такое крутой, то почему он не победил ту же Java или даже C#. А дело в том, что программирование не вчера родилось, и 15 лет назад C++ не имел такого количества открытых и бесплатных для коммерческого использования библиотек. Даже Qt 4.8.x освободился от коммерческой лицензии, то есть стал LGPL не так давно.
Опять же в те времена (но не сейчас) вменяемой средой разработки была пожалуй лишь Visual Studio. В свою очередь со временем она стала сманивать программистов на .NET. В наше время самый мощный по возможностям язык(+библиотеки+IDE) это C++.
В свою очередь он вобрал в себя старые парадигмы — процедурную и функциональную. И ещё +ооп +обобщённое программирование. Одним словом С++, не просто Си.
От двух этих парадигм и отталкиваются программисты C++, причём они очень сильно различаются.
классика ооп: Qt 4.8.x
классика обобщённого: stl+boost
Хотя помимо этого есть огромное количество других библиотек. Важная особенность в совместимости между различными библиотеками, так как язык один, и единственное что нужно делать, это компилировать одним компилятором, или хотя бы совместимым.
1. С++ это кроссплатформенность
2. С++ (+библиотека и IDE) это RAD, GUI
3. С++ это огромное количество бесплатных и открытых библиотек для коммерческого использования
4. С++ это непревзойдённая скорость в стиле обобщённого программирования, и даже скорости в ООП проектах по сравнению с той же Java впечатляют
Java это 1 и 2.
C# это 2, Delphi тоже 2, только устаревшее, плюс они очень сильно завязаны на Windows.
Да и в конечном итоге всё сводится к C/С++. Сервера, которые запускают веб-языки тоже написаны на них. Или взять крупнейшие компании, может банк и может себе позволить Java, но почему-то с большими данными работают на C/С++. А драйвера на чём пишут.
Но вообще говоря вопрос, что лучше или хуже наивен. Мои задачи может решить только C++, ему просто нет аналогов. Но если человек написал сайтик на PHP, или выучил Python для связки с тем же C++, так и ладно. Если хватило кувалды чтобы забить сваю, то сваезабиватель не нужен.
TI>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)?
Я вам больше скажу, даже сам создатель delphi уже 15 лет создаёт C#.
Данное сообщение является художественным произведением и освещает вымышленные события в вымышленном мире. Все совпадения с реальностью являются случайными. Не является инвестиционной рекомендацией.
Здравствуйте, velkin, Вы писали:
V>Вполне объективно. Но к сожалению C# идёт на платформе .NET. А это значит: V>1. Нет кроссплатформенности. Обсуждать тот же Mono и работу под Wine на мой взгляд несерьёзно.
А чего ты носишься с этой "кроссплатформенностью"? У тебя приложение уровня Ворд? Или офигительно большая потенциальная база клиентов на лялихе? Кому-то на маке нужны твои приложения?
Вот и я про то же — кому она действительно нужна, давно всё запилил на жабках/крестах. А то и вообще на Перл! (чем тебе не кроссплатформенность?)
C# — это хоть и "windows only", но если говорить сугубо о десктопе, то это 99.9999% машин — вполне достаточно для успешного, долгосрочного бизнеса.
На моей практике вообще не было ни одного клиента, который бы сказал "мне бы вот такое же, но для Линукс..." — выводы о нужности кроссплатформенности делай сам.
V>2. Код в принципе (без обфускаторов) открыт с помощью декомпиляции, хотя и не бесплатно (ну это ж майкрософт).
Фигня. Код процессора — тоже не секрет, кому надо — заломают в каральку.
V>3. Майкрософт постоянно выпускает новые верссии .NET. Почему бы не прокачать одну? Но нет, так было бы слишком просто для программистов. А пользователи теперь пусть устанавливают пакеты со всеми версиями.
Фигня. Клиент и пальцем не шевелит, всё делает админ. А уж ему не привыкать ставить софт Не так часто дотнет обновляется, чтобы раздувать из этого проблему. Да и о каких "пакетах" речь?? .НЕТ поставил, сетап программы запустил — всё, программа готова! Что тут сложного-то?
V>4. Отсутствие библиотек, которым нет аналога. Так уж получилось, что даже не столь экзотические библиотеки будут портом библиотек С/C++.
Как по-нерусски ты ща написал... другими словами претензию можно высказать?
V>5. Qt 4.8.x ничуть не хуже .NET любой версии.
Некорректное сравнение, даже не начинай.
V>Самое печальное во всём этом, что если отследить на чём выехали крупнейшие софтовые корпорации, то окажется это C/C++. Хотя если ваши проекты в будущем не претендуют на мировое господство, то можно и плюшками (си шарпом) баловаться.
"Выехать" можно даже на ФоксПро, только денег вливай! Увы, язык тут играет последнюю роль. Но то, что С++ — это труп, который шевелят палками — факт. Даже не труп, а такой мешок тротила, из которого делают кухонную утварь — всё работает, пока не взорвётся к чертям от брошенной спички Оно надо? С++ — это своего рода нунчаки — мощное оружие в руках профессионала (коих единицы на десятки тысяч кодеров), но опасный "по башке бум" для всех остальных.
В мэйнстриме C# даёт стократную фору всем этим плюсам, являясь гораздо более простым и _сопровождаемым_. Ну и с тучей _готовых_ библиотек .НЕТа! (а не утомительные шныряния по тырнетам с ручной компиляцией свалки сорсов в надежде, что разраб имеет такой же компилятор как у тебя)
Здравствуйте, Tihomir.I, Вы писали:
TI>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>В чем существенные недостатки у Delphi, как у среды разработки?
Delphi древний, и его особо никто не поддерживает.
В целом все верно, но вот тут ты не прав:
V>Java тоже, сколько смотрю, отличные функциональные приложения, но скорость исполнения просто жесть. Тормозит, тормозит, тормозит. На что они рассчитывали, что я введу сто узлов, а я ввёл несколько тысяч, и что, теперь будем тормозить? На C++ почему-то такого не происходит, он и лимон переварит без проблем. Красивые конструкции, никакой оптимизации. И так из приложения в приложение.
Java, сама по себе, не тормозит. Но, приложения написанные на Java очень часто тормозят. Возникает вопрос почему и утверждения что язык тормозной. На практике же, это побочный эффект широко распространного в Java подхода "сделать как можно больше абстракций и фабрик". Если же писать на Java в C++ стиле (видя такое богохульство, большинство истинных Java разработчиков начинают тонны кирпичей откладывать и талмуды по паттернам доставатьь), то проиводительность получается очень даже приличная, максимум на 20-30% хуже, чем если бы ты писал на C++. Вобщем, проблема медленной Java — она в головах.
TI>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)?
Потому что сейчас 2015-й год.
TI>В чем существенные недостатки у Delphi, как у среды разработки?
В том, что сейчас 2015-й год.
Здравствуйте, Tihomir.I, Вы писали:
TI>Не улавливаю, что такое “лишние синтаксические сущности”. И про Delphi могу сказать, что сам язык(синтаксис) не является чем-то важным(т.е. обычный бытовой инструмент). А говоря про С++, гибкость языка часто упоминается, значит это важная составляющая?
Эх, жалко не удалось поучаствовать
Синтаксис действительно важен, как ни странно. В реальном мире это тоже имеет место: китайский язык, например, активно упрощают, так как есть авторитетные мнения, что переусложненность, запутанность и перегруженность всяким legacy-мусором иероглифической системы тормозит развитие страны.
По сути:
Синтаксис Дельфи (а также Ada и т.п. языков) простой, понятный, но занудный.
Синтаксис какого нибудь Хаскеля ультракомпактный и суперуниверсальный, но взрывает мозг.
Синтаксис Си — золотая середина. И компактность, и достаточная простота/читаемость. К тому же си-подобный синтаксис это некий стандарт де-факто, так уж сложилось. И при переключении к примеру между C, C++, Java, C#, JavaScript, PHP и многими другими языками не приходится перестраивать свое восприятие кода.
Здравствуйте, kaa.python, Вы писали:
EP>>То есть даже если отбросить подход "сделать как можно больше абстракций и фабрик", то всё равно будет тормозить. Быстрый код получается посредством отказа от полиморфизма, отказа от GC и эмуляцией структур — в результате остаётся крайне ограниченное и неудобное подмножество языка (на котором писать в "C++ стиле" уж точно никак не получится). KP>Отказа от классических Java практик по усложнению написанию идеально расширяемого решение уже будет достаточно, проверено. Скорость получается очень приличная, расход памяти в рамках разумного
Для какой-то задачи может и достаточно, потому что всяких перегибов (достаточно посмотреть на названия SimpleBeanFactoryAwareAspectInstanceFactory, AbstractInterceptorDrivenBeanDefinitionDecorator, TransactionAwarePersistenceManagerFactoryProxy) действительно пруд пруди.
Если же пытаться сделать так, чтобы по скорости от C++ отставало всего лишь на десятки процентов — то в этом случае как раз и придётся отказываться практически от всего, а не только от баластных практик по усложнению.
Здравствуйте, Tihomir.I, Вы писали:
TI>Да, сумма значительная. TI>Просто я не знаю, сколько стоят лицензии на среду разработки Java, С#, С++ ? Чтоб сравнить по деньгам.
TI>А какие еще существенные факторы? М.б. сами технологии, сложность разработки, поддержки ...?
Ну Microsoft недавно выпустила бесплатный Visual Studio Community Edition с той же функциональностью, что и Professional Edition.
Правда у дельфи есть какая-то недорогая/бесплатная версия, называемая Starter, но насколько она функциональна — не знаю.
А так разработчики ругают среду разработки за глючность и VCL за ошибки внутри библиотеки. На сколько это актуально не могу сказать, на дельфи не пишу ничего. Мне синтаксис самого Pascal как-то не особо нравиться. Привык больше к си-подобному.
TI>>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>>В чем существенные недостатки у Delphi, как у среды разработки?
EP>А как сейчас предлагается управлять памятью? Насколько я помню, раньше не было ни GC, ни RAII
У Delphi нет сборщика мусора, за освобождение памяти должен следить программист.
Это важный минус. Что еще плохого в Delphi?
В С# те же RAD, GUI (которые весьма не плохи)
+ сборка мусора
+ бесплатность
А вообще просто стоит попробовать что то отличное от Delphi/Паскаля (но не C++ , чтобы понять про плюсы/минусы. Ну хоть книжку про язык почитать.
по мне так Delphi — это своего рода COBOL — т.е. есть небольшое количество приложений/разработчиков, которым нужно тащить совместимость для написанного кода. Вот на них все это и ориентировано и отсюда эти безумные цены.
Начинать что то новое на Delphi наверное сейчас не стоит, а уж кого они там хотят привлечь на Android при наличии Xamarin я вообще не понимаю.
Здравствуйте, kaa.python, Вы писали:
KP>Java, сама по себе, не тормозит. Но, приложения написанные на Java очень часто тормозят. Возникает вопрос почему и утверждения что язык тормозной. На практике же, это побочный эффект широко распространного в Java подхода "сделать как можно больше абстракций и фабрик". Если же писать на Java в C++ стиле (видя такое богохульство, большинство истинных Java разработчиков начинают тонны кирпичей откладывать и талмуды по паттернам доставатьь), то проиводительность получается очень даже приличная, максимум на 20-30% хуже, чем если бы ты писал на C++. Вобщем, проблема медленной Java — она в головах.
Действительно, на Java можно создавать быстрый код, но только это будет код не в C++ стиле. И даже стилем C это можно назвать только с натяжкой — в Java нет даже структур, и при создании быстрого кода их приходится эмулировать.
В C++ есть дешёвые и даже зачастую бесплатные механизмы абстракции, в Java их нет — и соответственно быстрый код на Java по размеру будет намного больше чем аналог по скорости на C++.
То есть даже если отбросить подход "сделать как можно больше абстракций и фабрик", то всё равно будет тормозить. Быстрый код получается посредством отказа от полиморфизма, отказа от GC и эмуляцией структур — в результате остаётся крайне ограниченное и неудобное подмножество языка (на котором писать в "C++ стиле" уж точно никак не получится).
Здравствуйте, Mr.Delphist, Вы писали:
MD>Здравствуйте, Tihomir.I, Вы писали:
TI>>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>>В чем существенные недостатки у Delphi, как у среды разработки?
MD>Дело в том, что "по жизни" Delphi был продуктом с хреновым QA и очень "прогрессивным" маркетинговым отделом. В результате, в продукт на каждый релиз вваливались новые фичи, покупались целые компании для этого, но вскоре выяснялось, что фича недоделаная, продукт от сторонней компании тоже недоделаный, а ещё при интеграции с ними поломали кусок старого функционала — но это ж фигня, всё равно мало кто пользовался, так ведь? Главное пресс-релиз победный накатать. При этом реально необходимые для приведения своего продукта в современный вид фичи откладывались, снова откладывались, и снова... MD>- Юникодные контролы? Да кому это надо! Мы ж не китайцы. MD>- Компилер в 64 бита? Да пусть спасибо скажут, что не в Win3.1 пишут, хипстеры несчастные! MD>- Нормальная работа не из под админа? Да они там с жиру бесятся — настоящий программист всегда админ у себя! MD>- Безглючный дебагер? Да нормально всё, ну подвис пару раз — чё. MD>- Полноценная поддержка COM? Да кому эти прокси-стабы надо. И IDL у нас нормально генерится, почти 100% совместимо с Microsoft. Просто пользуйтесь нашим редактором для TLB, и ничем иным. MD>- VCL-компоненты? Инсталируйте в общую палитру IDE. Ну да, даже если этот компонент в одном проекте лишь надо. Ширины экрана хватит всем! MD>- Поддержка source control? Да, конечно, у нас есть плагины от партнёров. TFS — не, не слышал. Берите проверенное временем: SourceSafe, CVS, SVN... MD>- Бинарный DFM? У нас есть поддержка текстового DFM-формата, если файл не слишком большой. И незачем вам работать вдвоём над одним DataModule, всё равно там кроме хекс-дампов ничего нет! И это, какое Вы там слово сказали... Бранч? Что это? Зачем с ним мёржиться?
MD>И вот этой фигни постоянно накапливающийся список, никто не решает "проблемы 20% пользователей". И об этом не задумываешься, пока сам не попадаешь в эти 20%. Но если попал — приходит понимание что "ты попал", а остальные 80% продолжают петь дифирамбы, пока.
MD>Недавний финальный кумулятивный апофеоз всех этих проблем — Фреймворк FireMonkey, когда даже собственный Embarcadero-саппорт (за который тоже заплачено нефиговое бабло) днями и неделями изображает, что не может "воспроизвести проблему", несмотря на детальное пошаговое описание, и лишь по факту долгих боданий тебе сообщают "will be fixed in next major release" (читай — через полгода минимум). Приплыли.
MD>P.S. Посмотрите на мой ник, если есть сомнения. Начинал с Delphi 1. Закончил в Delphi 2006. Безумно рад, что можно не пользоваться "этим" сейчас, но с удовольствием "тряхну стариной" если продукт приведут в production-ready состояние. Т.е. начнут решать проблемы 20% пользователей.
стАриной, пока она ещё не отвалилась, иди тряси в другом месте.
Использую Delphi начиная с первой версии и с ~1995 года. Сейчас уже на DX10. FMX также использовал и использую. Вполне пригодный инструмент для создания конкурентоспособных продуктов. Не надо слушать подобных хейтеров.
Здравствуйте, AlexRK, Вы писали:
ARK>Здравствуйте, Mr.Delphist, Вы писали:
MD>>Неужели IDE больше не падает на проекте в хотя бы 100 килострок?
ARK>Не знаю, как там щас дела обстоят с этим, но я в начале 2000-х работал с проектом на Delphi 7 размером примерно в 150000 строк, ни одного падения никогда не видел.
Delphi 7 у меня на 300 килострок более-менее вменяемо работал (не без проблем, но предсказуемо). А вот двухтыщная линейка как началась — туши свет. Серия XE тоже не сильно лучше ворочается.
Здравствуйте, Tihomir.I, Вы писали:
TI>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>В чем существенные недостатки у Delphi, как у среды разработки?
TI>>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>>В чем существенные недостатки у Delphi, как у среды разработки?
SNN>Стоимость в 300 тыс рублей
SNN>Ну Microsoft недавно выпустила бесплатный Visual Studio Community Edition с той же функциональностью, что и Professional Edition. SNN>Правда у дельфи есть какая-то недорогая/бесплатная версия, называемая Starter, но насколько она функциональна — не знаю.
У Delphi все плохо(дорого) с лицензиями. Starter не походит, просто ознакомительная версия. ‘Нормальный’ Delphi edition стоит примерно $2000
SNN>А так разработчики ругают среду разработки за глючность и VCL за ошибки внутри библиотеки.
Хорошо знаю VCL. Если исходить из того, что библиотеки не глючные, но программисты жалуются, м.б. это довод, что сама среда для них сложная, и одна из причин, почему Delphi не любят ... ?
SNN> Мне синтаксис самого Pascal как-то не особо нравиться. Привык больше к си-подобному.
У Си синтаксис сложнее, можно всякие конструкции навороченные делать. Паскаль намного проще. Но является ли это доводом против Delphi?
TI>Хорошо знаю VCL. Если исходить того, что библиотеки не глючные, но программисты жалуются, м.б. это довод, что сама среда для них сложная, и одна из причин, почему Delphi не любят ... ?
Нет, среда разработки не сложная, но на глюки жалобы слышал. А вот x64 компилятора долгое время не было и это тоже повлияло на популярность Delphi.
TI>У Си синтаксис сложнее, можно всякие конструкции навороченные делать. Паскаль намного проще. Но является ли это доводом против Delphi?
Паскаль может и проще, но мне он не нравится. Это мое личное отношение к паскалю. Оно субъективно и доводом против дельфи не является.
Пытаюсь подытожить важные моменты:
1) стоимость лицензий
2) кроссплатформенность
3) поддержка влиятельного (Microsoft)
4) множество исходных проектов, которые надо поддерживать
Про войну библиотек не уловил. В чем преимущество?
SNN> А вот x64 компилятора долгое время не было и это тоже повлияло на популярность Delphi.
Да, точно.
x64 для Delphi вышел только в 2011г. Хотя, во многих ли проектах важна разрядность? В Java, например, важна ли разрядность?
SNN>Паскаль может и проще, но мне он не нравится. Это мое личное отношение к паскалю. Оно субъективно и доводом против дельфи не является.
М.б. простота языка — следствие его непопулярности? Типа, не требуется квалификация программистов, и отсюда все беды с проектами...
Здравствуйте, Tihomir.I, Вы писали:
TI>Да, точно. TI>x64 для Delphi вышел только в 2011г. Хотя, во многих ли проектах важна разрядность? В Java, например, важна ли разрядность?
Тем не менее наличие 64-битного компилятора тоже играет роль при выборе инструмента.
TI>М.б. простота языка — следствие его непопулярности? Типа, не требуется квалификация программистов, и отсюда все беды с проектами...
Популярность дельфи была восновном на просторах бывшего ссср. С чем это связано, трудно сказать... Возможно с тем, что в то время дельфи и билдер были чуть ли не единственными RAD, и порог вхождения был ниже, чем в ту же Visual Studio с MFC
Здравствуйте, Tihomir.I, Вы писали:
TI>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>В чем существенные недостатки у Delphi, как у среды разработки?
А как сейчас предлагается управлять памятью? Насколько я помню, раньше не было ни GC, ни RAII
TI>>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>>В чем существенные недостатки у Delphi, как у среды разработки?
S>Delphi древний, и его особо никто не поддерживает.
Не улавливаю.
Что подразумевается под "поддержкой" для Java, C#, С++ ?
Здравствуйте, Tihomir.I, Вы писали:
TI>У Си синтаксис сложнее, можно всякие конструкции навороченные делать. Паскаль намного проще. Но является ли это доводом против Delphi?
Я бы сказал иначе — у C/C++ синтаксис намного гибче и лаконичнее. У Паскаля (Delphi) много лишних синтаксических сущностей.
SNN>Популярность дельфи была восновном на просторах бывшего ссср. С чем это связано, трудно сказать... Возможно с тем, что в то время дельфи и билдер были чуть ли не единственными RAD, и порог вхождения был ниже, чем в ту же Visual Studio с MFC
Есть мнение, что RAD – это серьезная беда. Любой школьник может сесть и слепить программу на Delphi, но результат получается очень сомнительный.
На сколько помню, Builder вообще не был популярен среди С++ программистов.
TI>>>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>>>В чем существенные недостатки у Delphi, как у среды разработки?
S>>Delphi древний, и его особо никто не поддерживает.
TI>Не улавливаю. TI>Что подразумевается под "поддержкой" для Java, C#, С++ ?
За java'ой стоит Oracle, за шарпом ms (чуть ли не раз в год новая версия языка).
Развиваются стандартные библиотеки, фиксятся баги -- это и есть поддержка.
TI>>У Си синтаксис сложнее, можно всякие конструкции навороченные делать. Паскаль намного проще. Но является ли это доводом против Delphi?
AG>Я бы сказал иначе — у C/C++ синтаксис намного гибче и лаконичнее. У Паскаля (Delphi) много лишних синтаксических сущностей.
Не улавливаю, что такое “лишние синтаксические сущности”. И про Delphi могу сказать, что сам язык(синтаксис) не является чем-то важным(т.е. обычный бытовой инструмент). А говоря про С++, гибкость языка часто упоминается, значит это важная составляющая?
S>>>Delphi древний, и его особо никто не поддерживает.
S>За java'ой стоит Oracle, за шарпом ms (чуть ли не раз в год новая версия языка). S>Развиваются стандартные библиотеки, фиксятся баги -- это и есть поддержка.
Т.е. солидная компания-разработчик. Действительно, в лучшие времена Delphi разрабатывалась известной(на то время) фирмой Borland. Но с 2006г. пошла по чужим рукам. Сначала CodeGear, а сейчас Embarcadero
Здравствуйте, Tihomir.I, Вы писали:
TI>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>В чем существенные недостатки у Delphi, как у среды разработки?
Компилятор глючный. Сравнительно легко написать конструкцию, при виде которой падает или компилятор, или ИДЕ, или оба.
A>Т.е. какие преимущества есть у Delphi по сравнению, например, с C#?
Вы скажите. Я не знаю C#, поэтому трудно сравнивать.
Каждый язык программирования владеет какой-то своей нишей. Грубо:
Java — это кросcплатформенность
C++ — это гибкость синтаксиса, алгоритмичность языка
Delphi — это RAD, GUI
Здравствуйте, aloch, Вы писали:
A>Мне кажется, что нужно говорить не о слабых, а о сильных моментах. A>Т.е. какие преимущества есть у Delphi по сравнению, например, с C#?
Его любят шароварщики из-за того, что это практически единственная нативная альтернатива C++, код проще защищать и сложнее ломать и все такое.
Здравствуйте, Evgeny.Panasyuk, Вы писали:
EP>А как сейчас предлагается управлять памятью? Насколько я помню, раньше не было ни GC, ни RAII
Памятью управлять в стиле Qt — у объекта есть родитель, который его и грохает. Локальные объекты или грохаем руками или пользуемся raii через интерфейсы, для которых компилятор вставляет вызовы AddRef/Release в нужных местах. С появлением дженериков смарт-поинтер вполне себе делается.
Здравствуйте, Tihomir.I, Вы писали:
S>>Дешевле, чем токарный станок, вообще-то говоря.
TI>Подразумеваются дорогие лицензии Delphi в сравнении с другими языками. TI>Например, во сколько обойдутся лицензии для разрабочика С++, Java, C# ?
Здравствуйте, enji, Вы писали:
E>Памятью управлять в стиле Qt — у объекта есть родитель, который его и грохает. Локальные объекты или грохаем руками или пользуемся raii через интерфейсы, для которых компилятор вставляет вызовы AddRef/Release в нужных местах. С появлением дженериков смарт-поинтер вполне себе делается.
И все равно остается ручное гроханье, а addref/release — это как я понимаю торчит из COM, там еще и рекурсивную ссылку словить можно.
И если мне не изменяет память я должен еще и конструктор и деструктор (Init()/Done()) сам руками вызывать. В общем все очень плохо.
Здравствуйте, aloch, Вы писали:
GIV>>IDEA (это для Java) стоит $239 в год
A>А NetBeans — бесплатная. Ну нет там чумового рефакторинга, но можно подумать он так всем нужен...
Есть еще Eclipse задаром. Но IDEA тем не менее стоит свои пару сотен в год.
Здравствуйте, GarryIV, Вы писали:
GIV>Есть еще Eclipse задаром. Но IDEA тем не менее стоит свои пару сотен в год.
наверное стоит, раз продают. Кому-то и Delphi за 2000$ того стоит.
Но вот для IDE Delphi кроме Лазаря (то еще название с намеком ) альтернатив платных или бесплатных нет
Здравствуйте, Tihomir.I, Вы писали:
TI>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>В чем существенные недостатки у Delphi, как у среды разработки?
Баги не фиксят. Нет фактической поддержки вышедшей среды.
Здравствуйте, Tihomir.I, Вы писали:
SNN>>Популярность дельфи была восновном на просторах бывшего ссср. С чем это связано, трудно сказать... Возможно с тем, что в то время дельфи и билдер были чуть ли не единственными RAD, и порог вхождения был ниже, чем в ту же Visual Studio с MFC
TI>Есть мнение, что RAD – это серьезная беда. Любой школьник может сесть и слепить программу на Delphi, но результат получается очень сомнительный. TI>На сколько помню, Builder вообще не был популярен среди С++ программистов.
Потому что добавлял ряд нестандартных элементов синтаксиса, которые другой компилер не понимал (и не мог понимать). Но именно UI многие из знакомых сишников рисовали на Билдере.
Здравствуйте, aloch, Вы писали:
A>И все равно остается ручное гроханье, а addref/release — это как я понимаю торчит из COM, там еще и рекурсивную ссылку словить можно.
там поддержка com встроена в язык и использование интерфейсов совершенно прозрачно. Рекурсивная ссылка — да, но ее и в плюсах не разрулить автоматически
A>И если мне не изменяет память я должен еще и конструктор и деструктор (Init()/Done()) сам руками вызывать. В общем все очень плохо.
Нет, зачем. Вызовятся сами при создании/удалении объекта
Здравствуйте, Tihomir.I, Вы писали:
TI>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)?
Новые проекты стартуют с прицелом на кроссплатформенность, которого у Delphi фактически нет и видимо уже никогда не будет.
TI>В чем существенные недостатки у Delphi, как у среды разработки?
Ну во-первых — это убогость самого языка (к примеру нет аналога объектов на стеке, библиотеки типа STL разрабатываются кем попало и т.д.). Во-вторых — отсутствие кроссплатформенности (кодогенерация для макоси ужасна, про линух по-моему еще и бубуен не звенел).
Здравствуйте, Tihomir.I, Вы писали:
TI>Про войну библиотек не уловил. В чем преимущество?
Не надо изобретать велосипед для вещей,
— ставших стандартами де-факто: JSON, ZIP, сетевые протоколы
— набирающих популярность (всякие твиттеры-социалочки, хипстерские Фреймворки, облачные сервисы-гит и т.п.)
Т.е. либо пилишь руками порт из чего-то опенсорсного, либо пытаешься синтегрироваться с готовыми бинарями. Но на всё это надо время, что не приближает к успешному релизу.
V>.NET Reflector — платная утилита для Microsoft .NET, комбинирующая браузер классов, статический анализатор и декомпилятор, изначально написанная Lutz Roeder.
Или бесплатный ILSpy (сделанный как раз по поводу перехода Reflector на коммерческие рельсы)
V>3. Майкрософт постоянно выпускает новые верссии .NET. Почему бы не прокачать одну? Но нет, так было бы слишком просто для программистов. А пользователи теперь пусть устанавливают пакеты со всеми версиями.
Здравствуйте, Tihomir.I, Вы писали:
TI>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>В чем существенные недостатки у Delphi, как у среды разработки?
Здравствуйте, Evgeny.Panasyuk, Вы писали:
EP>То есть даже если отбросить подход "сделать как можно больше абстракций и фабрик", то всё равно будет тормозить. Быстрый код получается посредством отказа от полиморфизма, отказа от GC и эмуляцией структур — в результате остаётся крайне ограниченное и неудобное подмножество языка (на котором писать в "C++ стиле" уж точно никак не получится).
Отказа от классических Java практик по усложнению написанию идеально расширяемого решение уже будет достаточно, проверено. Скорость получается очень приличная, расход памяти в рамках разумного (в крайнем случае на 500 MHz MIPS с полугигом памяти на вообще все, крутилась куча логики, включая обработку изображений и базовую криптографию, поверх OSGi оставаясь более чем отзывчивой. Еще и куча свободной памяти была и проц далеко не на 100% загружен). До этого опыта я был на 100% уверен в том, что вся проблема в Java как таковой, сейчас я так же на 100% уверен что дело в концепциях (память/процессор не ресурс), которые считает основная масса Java программистов правильными.
Здравствуйте, aloch, Вы писали:
A>при этом шароварщики зачастую сидет на старом-добром Delphi 6 и им ничего не нужно.
Создатель Total Commander-a сидит и вовсе на Delphi 2, по крайней мере был на нем еще несколько лет назад. Что он сейчас, в связи с Win 8/8.1/10 и повсеместной 64-битной выбрал не в курсе, вроде к Lazarus склонялся, но ему что-то в нем сильно не нравилось, Lazarus/FreePascal далеко не полностью совместимы с Delphi даже по языку.
B>Здравствуйте, velkin, Вы писали:
V>>Вполне объективно. Но к сожалению C# идёт на платформе .NET. А это значит: V>>1. Нет кроссплатформенности. Обсуждать тот же Mono и работу под Wine на мой взгляд несерьёзно.
B>А чего ты носишься с этой "кроссплатформенностью"? У тебя приложение уровня Ворд? Или офигительно большая потенциальная база клиентов на лялихе? Кому-то на маке нужны твои приложения? B>Вот и я про то же — кому она действительно нужна, давно всё запилил на жабках/крестах. А то и вообще на Перл! (чем тебе не кроссплатформенность?) B>C# — это хоть и "windows only", но если говорить сугубо о десктопе, то это 99.9999% машин — вполне достаточно для успешного, долгосрочного бизнеса. B>На моей практике вообще не было ни одного клиента, который бы сказал "мне бы вот такое же, но для Линукс..." — выводы о нужности кроссплатформенности делай сам.
V>>2. Код в принципе (без обфускаторов) открыт с помощью декомпиляции, хотя и не бесплатно (ну это ж майкрософт).
B>Фигня. Код процессора — тоже не секрет, кому надо — заломают в каральку.
V>>3. Майкрософт постоянно выпускает новые верссии .NET. Почему бы не прокачать одну? Но нет, так было бы слишком просто для программистов. А пользователи теперь пусть устанавливают пакеты со всеми версиями.
B>Фигня. Клиент и пальцем не шевелит, всё делает админ. А уж ему не привыкать ставить софт Не так часто дотнет обновляется, чтобы раздувать из этого проблему. Да и о каких "пакетах" речь?? .НЕТ поставил, сетап программы запустил — всё, программа готова! Что тут сложного-то?
V>>4. Отсутствие библиотек, которым нет аналога. Так уж получилось, что даже не столь экзотические библиотеки будут портом библиотек С/C++.
B>Как по-нерусски ты ща написал... другими словами претензию можно высказать?
V>>5. Qt 4.8.x ничуть не хуже .NET любой версии.
B>Некорректное сравнение, даже не начинай.
V>>Самое печальное во всём этом, что если отследить на чём выехали крупнейшие софтовые корпорации, то окажется это C/C++. Хотя если ваши проекты в будущем не претендуют на мировое господство, то можно и плюшками (си шарпом) баловаться.
B>"Выехать" можно даже на ФоксПро, только денег вливай! Увы, язык тут играет последнюю роль. Но то, что С++ — это труп, который шевелят палками — факт. Даже не труп, а такой мешок тротила, из которого делают кухонную утварь — всё работает, пока не взорвётся к чертям от брошенной спички Оно надо? С++ — это своего рода нунчаки — мощное оружие в руках профессионала (коих единицы на десятки тысяч кодеров), но опасный "по башке бум" для всех остальных. B>В мэйнстриме C# даёт стократную фору всем этим плюсам, являясь гораздо более простым и _сопровождаемым_. Ну и с тучей _готовых_ библиотек .НЕТа! (а не утомительные шныряния по тырнетам с ручной компиляцией свалки сорсов в надежде, что разраб имеет такой же компилятор как у тебя)
А вот теперь не согласен с каждым пунктом, но обсуждать нам особо нечего. В данном контексте
мой опыт .NET, C#, Windows, Qt, C++, Linux
ваш опыт .NET, C#, Windows
Пытаться убедить кого-то сначала попробовать, сравнить, а потом судить, на мой взгляд, неправильно. Если какому-либо человеку это не нужно или влом, то пусть сидит, мне не жалко. Скажу только, что когда-то .NET и мне казался шикарным фреймворком, но время не стоит на месте.
Что касается линукс, то код компилируется GCC для всего дистрибутива, это в windows только по другому. Впрочем, если речь о windows, то MinGW может использовать библиотеки других компиляторов. Что касается С++, то формошлёпствовать на нём можно не хуже, чем на дотнете.
И, кстати, называя какой-либо язык веб программирования не забываем смотреть на каком языке написаны серверы, на которых он крутится (Apache, Nginx, Lighttpd). Кроссплатформенность достигается с помощью C/С++ и дальше можно говорить что угодно, это в сущности ничего не меняет.
Ну и напоследок про ваши высказывания, "кому надо тот пилит всё на крестах" или "С++ мощное оружие в руках профессионала". А мы тут тогда кто, и кто вы сами. К профессионализму надо стремиться на любой языке, и да, кому надо, тот пишет на С++.
Здравствуйте, btn1, Вы писали:
B>На моей практике вообще не было ни одного клиента, который бы сказал "мне бы вот такое же, но для Линукс..." — выводы о нужности кроссплатформенности делай сам.
На десктопе это, конечно, случается куда реже, а вот на мобилках сплошь и рядом "хочу чтобы это одним сырцом — и сразу на iPhone/Android/далее-по-вкусу". Но посмотрите в сторону QT-related рынка, там десктопная кроссплатформа часто попадается как одно из требований. Связка NET/Mono тоже медленно но верно идёт к этому (в отличие от того же Wine, который по сути так и остался "VmWare для бедных").
Здравствуйте, Mr.Delphist, Вы писали:
MD>P.S. Посмотрите на мой ник, если есть сомнения. Начинал с Delphi 1. Закончил в Delphi 2006. Безумно рад, что можно не пользоваться "этим" сейчас, но с удовольствием "тряхну стариной" если продукт приведут в production-ready состояние. Т.е. начнут решать проблемы 20% пользователей.
Здравствуйте, Submitter, Вы писали:
S>Здравствуйте, Mr.Delphist, Вы писали:
MD>>P.S. Посмотрите на мой ник, если есть сомнения. Начинал с Delphi 1. Закончил в Delphi 2006. Безумно рад, что можно не пользоваться "этим" сейчас, но с удовольствием "тряхну стариной" если продукт приведут в production-ready состояние. Т.е. начнут решать проблемы 20% пользователей.
S>Чем пользуешься сейчас?
Visual Studio или Eclipse (но Эклипс — заметно реже, обычно это всякие околомобильные технологии на его основе).
S>PS шароварщик?
Подписываюсь под каждым словом, именно по этому спрыгнул на С++, а потом уже на C#
MD>P.S. Посмотрите на мой ник, если есть сомнения. Начинал с Delphi 1. Закончил в Delphi 2006. Безумно рад, что можно не пользоваться "этим" сейчас, но с удовольствием "тряхну стариной" если продукт приведут в production-ready состояние. Т.е. начнут решать проблемы 20% пользователей.
И я доволен что закончил (Delphi 1 — Delphi 2007), но пару лет назад пришлось таки тряхнуть стариной на пару месяцев (хорошо заплатили). Честно, после 6-летнего перерыва, Delphi показалась такой убогой и отсталой, такой глючной, непредсказуемой...
Здравствуйте, Tihomir.I, Вы писали:
TI>Есть мнение, что RAD – это серьезная беда. Любой школьник может сесть и слепить программу на Delphi, но результат получается очень сомнительный.
Так это же хорошо, что любой школьник может что-то слепить в такой среде. Значит среда настолько простая, что школьники в ней могут разобраться без труда.
[In theory there is no difference between theory and practice. In
practice there is.]
[Даю очевидные ответы на риторические вопросы]
MZ>Использую Delphi начиная с первой версии и с ~1995 года. Сейчас уже на DX10. FMX также использовал и использую. Вполне пригодный инструмент для создания конкурентоспособных продуктов. Не надо слушать подобных хейтеров.
Подскажите, батенька, удалось ли хоть что-то из Ваших FMX-результатов засабмитить в Apple Store? Ибо пустой одностраничный апп, сделанный визардом FMX (т.е. без малейшего прикасания наших кривых рук) давал постоянную CPU-нагрузку и утекание памяти на живом девайсе, вызывая крэш за несколько часов своего активного бездействия. Это однозначный "Submission rejected" от Apple.
Расскажите, как мёржите бранчи — неужели DX10 наконец-то перевела все ресурсы проекта в текстовую форму, как это сделано для DFM? Или приходится руками копипастить из одной IDE в другую?
Неужели IDE больше не падает на проекте в хотя бы 100 килострок?
Не подумайте, что я ненавижу Delphi — я отдал ему достаточно лет. Но увы, после ухода Хейлсберга пришлось невольно мигрировать вслед за ним и рынком. Вот сейчас я смотрю на VS + WPF и понимаю — вот такой должна была быть современная Delphi: гибкий UI и мощь готовых Фреймворков на лбой вкус. Вместо этого — очередная продажа в новые руки. Подозреваю, Idera возьмёт себе всё, что связано с базами данных, а прочее выкинет как непрофильную шелуху. Прямо как в "Джеке Восьмёркине" — какие сигары, народу нужна дешёвая махорка!
Здравствуйте, velkin, Вы писали:
V> Но если человек написал сайтик на PHP, или выучил Python для связки с тем же C++, так и ладно. Если хватило кувалды чтобы забить сваю, то сваезабиватель не нужен.
Ты так хорошо начал, достаточно грамотно всё расписал. Дочитывая сообщение и делая очередной глоток чая, я думал: "Сейчас поставлю чашку и плюсану сообщение". А в конце: "сайтик", "кувалда", "сваезабиватель не нужен"... Нельзя было обойтись без вот этого пука?
например:
!) АТД — практически нет.
0) ThreadPool — кривой и косой года полтора-два как родился.
!) INDY — засуньте себе его в %№$@&~ по самые гланды, чтобы оно никогда оттуда вылезти не смогло, и никто вытащить не смог.
?) сериализация/десериализация из короблки — нате XMLMapper, подавитесь
Да, и что там насчёт логирования исключений? Банальный Stack trace где!?
Всё сказанное выше — личное мнение, если не указано обратное.
Здравствуйте, Michael7, Вы писали:
M>Фишкой компиляторов паскаль от борланд с самого начала было сочетание удобной лицензии и дешевизны (странно это сейчас слышать про дельфи, да?), удобства разработки и скорости разработки. И что очень важно: низкого порога вхождения. Паскаль был простым языком, научиться писать код в среде TP можно было едва ли не идиоту. И не самый плохой код на выходе (хотя и не лучший, вообще говоря.) В результате в 80-е — 90-е годы вообще был момент, когда TP был возможно самым оптимальным выбором для очень широкого круга задач программирования для PC. Совершенно не случайно его так любят до сих пор в школах, несмотря на жуткое устаревание в своей нише ничего лучшего фактически не было. MSC (Microsoft C compiler) был куда унылее и менее дружелюбнее к разработчику, хотя и более серьезной, основательной штукой.
А как же Turbo C — Borland C++ до 3.1, или даже до 5?
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
S>>За java'ой стоит Oracle, за шарпом ms (чуть ли не раз в год новая версия языка). S>>Развиваются стандартные библиотеки, фиксятся баги -- это и есть поддержка. TI>Т.е. солидная компания-разработчик.
Дело не в солидности, JetBrains не такая солидная, как MS, но IDEA очень популярная. Дело в том, что не надо забивать на пользователей. Сначала это делал Borland, потом CodeGear, сейчас по этому пути идет Embarcadero.
Здравствуйте, Dym On, Вы писали:
DO>Дело не в солидности, JetBrains не такая солидная, как MS, но IDEA очень популярная. Дело в том, что не надо забивать на пользователей. Сначала это делал Borland, потом CodeGear, сейчас по этому пути идет Embarcadero.
Неа, уже idera какая-то. Они купили месяца полтора как, но никаких новостей о том что дальше.
Здравствуйте, Tihomir.I, Вы писали:
TI>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>В чем существенные недостатки у Delphi, как у среды разработки?
C# это си подобный Delphi без метаклассов (один главный разработчик), но с линками, await тами итд. Тот же .Net развивается, добавляется куча языков и фич.
К сожалению Delphi не был столь популярен на западе и судьба его была предрешена. Невозможно тягаться маленькой фирме с гигантами
и солнце б утром не вставало, когда бы не было меня
Здравствуйте, Tihomir.I, Вы писали:
TI>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>В чем существенные недостатки у Delphi, как у среды разработки?
Здравствуйте, Mr.Delphist, Вы писали:
MD>Неужели IDE больше не падает на проекте в хотя бы 100 килострок?
Не знаю, как там щас дела обстоят с этим, но я в начале 2000-х работал с проектом на Delphi 7 размером примерно в 150000 строк, ни одного падения никогда не видел.
Здравствуйте, Tihomir.I, Вы писали:
TI>Почему новые проекты предпочитают стартовать на других языках (Java, C#, С++)? TI>В чем существенные недостатки у Delphi, как у среды разработки?
Пишу из воспоминаний Delphi 5/6/7. Может сейчас что-нибудь улучшилось.
1. Убогий язык. Ручное управление памятью, как в C.
2. IDE на уровне блокнота.
3. Глюки-глюки-глюки. Баги везде.
4. Архитектура, поощряющая код-лапшу.
5. Всё проприетарное до мозга костей.
6. Стоит денег, и не малых.
Для 90-х это была хорошая среда. Для 2016-го это реликт. VB.NET, C# лучше по любым параметрам.