Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!
DelphiНовости

Добро пожаловать в будущее разработки программного обеспечения, снова

pexels cottonbro 8875489

У меня для вас хорошие новости, будущее разработки программного обеспечения уже наступило! Что ж, если быть точным, следующая возможная большая вещь в будущем разработки программного обеспечения здесь… снова.

Работает где угодно, просто добавьте RAM

У меня есть этот мысленный тупик по поводу имени Электрон. Я не совсем уверен, почему это так, но всякий раз, когда я пытаюсь вспомнить название этого вездесущего веб-фреймворка, мои маленькие серые клетки кричат ​​«Затмение», и, как я ни стараюсь, я не могу придумать правильное имя в нужный момент во время разговоров по вебинару.

Я думаю, что у меня есть теория, почему это происходит; мое подсознание пытается помешать мне перейти на темную сторону, чтобы использовать Electron для создания кроссплатформенных приложений.

Что плохого в использовании Electron?

Послушайте, нет ничего плохого в использовании Electron как такового. На самом деле я использовал Electron и создал приложение, которое, по сути, было веб-сайтом, инкапсулированным фреймворком и средой исполнения Electron. Но, тем не менее, он ненасытный поедатель. Он будет потреблять каждую часть ресурсов ОЗУ и ЦП вашего компьютера, если он будет предоставлен его собственным устройствам. Если вы мне не верите, просто поищите в Интернете «электронные проблемы».

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

pexels markus spiske 177598 1

Веб-разработчик не обязательно является разработчиком приложения

Возникает пара проблем. За кулисами почти каждого приложения Electron скрывается зверь, которым является Node.js — создатель NPM, диспетчера пакетов узлов. NPM — это превосходный репозиторий надстроек, компонентов, модулей и экономящих время Nodestuff. Разработчики Electron / Node могут получить пакет практически для всего. Если вы веб-разработчик, обладающий некоторыми знаниями JavaScript, NPM может позволить вам втягивать компоненты, чтобы сэкономить массу работы.

Разве использование NPM немного похоже на установку компонентов Delphi?

Ну да, это так. За исключением одного очень специфического различия: Delphi компилируется в собственный код с помощью оптимизирующего компилятора. Если вы включаете 1000 пакетов узлов — либо намеренно из-за некоторой формы чрезмерного оптимизма, либо непреднамеренно из-за того, что один пакет зависит от другого, который зависит от других пяти, которые все зависят от других шести пакетов, — тогда у вас будет 1000 пакетов узлов в вашем приложение, даже если все, что оно делает, это отображает страницу с мигающим пурпурным словом « привет, мир ».

Если вы сделаете то же самое в приложении Delphi, вы получите много ненужного мусора, но компилятор Delphi и механизм связывания исключат огромное количество вещей, которые вы втянули, но на самом деле не используются. Он не может полностью защитить вас от вас самих и ваших способов скопления компонентов на кухне, но он определенно избавит вас от создания приложения Gigagbyte, когда ему нужно всего несколько МБ.

Младший код — следующая большая вещь

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

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

У нас даже есть мастер минимального кода FireMonkey для RAD Studio, так что это не совсем уж ужасная идея.

Но подождите …

Визуальное развитие — это что-то новое?

Я достаточно взрослый, чтобы быть программистом, который научился программировать в 1970-х и 1980-х годах. Я написал свое первое приложение для денег, рекламный текстовый баннер, в 1979 году. Это был текст, потому что всебыл текст. Ни мышей, ни указателей, ни окон, ни каталогов / папок — ни MS-DOS, ни Windows. Я продолжал зарабатывать на жизнь написанием COBOL, а затем, более поздние программы на C, все проделывали «трудный путь» с Vi, Edit или EdLin (да, я действительно знаю, как выйти из VIM). Первые три месяца в качестве разработчика COBOL нам, младшим программистам, приходилось писать наши программы на листах кодирования COBOL — буквально на листах бумаги, написанных ручкой. Мы носили белые лабораторные халаты, потому что вычисления были наукой, а ученые работали в лабораториях. Затем у нас появились «терминалы», чтобы мы могли набирать код сами. Никаких лабораторных халатов, хотя нам внезапно пришлось носить костюмы-тройки, поскольку теперь мы были «бизнесом», а деловые люди носили костюмы.


