Re[6]: Где Борланд свернул не туда?
От: rudzuk  
Дата: 07.06.25 16:22
Оценка: +1
Здравствуйте, dsorokin, Вы писали:

d> Да зачем микрософту нужны были бы Delphi? Во времена Visual Studio 6 у них был Visual J++. Это такая их собственная реализация Java, из-за которой Sun подала на них в суд и выиграла дело. А подали они в суд, потому что испугались. В те времена у микрософта была одна из лучших реализаций Java, если кто помнит. Скорее всего, что даже лучшая на той же винде.


Вот именно, что только на винде. МС и сделала все, чтобы свою Java привязать к Windows. Про Embrace, Extend, and Extinguish в курсе же, да?

d> Ну, вот зачем им Delphi? В микрософте взяли Visual J++ за основу, слегка изменили язык (провели "капитализацию" названий), добавили IL и всю сопутствующую экосистему, а потом назвали .NET Framework. У них был уже прекрасный задел в виде Visual J++. Они стартовали уже с очень хорошей позиции. И дельфи туда, ну, никак не вписывались.


Так я и не говорю, что МС хотела Delphi Я лишь ответил на озвученное предположение. На самом деле, Delphi была удобна МС, т.к. являлась средством разработки под ее платформу и не конкурировала с продуктами МС. Все, что было интересно МС, это продвижение Windows, на которой она зарабатывала. Этим же обусловливалось и расширение Java в сторону плотнейшей интеграции с виндами. Кстати, после закрытия проекта Kylix (кроссплатформенный Delphi, переживший три версии) ходили слухи, что именно МС надавила на Борланд для его закрытия (она могла т.к. владела приличным пакетом акций Борланда).
avalon/3.0.2
Re[6]: Где Борланд свернул не туда?
От: paucity  
Дата: 07.06.25 21:25
Оценка: +1
Здравствуйте, dsorokin, Вы писали:

D>... И даже в одной книге микрософтовского издательства (где-то валялась раньше у меня) была заявлено, что Visual J++ лучше других подходит для воплощения идей COM/ActiveX.


Странно было бы, если Microsoft Press заявил бы о какой-то мелкомякговской технологии что-то другое

Ну и то, что COM/ActiveX вне MS вообще не жильцы были, надо напомнить?

(собственно, суд-то и был из-за MS'овских заявлений о совместимости J++ с Java; да, и чуть-чуть раньше выхода 6ой студии).
Многие и рады были бы испытать когнитивный диссонанс, но нечем.
Отредактировано 07.06.2025 21:26 paucity . Предыдущая версия .
Re[13]: Где Борланд свернул не туда?
От: Артём Австралия жж
Дата: 07.06.25 23:14
Оценка: :)
Здравствуйте, dsorokin, Вы писали:

D>MFC — конечно, та еще штука! Одна обработка сообщений чего стоила (хотя кто-то пишет до сих пор).


D>C++ Builder для GUI был для меня значительно проще, чем та же Visual Studio 6.


Ну т.е. на Delphi и C++ Builder сидели те, кому нужно попроще — не настолько steep learning curve и не нужно глубоко копать под капотом. Ибо кастомные компоненты упирались в всё те же обработчики сообщений, тооько продираться через слои абстракции. Ещё у MFC была из коробки Document View Controller- был wizard на создание своего WYSIWYG приложения. У Delphi же была ориентация на очень быстрое формошлёпство.
Re[14]: Где Борланд свернул не туда?
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 07.06.25 23:29
Оценка:
Здравствуйте, Артём, Вы писали:

D>>C++ Builder для GUI был для меня значительно проще, чем та же Visual Studio 6.


Аё>Ну т.е. на Delphi и C++ Builder сидели те, кому нужно попроще — не настолько steep learning curve и не нужно глубоко копать под капотом. Ибо кастомные компоненты упирались в всё те же обработчики сообщений, тооько продираться через слои абстракции.


И это говорит нам формошлёп на тайпскрипте

В VCL не надо было продираться ни через какие слои абстракции, все события винапи там уже были в виде пропертей onXXX, которым надо было просто назначить обработчик.


Аё>Ещё у MFC была из коробки Document View Controller- был wizard на создание своего WYSIWYG приложения.


WYSIWYG нужен одному проценту приложений


Аё>У Delphi же была ориентация на очень быстрое формошлёпство.


Это то, на что заточены или пытаются заточится все современные фронт-энд фреймворки
Маньяк Робокряк колесит по городу
Re[14]: Где Борланд свернул не туда?
От: paucity  
Дата: 07.06.25 23:47
Оценка:
Здравствуйте, Артём, Вы писали:

