stringtranslate.com

Делфи (программное обеспечение)

Delphi — это язык программирования общего назначения и программный продукт, который использует диалект Delphi языка программирования Object Pascal и предоставляет интегрированную среду разработки (IDE) для быстрой разработки приложений для настольных, мобильных , веб-приложений и консольного программного обеспечения . в настоящее время разрабатывается и поддерживается Embarcadero Technologies .

Компиляторы Delphi генерируют собственный код для Microsoft Windows , macOS , iOS , Android и Linux ( x64 ). [4] [5] [6]

Delphi включает в себя редактор кода, визуальный дизайнер, встроенный отладчик, компонент управления исходным кодом и поддержку сторонних плагинов . Редактор кода включает функции Code Insight ( завершение кода ), Error Insight (проверка ошибок в реальном времени) и рефакторинг . Разработчик визуальных форм может использовать либо библиотеку визуальных компонентов (VCL) для разработки исключительно под Windows, либо платформу FireMonkey (FMX) для кроссплатформенной разработки. Поддержка базы данных является ключевой функцией и обеспечивается FireDAC (компоненты доступа к базе данных). Delphi известен своей высокой скоростью компиляции, собственным кодом и продуктивностью разработчиков. [ нужна цитата ]

Delphi изначально был разработан компанией Borland как инструмент быстрой разработки приложений для Windows в качестве преемника Turbo Pascal . Delphi добавила к существующему языку полное объектно-ориентированное программирование , и язык стал поддерживать дженерики, анонимные методы , замыкания и встроенную поддержку объектной модели компонентов (COM).

Delphi и его аналог C++ , C++Builder , совместимы и продаются совместно под названием RAD Studio. Существуют версии Professional, Enterprise и Architect, причем более высокие версии имеют больше функций по более высокой цене. Существует также бесплатная версия Community с большинством функций Professional, но предназначенная только для пользователей и компаний с низким доходом. [7]

Функции

Delphi поддерживает быструю разработку приложений (RAD). Важными функциями являются визуальный дизайнер и две платформы приложений : VCL для Windows и FireMonkey (FMX) для кроссплатформенной разработки.

Delphi использует язык программирования Object Pascal на основе Pascal , созданный Андерсом Хейлсбергом для Borland (ныне IDERA) в качестве преемника Turbo Pascal. Он поддерживает встроенную кросс-компиляцию для многих платформ, включая Windows, Linux, iOS и Android.

Чтобы лучше поддерживать разработку для Microsoft Windows и взаимодействовать с кодом, разработанным с помощью других инструментов разработки программного обеспечения, Delphi поддерживает независимые интерфейсы модели компонентных объектов (COM) с реализациями классов с подсчетом ссылок , а также поддержку многих сторонних компонентов. Реализации интерфейса можно делегировать полям или свойствам классов. Обработчики сообщений реализуются путем пометки метода класса целочисленной константой обрабатываемого сообщения. [ нужна цитата ]

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

Более поздние версии включали обновленные и расширенные библиотеки времени выполнения, некоторые из которых были предоставлены группой сообщества FastCode .

Характеристики

Delphi использует строго типизированный язык программирования высокого уровня , простой в использовании и изначально основанный на более раннем языке Object Pascal. Первоначально Паскаль разрабатывался как язык общего назначения, «подходящий для выражения фундаментальных конструкций, известных в то время, в краткой и логичной форме», и «его реализация должна была быть эффективной и конкурентоспособной с существующими компиляторами FORTRAN» [8] , но без низкой производительности. средства программирования на уровне или доступ к оборудованию. Turbo Pascal и его потомки, включая Delphi, поддерживают доступ к аппаратному обеспечению и низкоуровневому программированию с возможностью включения кода, написанного на ассемблере и других языках. Объектная ориентация Delphi предполагает только полиморфизм на основе классов и интерфейсов . [9] Метаклассы являются объектами первого класса. Объекты — это ссылки на объекты (как в Java ), которые Delphi неявно разыменовывает, поэтому обычно нет необходимости вручную выделять память для указателей на объекты или использовать аналогичные методы, которые необходимы в некоторых других языках. Существуют специальные типы строк с подсчетом ссылок, а также строки с нулевым завершением.

Строки можно объединить с помощью оператора «+», а не с помощью функций. Для выделенных типов строк Delphi управляет памятью без вмешательства программиста. Начиная с Borland Developer Studio 2006, существуют функции для обнаружения утечек памяти .

Delphi включает интегрированную среду разработки. Все продукты Delphi поставляются с библиотекой времени выполнения (RTL) и библиотекой визуальных компонентов (VCL), включая большую часть исходного кода. Доступны сторонние компоненты (иногда с полным исходным кодом ) и инструменты для улучшения IDE или других задач разработки, связанных с Delphi, некоторые из которых бесплатны. IDE включает в себя графический интерфейс для локализации и перевода созданных программ, которые можно развернуть в переводчике; Для этой цели также существуют сторонние инструменты с большим количеством функций. Платформа VCL поддерживает высокий уровень совместимости исходного кода между версиями, что упрощает обновление существующего исходного кода до более новой версии Delphi. Сторонним библиотекам обычно требуются обновления от поставщика, но если предоставляется исходный код, перекомпиляции с использованием более новой версии может быть достаточно. VCL был одним из первых, кто внедрил внедрение зависимостей или инверсию контроля ; он использует повторно используемую модель компонентов, расширяемую разработчиком. С помощью помощников классов можно внедрить новые функциональные возможности в основные классы RTL и VCL без изменения исходного исходного кода RTL или VCL.

Компилятор оптимизирующий и является однопроходным . При желании его можно скомпилировать в один исполняемый файл , не требующий DLL . Delphi также может создавать стандартные библиотеки DLL, библиотеки ActiveX , серверы автоматизации COM и службы Windows .