Так было, с небольшими вариациями, следующие 12 лет или около того. Серьезно, единственным «визуальным развитием» была нарисованная от руки блок-схема.

pexels pixabay 257881

Microsoft спешит на помощь

Затем появился Visual Basic. Он был великолепен, но был медленным, как слизняк на пивном фестивале, и был скомпилирован в слой псевдокода, а не на сверхскоростной скорости нативной сборки или программ на языке C. Эта интерпретирующая природа также породила проблему, называемую «адом DLL», когда среды выполнения, которые сделали возможными крошечные программы Visual Basic, имели бы несколько версий, несовместимых друг с другом, и приводили к отсутствию точек входа в функции, которые было чертовски трудно разрешить. Кроме того , VB полагались на много на VBX и OCX элементах управления , которые добавлены функции, часто делать довольно простые , но необходимые вещи , пропавшие из выполнения — но они тоже могут отличаться от одного ожидаемых вашего приложения, часто способы , которые были фатальными для ваших плохая программа.

Разве это не похоже на ситуацию с Electron? Это также немного похоже на ранние дни Dot Net: « это приложение требует Dot Net Runtime XYZ, загрузите его сейчас » — что означало загрузку 500 МБ; вы можете спокойно начать его загрузку и пойти на обед, пока он это делает.

Интернет — это всего лишь ребенок

Ваша программа на VB может быть действительно крошечной. Но это крошечное приложение фактически использовало огромную установку среды выполнения Visual Basic и множество артефактов установки VBX / OCX. Это было еще тогда, когда модемы считались быстрыми, если они выходили на 56K на стандартной телефонной линии. Если вам не повезло, ваш модем был только 1200/1200 или 2400 скоростей. Загрузка пяти мегабайт была медленной, утомительной и разочаровывающей, особенно если ваша мама взяла трубку, чтобы позвонить тете Гертруде на полпути.

factsheet 2
This was the advert! (Source: Marco Cantu’s Website)

Реклама журнала изменила мою жизнь

Затем, однажды в 1995 году, я случайно просматривал компьютерный журнал (который на самом деле был напечатан на настоящей бумаге, то есть в те дни) и увидел рекламу этой новой системы под названием Delphi, которая позволила бы вам создавать свои программы. путем перетаскивания визуальных элементов в формы » — немного похоже на то, как вы могли это сделать в Visual Basic, — за исключением того, что это было основано на невероятно быстром оптимизирующем компиляторе и компоновщике, которые могли создавать собственный код без необходимости растущей среды выполнения и, по сути, невосприимчив к аду DLL, который преследовал меня — и многие тысячи других — работая с Visual Basic.

Я заказал копию Delphi 1 в день ее выпуска. У меня все еще есть квитанция.

Привет, мир, путь низкого кода — в 1990-е годы

Итак, с этим новым Delphi вам пришлось потратить некоторое время на изучение Pascal. Я думал, что это будет немного трудновато, но оказалось, что он не сильно отличался от BASIC или C.На самом деле в нем была простота использования BASIC со всеми профессионалами, близкая к металлической мощи C, при этом избегая многие из умопомрачительных эзотерических функций обоих.

Чтобы создать программу, которая показывала бы базовое окно с кнопкой на нем, которая говорила «привет, мир», когда вы нажимали на нее, потребовалась одна строка написанного кода. Visual Basic был похож, пока все хорошо.

Затем я скомпилировал приложение Delphi и при его запуске понял, что оно будет запускаться из любого места на компьютере — или на любом другом компьютере — без предварительной установки.