Аё>Ну т.е. на Delphi и C++ Builder сидели те, кому нужно попроще — не настолько steep learning curve и не нужно глубоко копать под капотом. .... Ещё у MFC была из коробки Document View Controller- был wizard на создание своего WYSIWYG приложения.


Аргументы этих двух предложений противоречат друг-другу, не находишь?

Ну и ты уверен,что тот mfc wizard создавал прям таки WYSIWYG?

Аё>У Delphi же была ориентация на очень быстрое формошлёпство.


Странно было бы, если бы продукты (хоть от Борланда, хоть от МС), продвигаемые как средства для RAD, не предоставляли такой возможности. Ну а то, что под "капотом" этих форм, зависило только от рук и мозгов, кто формы девелопер
Многие и рады были бы испытать когнитивный диссонанс, но нечем.
Отредактировано 07.06.2025 23:49 paucity . Предыдущая версия .
Re[15]: Где Борланд свернул не туда?
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 08.06.25 00:21
Оценка: -1
Здравствуйте, paucity, Вы писали:

P>Ну и ты уверен,что тот mfc wizard создавал прям таки WYSIWYG?


Тёмчик фантазирует о том, что он был крутой девелопер на визивуге с MFC, не то, что всякие формошлёпы
Маньяк Робокряк колесит по городу
Re[14]: Где Борланд свернул не туда?
От: Kocur  
Дата: 08.06.25 05:33
Оценка:
Здравствуйте, Артём, Вы писали:

Аё>Ну т.е. на Delphi и C++ Builder сидели те, кому нужно попроще —



не попроще! А побыстрее и без лишнего геморроя.

Какой первоклассный софт довольно быстро делался тогда на Delphi !
Re[15]: Где Борланд свернул не туда?
От: Артём Австралия жж
Дата: 08.06.25 06:22
Оценка: :))) :))
Здравствуйте, paucity, Вы писали:

P>Аргументы этих двух предложений противоречат друг-другу, не находишь?

На Delphi может быть, в теории и можно было бы создать MVC и в теории можно писать быстрый код, но на практике, дальше формочек оно не шло.

P>Ну и ты уверен,что тот mfc wizard создавал прям таки WYSIWYG?

Прям таки MVC, а WYSIWYG дальше отрисовку самому имплементить.

P> Ну а то, что под "капотом" этих форм, зависило только от рук и мозгов, кто формы девелопер

Да. VC++ девлопер шёл и писал фичу, а Delphi девклопер опускал руки "эту задачу сделать невозможно- компонент не существует для неё".
Отредактировано 08.06.2025 6:22 Артём . Предыдущая версия .
Re[16]: Где Борланд свернул не туда?
От: Артём Австралия жж
Дата: 08.06.25 06:49
Оценка: :))
Здравствуйте, Marty, Вы писали:

M>Тёмчик фантазирует о том, что он был крутой девелопер на визивуге с MFC, не то, что всякие формошлёпы


На чисто MFC я писал недолго- быстро перешли на + ATL/WTL и потом я перешёл на кросс-платформу. MFC был тяжёлым легаси по сути. Я вообще не считаю программистов на MFC какими-то выдающимися, просто на их фоне Delphi программисты это уровень развития дет. сад.
Re[13]: Где Борланд свернул не туда?
От: Michael7 Россия  
Дата: 08.06.25 19:48
Оценка: +1
Здравствуйте, Михаил Романов, Вы писали:

МР>И, кстати, то что Microsoft до сих пор продолжает (хоть и практически в режиме "вялой поддержки") возиться с Visual Basic в .Net — косвенно указывает на количество когда-то написанного кода (я почти уверен, что для новых проектов его практически не выбирают)


Я не совсем понимаю кому вообще VB.NET был нужен? Как язык он же не совместим ни с VBA, ни просто с VB. Если кто сильно привык к бейсику, ему все-равно пришлось переучиваться. При том вызывать макросы VBA можно было и из C# в .NET
Re[2]: Где Борланд свернул не туда?
От: Michael7 Россия  
Дата: 08.06.25 20:20
Оценка:
Здравствуйте, novitk, Вы писали:

N>Сильно до. Когда купила им нафиг не нужный Ashton-Tate (1991).