IDE Delphi, начиная с Delphi 2005, все чаще поддерживают такие функции рефакторинга , как извлечение методов и возможность создавать модели UML из исходного кода или изменять исходный код посредством изменений, внесенных в модель.

У Delphi есть сообщества в сети , в которых активно участвуют и ее сотрудники.

Обратная совместимость

Delphi — один из языков, где обратная совместимость близка к 100%. Хотя каждая новая версия Delphi пытается сохранить как можно большую обратную совместимость , чтобы обеспечить повторное использование существующего кода, новые функции, новые библиотеки и улучшения иногда делают новые версии обратно совместимыми менее чем на 100%.

С 2016 года новые выпуски Delphi выходят каждые шесть месяцев, причем новые платформы добавляются примерно каждый второй выпуск. [10]

Рамки

Delphi предлагает две платформы для визуальной разработки приложений: VCL и FireMonkey (FMX):

Совместимость

Delphi и его аналог C++ , C++Builder , совместимы. Они используют многие основные компоненты, в частности IDE, платформы VCL и FMX, а также большую часть библиотеки времени выполнения . Кроме того, их можно использовать совместно в проекте. Например, C++Builder 6 и более поздние версии могут объединять исходный код Delphi и C++ в одном проекте, а пакеты, скомпилированные с помощью C++Builder, можно использовать из Delphi. В 2007 году эти продукты были выпущены совместно как RAD Studio, общий хост для Delphi и C++Builder, который можно приобрести вместе с одним из них или с обоими. Начиная с Rio, существует также совместимость с Python.

Пример программы «Привет, мир»

программа ObjectPascalExample ; введите THelloWorld = процедура класса Put ; конец ;      процедура THelloWorld . Помещать ; начать Writeln ( «Привет, мир!» ) ; конец ;  вар HelloWorld : THelloWorld ; { это неявный указатель }   начать HelloWorld := THelloWorld . Создавать ; {конструктор возвращает указатель на объект типа THelloWorld } HelloWorld . Помещать ; Привет, мир . Бесплатно ; { эта строка освобождает объект THelloWorld, на который указывает HelloWorld } end .       

Обратите внимание, что конструкция объекта по-прежнему доступна в Delphi.

История

Использование в школах

Delphi — это среда, используемая для преподавания программирования в школах Южной Африки как предмета информационных технологий (ИТ). [11]

Дорожные карты

Embarcadero публикует «дорожные карты» с описанием своих планов на будущее. Самый последний из них был опубликован в ноябре 2020 года. [12] Версия 10.5, упомянутая в дорожной карте на ноябрь 2020 года, была переименована в 11.0.

Сопутствующее программное обеспечение

Известные сторонние библиотеки

Рекомендации

  1. ^ Ошибка: невозможно правильно отобразить ссылку. Подробности смотрите в документации .
  2. ^ «Примечания по установке — Требования к операционной системе» . Архивировано из оригинала 06 августа 2020 г. Проверено 05 сентября 2020 г.
  3. ^ Уильям Бьюкенен (4 февраля 2003 г.). Освоение программирования на Delphi. Пэлгрейв Макмиллан. стр. 10–. ISBN 978-1-137-17356-0.[ постоянная мертвая ссылка ]
  4. ^ «Сравнение производительности Delphi 2010 и XE6 (Часть 2)» . Риверсофт AVG. 12 мая 2014 года. Архивировано из оригинала 26 июля 2015 года . Проверено 9 марта 2016 г.
  5. ^ «Компьютерщик Delphi: создан для скорости» . Архивировано из оригинала 23 марта 2016 года . Проверено 9 марта 2016 г.
  6. ^ "Обсуждение в Hacker News о том, что Delphi жив" . Хакерские новости. Архивировано из оригинала 2 июля 2016 года . Проверено 9 марта 2016 г.
  7. ^ «Delphi: выпуски продуктов для разработки приложений» . Эмбаркадеро . Архивировано из оригинала 14 марта 2021 года . Проверено 13 марта 2021 г.Со ссылкой для скачивания Delphi Feature Matrix
  8. ^ «Воспоминания о разработке Паскаля» (PDF) . Архивировано (PDF) из оригинала 12 мая 2016 г. Проверено 12 января 2016 г.
  9. ^ Линфэн Ван; Кей Чен Тан (20 января 2006 г.). Разработка программного обеспечения современной промышленной автоматизации. Джон Уайли и сыновья. стр. 113–. ISBN 978-0-471-77627-7.
  10. ^ «Список функций языка Delphi и версия, в которой они были представлены/устарели». Переполнение стека. Архивировано из оригинала 28 февраля 2016 года . Проверено 9 марта 2016 г.
  11. ^ Штатный писатель. «Embarcadero Delphi названа языком разработки для южноафриканских школ». Архивировано из оригинала 31 марта 2022 г. Проверено 17 марта 2022 г.
  12. ^ «Комментарий премьер-министра к дорожной карте RAD Studio на ноябрь 2020 г.» . blogs.embarcadero.com. 17 ноября 2020 г. Архивировано из оригинала 28 ноября 2020 г. Проверено 27 ноября 2020 г.
  13. ^ "Студия Borland Enterprise". Архивировано из оригинала 5 февраля 2002 г. Проверено 5 февраля 2002 г.
  14. ^ «Киликс здесь!». Архивировано из оригинала 04 сентября 2019 г. Проверено 05 сентября 2020 г.
  15. ^ "Домашняя страница Free Pascal" . freepascal.org. Архивировано из оригинала 25 января 1999 г. Проверено 27 апреля 2016 г.

дальнейшее чтение

Внешние ссылки