Тогда у нас не было USB-накопителей. Дискета по-прежнему правила миром как инструмент выбора, позволяющий взять программу, написанную вами на одном компьютере, и установить ее на другом. Я мог скопировать приложение на дискету, а затем передать его на компьютер коллеги и запустить с дискеты, и все это, ВООБЩЕ ничего не устанавливая на его машину. Это был не просто низкий код — это была и нулевая установка.

Вы не могли сделать это с помощью программы Visual Basic, если на другом компьютере не была установлена ​​среда выполнения Visual Basic.

advert

Низкий код, метод без установки все еще работает для Delphi

Ветер вперед на пару десятков лет. Сегодня у меня есть довольно популярное клиент-серверное приложение, которое достаточно полно для целевого рынка и наполнено функциями. Он подключается к базе данных MySQL и «обращается» к специально написанной (мной в Delphi) службе Windows для маршалинга и лицензирования данных.

Приложение, укомплектованное скомпилированными графическими ресурсами с несколькими разрешениями, скомпилированным прямым доступом к MySQL, шифрованием, созданием PDF-файлов и предварительным просмотром отчетов — с множеством функций, компилируется в готовое приложение размером 10 МБ. ДЕСЯТЬ мегабайт.

Серверная часть всего 917кб. Да меньше мегабайта .

Вы можете запустить все это с USB-накопителя, так как он по-прежнему не требует установки на стороне клиента.

Ваше современное приложение — раздутый монстр

Сравните мое 10-мегабайтное приложение Delphi с некоторыми из новых любимцев мира с низким кодом, особенно с Electron, и вы увидите, что у Delphi, оригинального ребенка с низким кодом, все еще есть много трюков. Это тот же набор уловок, который он всегда имел в своем репертуаре: простая и быстрая разработка на основе компонентов, головокружительно быстрый компилятор, компиляция в собственный код, который создает надежные приложения, которые работают и продолжают работать, пока операционная система и оборудование развивается.

Дельфи старомоден?

Что ж, RAD Studio Delphi не остается неизменной в безмятежные дни технологического бума 90-х; Помимо очевидной современности среды IDE, RAD Studio теперь добавляет мастер минимального кода FireMonkey FMX, чтобы дать вам преимущество в работе, отладчик REST, чтобы держать вас в курсе современного мира использования онлайн-сервисов, все больше и больше развертываний такие цели, как iOS, Android и Linux, а также Интернет. Рынок сторонних компонентов по-прежнему велик, и есть что-то, доступное практически для всего, что вы когда-либо хотели. Но, что еще лучше, компилятор и компоновщик следят за тем, чтобы, в отличие от плохого списка пакетов Electron Node, вы вводили только реальный код, который может быть выполнен, а не что-либо и все, только потому, что на него ссылается не что иное, как включаемый файл.


Будущее разработки программного обеспечения

Будущее разработки программного обеспечения выглядит так, как будто оно может включать некоторые пугающе точные функции «интеллектуального ИИ», такие как бета- версия проекта Copilot на данный момент . Copilot пытается угадать, какой код вы пытаетесь создать, а затем попытаться написать его для вас на основе того, на чем было обучено машинное обучение, в основном из общедоступных репозиториев.

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

Смогу ли меня когда-нибудь заменить программистом с искусственным интеллектом, владеющим навыками программирования с машинным обучением? Может быть. Хотя я слышал об этом раньше, на протяжении десятилетий я работал в этой отрасли. Реальность такова, что меня с гораздо большей вероятностью заменят аутсорсингом в какую-то страну, где стоимость жизни достаточно низкая, так что разница в том, на что они готовы работать, слишком велика для меня, чтобы я мог конкурировать.

Если они воспользуются Electron … я предсказываю, что покупатель вернется … в конце концов …


RAD Studio Delphi — это самый быстрый и эффективный способ создания приложений с минимальными усилиями. Превратите свои идеи в реальность, загрузив пробную версию сегодня.

See What's New in 12.2 Athens See What's New in 12.2 Athens Dev Days of Summer 2-24

Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

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

IN THE ARTICLES