Хе, очень похоже, что так и есть. Учитывая, что Ashton-Tate до этого проиграла суд, на котором они хотели остальным запретить использовать формат dbf, при том в Borland уже была своя локальная реляционная СУБД Paradox (которую тоже купили, но сильно ранее). Хотя не исключено на 1991-й поддались магии громкого имени, все же Ashton-Tate, можно сказать, создала рынок таких субд, а Borland хотелось стать "кровавым энтерпрайзом". Может готовую клиентскую базу хотели окучить.
Re[14]: Где Борланд свернул не туда?
От: Михаил Романов Удмуртия https://mihailromanov.wordpress.com/
Дата: 09.06.25 08:17
Оценка: +2
Здравствуйте, Michael7, Вы писали:

M>Я не совсем понимаю кому вообще VB.NET был нужен?

Простите, но тут напрашивается ответ в стиле Капитана Очевидность.
Тем, у кого:
— была солидная кодовая база на VB5/6
— была готовая опытная команда VB-разработчиков
— не было ресурсов (и смысла) переписывать код на C#
— было желание переехать на новую платформу (.Net) и инструментарий к ней.

M>Как язык он же не совместим ни с VBA, ни просто с VB. Если кто сильно привык к бейсику, ему все-равно пришлось переучиваться.

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

Причем была куча инструментов для помощи в миграции.
Были оставлены специальные фичи для совместимости (типа объявления массива с 1)
Были сторонние решения которые поддерживали, например, функции со старым поведением (типа Len6() вместо Len() и MsgBox6() вместо MsgBox())

На сколько я помню (сейчас нет возможности проверить), вплоть до 2008 студии шла поддержка встроенного конвертера.

Короче, скорее всего миграция не была совсем уж простой, но это была миграция, а не переписывание проекта с 0.
Т.е. условные человеко-недели или месяцы, но не годы.

M>При том вызывать макросы VBA можно было и из C# в .NET

Нет, VBA здесь особо не при делах. Речь, как я понимаю, в первую очередь о миграции VB6->VB.Net
Re[3]: Где Борланд свернул не туда?
От: novitk США  
Дата: 09.06.25 14:22
Оценка:
Здравствуйте, rudzuk, Вы писали:

R>В чем он отставал-то? В том, что дженерики появились позже? Впрочем, отставание от владельца платформы в подобной ситуации, оно, как-бы, само-собой разумеющееся. Борланду просто не стоило связываться с .NET, попадая в прямую зависимость от конкурента. VCL for .NET, кстати, была приятнее WinForms (я смотрел и то и другое).


В том, что не было GC. И даже костылей из плюсов типа всяких shared_ptr/auto_ptr не было.
Re[4]: Где Борланд свернул не туда?
От: rudzuk  
Дата: 09.06.25 15:27
Оценка:
Здравствуйте, novitk, Вы писали:

n> R>В чем он отставал-то? В том, что дженерики появились позже? Впрочем, отставание от владельца платформы в подобной ситуации, оно, как-бы, само-собой разумеющееся. Борланду просто не стоило связываться с .NET, попадая в прямую зависимость от конкурента. VCL for .NET, кстати, была приятнее WinForms (я смотрел и то и другое).


n> В том, что не было GC. И даже костылей из плюсов типа всяких shared_ptr/auto_ptr не было.


Гхм. Попробуй почитать внимательно, о чем вообще речь идет.
avalon/3.0.2
Re[5]: Где Борланд свернул не туда?
От: novitk США  
Дата: 09.06.25 21:24
Оценка:
Здравствуйте, rudzuk, Вы писали:

n>> В том, что не было GC. И даже костылей из плюсов типа всяких shared_ptr/auto_ptr не было.

R>Гхм. Попробуй почитать внимательно, о чем вообще речь идет.
+1, не уследил за контекстом.
Re[5]: Где Борланд свернул не туда?
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 10.06.25 13:42
Оценка:
Здравствуйте, rudzuk, Вы писали:

S>> Сейчас шарп один из лучших языков.


R>Дядя Сережа, ты меня так не смеши больше. Навалить всего в кучу не означает сделать хороший язык.


Ну вот как раз в Delphi многого и не хватает, по сравнению даже с C# под .Net Framework 3.5 когда я окончательно перестал писать на Delphi.
А вот по сравнению с .Net 8 уже небо и земля.

Попробуй сделать некоторые задачи на C# используя весь набор инструментов. Это полезно для развития нейронных связей!
и солнце б утром не вставало, когда бы не было меня
Re[12]: Где Борланд свернул не туда?
От: Ilya81  
Дата: 10.06.25 15:30
Оценка:
Здравствуйте, Marty, Вы писали:

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


I>>Не сказал б, как уж он там назвался, JavaBuilder что ли, — можно было, конечно, и на нём написать, если постараться, ибо когда-то его найти было проще. Но NetBeans я впервые скачал из inet'а только тогда, когда такое стало реально, ибо на CD'юках он мне так и не попался, но при этом на дискету не умещался. И вот тогда я оценил разницу!


M>Причем тут JavaBuilder?


Ну помн, было у Borland какое-то такое творение, название помню примерно. И была ситуация, что другой IDE для Java под рукой не бло, т. е. на CD'юках было не найти, а скачать NetBeans из inet'а ещё было не реально. И помню, когда такая возможность уже появилас.


I>>И C++ Builder не сильно лучше по этой части, хоть там, конечно, не сказать, чтоб сильно хуже, чем в MS Visual Studio тех времэн, которй на CD'юках вполне можно было найти.


M>Как RAD, Delphi и аналогичный ей по RAD-функционалу C++ Builder просто на порядки превосходил MSVС, у которой был MFC и убогий редактор ресурсов, на которых все приложения и строились


А что там редактировать? Для картинок, если их клепать самому, есть сторнние редакторы. Строки теста — там более, можно просто скопировать откуда-то. А с целостностью проекта Visual Studio и тогда не сильно хуже справлялся, конечно, не то, что нанче, но что у Borland сильно лучше было? Переход к реализации метода, поиск мест использования — у Borland большое превосходство в этом было? Не помню такого. Вообще не помню крупнх новшеств в сранвении с Turbo C, вот там по тем временам было на высоте.
Re[6]: Где Борланд свернул не туда?
От: dsorokin Россия  
Дата: 10.06.25 15:34
Оценка:
Здравствуйте, Serginio1, Вы писали:

S>Ну вот как раз в Delphi многого и не хватает, по сравнению даже с C# под .Net Framework 3.5 когда я окончательно перестал писать на Delphi.

S>А вот по сравнению с .Net 8 уже небо и земля.

S>Попробуй сделать некоторые задачи на C# используя весь набор инструментов. Это полезно для развития нейронных связей!


Только есть один нюанс...

У меня вот программа на .NET (C# / F#). Когда беру версию с Авалонией, то под линукс с компиляцией AOT получается 48 мегабайт. Инсталятор ужимается до 26 мегабайт. А вот с WPF инсталятор под винду получается размером 11 мегабайт. Причем, устанешь ждать, когда соберется версия с AOT, а вот без AOT очень живо собирает.

В нашем случае вариант с Дельфей ближе к моему варианту с Авалонией. А с WPF платформа .NET отказывается использовать AOT.

У меня там визуальный редактор диаграмм, решатель и компилятор уравнений, вывод графиков и таблиц, да всякие вспомогательные редакторы.

Конечно, мне сборщик мусора очень много, где помогает, он многое упрощает и прощает, но что-то многовато будет. Эти 48 мегабайт немного напрягают меня.

А какие у вас размеры бинарей на Дельфе и Лазарусе?


P.S. Есть расхожее мнение, что, скажем, для Common Lisp получаются огромные бинари. Это не всегда так. У меня есть заготовка редактора диаграмм (которую можно пользоваться уже сейчас, строить диаграммы, экспортировать в PDF и EMF), которую я написал на LispWorks с использованием CAPI. Так вот, LispWorks создает для винды у меня бинарь размером 10 мегабайт, который ужимается до 3 мегабайт 700 килобайт. Новый LispWorks сейчас не купишь, но все же приятная штука. Мне очень нравится LispWorks.

P.P.S. Я, конечно, все понимаю. Мегабайты сейчас никого не смущают, да и десктопы сейчас не в моде. На одной моей работе мы упаковывали JRE в инсталятор, и нормально было. Но все равно есть какое-то ощущение неправильности от всего этого. Как-то не нравится мне, что так сильно распухают десктопные программы. Какой-то здесь дух противоречия
Re[13]: Где Борланд свернул не туда?
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 10.06.25 15:50
Оценка: +2
Здравствуйте, Ilya81, Вы писали:

I>А что там редактировать?


Диалоги/формы


I>Для картинок, если их клепать самому, есть сторнние редакторы.


При чем тут картинки?


I>Строки теста — там более, можно просто скопировать откуда-то.


При чем тут строки?


I>А с целостностью проекта Visual Studio и тогда не сильно хуже справлялся, конечно, не то, что нанче, но что у Borland сильно лучше было? Переход к реализации метода, поиск мест использования — у Borland большое превосходство в этом было? Не помню такого. Вообще не помню крупнх новшеств в сранвении с Turbo C, вот там по тем временам было на высоте.


На MSVC/MFC или WTL ты сначала делал вручную или в редакторе ресурсов диалог, затем вручную делал в сорцах карту сообщений для этого диалога, вручную прописывал там обработчики событий, потом делал в классе прототипы этих обработчиков, потом в .cpp делал их реализацию. Да, переход от прототипа метода к его реализации в MSVC вроде даже работал.

И на самом деле — это тоже самое формошлёпство, что и на Дельфях/Билдере, только через боль и страдание. Пока дельфист делал 10 формочек для автоматизации бизнеса-процессов, гордый MSVC с трудом осиливал сделать одну, и это хорошо если всё сразу заработало, а бизнес логику он уже потом начинал пилить, когда делфист/билдерист уже шел пить пиво на заработанную премию.

В Дельфях/Билдере же ты создавал форму, перекидывал с палитры компонентов контролы, а также невизуальные компоненты, для баз данных, например, потом, выделяя контролы, ты настраивал в окне Property Editor нужные свойства, простым дабл кликом по пропертям обработчиков они создавались (тело в дельфях и прототип/тело в плюсах) и сразу приписывались контролу/компоненту.

Это было супер удобно для построения интерфейсов. Сейчас всякие C#, Qt с QtCreator'ом и прочие пытаются приблизиться к этому идеалу, но получается всё равно сложно и не так удобно, с кучей каких-то костылей.

Еше у Борланда были property, они их и в свой плюсовый компилятор добавили для поддержки VCL, вот это жалко что так и не попало в стандарт, те же кутишники его пытаются эмулировать при помощи своего moc-компилятора, но получилось так себе
Маньяк Робокряк колесит по городу
Re[7]: Где Борланд свернул не туда?
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 10.06.25 15:59
Оценка:
Здравствуйте, dsorokin, Вы писали:


D>У меня вот программа на .NET (C# / F#). Когда беру версию с Авалонией, то под линукс с компиляцией AOT получается 48 мегабайт. Инсталятор ужимается до 26 мегабайт. А вот с WPF инсталятор под винду получается размером 11 мегабайт. Причем, устанешь ждать, когда соберется версия с AOT, а вот без AOT очень живо собирает.


D>В нашем случае вариант с Дельфей ближе к моему варианту с Авалонией. А с WPF платформа .NET отказывается использовать AOT.


D>У меня там визуальный редактор диаграмм, решатель и компилятор уравнений, вывод графиков и таблиц, да всякие вспомогательные редакторы.


D>Конечно, мне сборщик мусора очень много, где помогает, он многое упрощает и прощает, но что-то многовато будет. Эти 48 мегабайт немного напрягают меня.


D>А какие у вас размеры бинарей на Дельфе и Лазарусе?




D>P.S. Есть расхожее мнение, что, скажем, для Common Lisp получаются огромные бинари. Это не всегда так. У меня есть заготовка редактора диаграмм (которую можно пользоваться уже сейчас, строить диаграммы, экспортировать в PDF и EMF), которую я написал на LispWorks с использованием CAPI. Так вот, LispWorks создает для винды у меня бинарь размером 10 мегабайт, который ужимается до 3 мегабайт 700 килобайт. Новый LispWorks сейчас не купишь, но все же приятная штука. Мне очень нравится LispWorks.


D>P.P.S. Я, конечно, все понимаю. Мегабайты сейчас никого не смущают, да и десктопы сейчас не в моде. На одной моей работе мы упаковывали JRE в инсталятор, и нормально было. Но все равно есть какое-то ощущение неправильности от всего этого. Как-то не нравится мне, что так сильно распухают десктопные программы. Какой-то здесь дух противоречия


48 мегабайт это не о чем. Прошли те времена когда «640КБ должно быть достаточно для каждого»!

Во главе угла сейчас скорость программирования и удобство распространения.
Особенно облака.

AOT развивается

https://learn.microsoft.com/ru-ru/dotnet/core/deploying/native-aot/optimizing
Обрезка

Зачем использовать собственный AOT с ASP.NET Core

Время сборки это уже к компилятору С++. Просто MSIL преобразуется к C++. Сам сборщик мусора занимает немного места.

Ну а для гуя During our initial performance tests of .NET MAUI, we saw how JIT (just in time) vs AOT (ahead of time) compiled code can perform:
и солнце б утром не вставало, когда бы не было меня
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.