Из Википедии, бесплатной энциклопедии
  (Перенаправлено из Lazarus (программное обеспечение) )
Перейти к навигации Перейти к поиску

Lazarus - это бесплатная кроссплатформенная визуальная интегрированная среда разработки (IDE) для быстрой разработки приложений (RAD) с использованием компилятора Free Pascal . Его цель - предоставить простую в использовании среду разработки для программистов, разрабатывающих язык Object Pascal, который максимально приближен к Delphi .

Разработчики программного обеспечения используют Lazarus для создания консоли с собственным кодом и приложений с графическим пользовательским интерфейсом (GUI) для настольных компьютеров, а также для мобильных устройств, веб-приложений, веб-сервисов , визуальных компонентов и библиотек функций для ряда различных платформ, включая Mac, Linux. и Windows.

Приложение, созданное с использованием Lazarus на одной платформе, обычно может компилироваться и выполняться на любой платформе, для которой существует компилятор Free Pascal. Для настольных приложений единый источник может быть нацелен на Mac, Linux и Windows с небольшими изменениями или без них. Примером является сама Lazarus IDE, созданная из единой базы кода и доступная на всех основных платформах, включая Raspberry Pi .

Особенности [ править ]

Lazarus предоставляет среду разработки с высокой степенью визуализации для создания богатых пользовательских интерфейсов, логики приложений и других вспомогательных артефактов кода, аналогичных Borland Delphi . Помимо функций управления проектами, Lazarus IDE также предоставляет:

  • Визуальный дизайнер макетов окон A What You See Is What You Get ( WYSIWYG )
  • Виджеты графического интерфейса пользователя или визуальные компоненты, такие как поля редактирования, кнопки, диалоговые окна, меню и т. Д.
  • Невизуальные компоненты для общего поведения, такого как сохранение настроек приложения
  • Компоненты подключения к данным для MySQL , PostgreSQL , FireBird , Oracle , SQLite , Sybase и др.
  • Набор виджетов с поддержкой данных, который позволяет разработчику видеть данные в визуальных компонентах в конструкторе, что помогает при разработке.
  • Интерактивный отладчик кода
  • Автозавершение кода
  • Шаблоны кода
  • Подсветка синтаксиса
  • Контекстно-зависимая помощь
  • Менеджер текстовых ресурсов для интернационализации (интернационализации)
  • Автоматическое форматирование кода
  • Возможность создавать собственные компоненты

Кросс-платформенная разработка [ править ]

Взаимодействие библиотек классов и наборов виджетов в Lazarus и Free Pascal

Lazarus использует Free Pascal в качестве внутреннего компилятора. Следовательно, Lazarus теоретически можно использовать для разработки приложений для всех платформ, поддерживаемых Free Pascal .

Lazarus предоставляет кросс-платформенную платформу приложений, называемую Lazarus Component Library (LCL), которая предоставляет единый унифицированный интерфейс для программистов с различными реализациями для конкретных платформ. Используя LCL, можно создавать приложения с однократной записью, компилировать где угодно , если явно не используются системные функции.

Кросс-компиляция [ править ]

Поскольку Free Pascal поддерживает кросс-компиляцию , приложения Lazarus могут быть кросс-скомпилированы из Windows в Linux / macOS и т. Д. И наоборот.

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

Библиотека компонентов Lazarus [ править ]

Архитектура библиотеки компонентов Lazarus

Стандартная среда приложений, Lazarus Component Library (LCL), изначально была смоделирована после Visual Component Library (VCL) в Delphi 6, но, в отличие от Delphi, не ограничивается операционными системами Microsoft Windows . Это делается путем разделения определения общих виджетов классов и их widgetset Определённых реализаций. Каждый набор виджетов поддерживается за счет предоставления интерфейса, который напрямую взаимодействует с набором. [1]

Разработка базы данных [ править ]

Разработчики могут устанавливать пакеты, которые позволяют Lazarus поддерживать несколько систем управления базами данных (СУБД). Программы могут взаимодействовать с СУБД через код или компоненты, помещенные в форму.

Из коробки поддерживаются следующие СУБД:

  • dBase и FoxPro , поддерживаемые компонентом TDbf
  • InterBase / Firebird . См. [1]
  • Microsoft SQL Server и Sybase ASE . См. [2]
  • MySQL и MariaDB . См. [3]
  • Базы данных ODBC . См. [4]
  • Oracle . См. [5]
  • PostgreSQL . См. [6]
  • SQLite . См. [7]
  • Простые локальные базы данных с плоскими файлами через TBufDataset, TMemDataset и TSdfDataset.

Отличия от Delphi [ править ]

Несмотря на то, что он во многом похож на Delphi , есть несколько ограничений в отношении производительности и набора функций, в том числе:

  • В Windows размер исполняемого файла по умолчанию больше, чем у эквивалента Delphi 6 или Delphi 7, поскольку Lazarus хранит отладочную информацию внутри исполняемого файла, а не в виде отдельных файлов. Начиная с версии 0.9.30 Lazarus поддерживает внешние символы отладки; размер файла программы можно значительно уменьшить (с помощью параметров компилятора), используя внешний файл символов или используя Unix Strip.
  • Компоненты для Delphi могут быть преобразованы для работы в Lazarus, что может быть сложным, но с момента выхода 0.9.30 стало меньше, на основе FP 2.4.x
  • Отсутствие Datasnap (не публично документированная система, проприетарная корпоративная функциональность Embarcadero )
  • Сеть в основном доступна
  • Нет поддержки для прямого вызова библиотек .NET. Код Object Pascal можно вызывать из программного обеспечения .NET. [2]
  • Отсутствует поддержка динамически загружаемых пакетов.
  • Не полностью совместим с VCL. Как упоминалось ранее, это сделано намеренно, хотя набора виджетов LCL должно хватить для большинства приложений. Но это делает недоступным без преобразования глубокий репозиторий доступных виджетов VCL. Работа по преобразованию в основном включает в себя некоторое редактирование, хотя есть несколько фундаментальных отличий. При переносе отсутствующие модули в библиотеках (и ранее отсутствие поддержки COM) представляют собой значительно большую проблему, чем несовместимость между LCL и VCL.
  • Поддержка COM отсутствовала до версии 2.2.0.
  • Связь с Microsoft Office была недоступна до выпуска FPC 2.6.0. С FPC 2.6.0 и выше можно открыть Excel с простой заполненной таблицей.

Распространение и лицензирование [ править ]

Как и Free Pascal , Lazarus - бесплатное программное обеспечение . Различные части распространяются под разными лицензиями бесплатного программного обеспечения , включая GPL , LGPL , MPL и модифицированную версию LGPL. [3]

В частности, LCL, который статически встроен в производимые исполняемые файлы, лицензируется в соответствии с модифицированной версией LGPL, предоставляя дополнительные разрешения, позволяющие статически встраивать его в производимое программное обеспечение, в том числе проприетарное .

Установка пакета времени разработки эквивалентна связыванию с IDE, поэтому распространение Lazarus IDE с несовместимым с GPL пакетом времени разработки, например , предварительно установленными пакетами JEDI, лицензированными под Mozilla Public License , приведет к нарушению лицензии. Это не запрещает разработку проприетарных пакетов с помощью Lazarus.

История [ править ]

Первая попытка разработать визуальную среду IDE для Free Pascal была предпринята в 1998 году под названием «Проект Megido». По разным причинам этот подход не удался. Затем некоторые из разработчиков Megido начали новый проект, основанный на более гибкой основе.

Первая предварительная версия LCL была готова к выпуску в 2001 году, а в 2003 году первая бета-версия Lazarus (0.9.0.3) была размещена на SourceForge . Первая финальная версия Lazarus (1.0) была выпущена в 2012 году, а значительно улучшенная версия Lazarus 1.2 была выпущена в 2014 году. По состоянию на март 2014 года с SourceForge было выполнено более четырех миллионов загрузок.

Название «Lazarus» намекает на возрождение концепции Megido. Он вдохновлен Лазарем из Вифании , который, согласно Евангелию от Иоанна , был восстановлен к жизни на Иисусе через четыре дня после его смерти.

Версии [ править ]

Легенда:
Старая версия
Старая версия, все еще поддерживается
Последняя версия
Последняя предварительная версия
Будущий выпуск

Примеры приложений, созданных с помощью Lazarus [ править ]

  • ASuite - это бесплатная программа запуска приложений с открытым исходным кодом для Windows. Начиная с версии 2.0 Alpha 2, он полностью написан на Lazarus / FPC.
  • Beyond Compare - это утилита для сравнения данных для Windows, macOS и Linux. Версии для macOS и Linux скомпилированы с использованием Lazarus / FPC.
  • Cartes du Ciel - бесплатнаяпрограмма- планетарий для Linux, macOS и Windows. Программа отображает и маркирует большинство созвездий, планет и объектов, которые вы можете увидеть в телескоп. Он полностью написан на Lazarus / FPC и выпущен под лицензией GPL.
  • C-evo - это пошаговая стратегическая игра с открытым исходным кодом , перенесенная с Delphi на Lazarus. [7]
  • Cheat Engine - это сканер памяти / шестнадцатеричный редактор / отладчик с открытым исходным кодом. Это полезно для читерства в компьютерных играх. Начиная с версии 6.0 он компилируется с помощью Lazarus / FPC.
  • EPANET , программный пакет для моделирования водораспределительных систем.
  • HNSKY , Hallo Northern Sky - это бесплатная программа- планетарий для Windows и Linux. Начиная с версии 3.4.0 написан и скомпилирован с помощью Lazarus / FPC.
  • MyNotex - это бесплатное программное обеспечение для GNU / Linux, полезное для создания текстовых заметок и управления ими.
  • Peazip - это архиватор с открытым исходным кодом, созданный с помощью Lazarus / FPC.
  • TorChat уходит от Python и переписывается на Lazarus + Free Pascal.
  • Total Commander 64-битная версия. [8]
  • Double Commander - это кроссплатформенный файловый менеджер с открытым исходным кодом, в котором две панели расположены рядом. Он вдохновлен Total Commander и содержит некоторые новые идеи. [9]
  • CudaText - кроссплатформенный текстовый редактор с открытым исходным кодом.
  • Coedit (переименован в Dexed ) является IDE для языка программирования D .
  • SimThyr - это программа непрерывного моделирования гомеостаза щитовидной железы .
  • Tomboy-ng , в настоящее время активное проявление Tomboy .

Примеры библиотек Delphi, совместимых с Lazarus [ править ]

  • GLScene - это бесплатная библиотека на основе OpenGL, которая предоставляет визуальные компоненты и объекты, позволяющие описывать и визуализировать 3D-сцены.
  • OpenWire - это библиотека с открытым исходным кодом, которая позволяет свойствам типа вывода устанавливать соединения между компонентами LCL, подобно LabVIEW или Agilent VEE .

См. Также [ править ]

  • Бесплатный компилятор Паскаля
  • Дев-Паскаль
  • Сравнение IDE Pascal
  • Embarcadero Delphi
  • Object Pascal

Ссылки [ править ]

  1. ^ См. Внутреннее устройство LCL .
  2. ^ «Использование библиотек Pascal с .NET и Mono» . Lazarus вики . Проверено 28 февраля 2021 года .
  3. ^ « » Файл COPYING.txt «из хранилища онлайн исходного кода» .
  4. ^ Lazarus 1.6 на http://forum.lazarus.freepascal.org
  5. ^ Lazarus 1.8.4 на http://forum.lazarus.freepascal.org
  6. ^ "Lazarus 2.0 исправляет ветку" . Lazarus Wiki . Проверено 28 февраля 2021 года .
  7. ^ Сайт порта c-evo Lazarus
  8. ^ "На каком языке написано TC ??" . Ghisler.ch. 2010-08-09 . Проверено 11 августа 2016 .
  9. ^ sourceforge.net .

Дополнительные ссылки [ править ]

  • Михаэль ван Каннейт; Флориан Клемпфл (2012), Free Pascal (Free Pascal 2 ed.), Computer & Literatur Verlag GmbH, ISBN 978-3936546729, ПР  25421359М , 393654672Х
  • Михаэль ван Каннейт; Маттиас Гертнер; Свен Хайниг; Фелипе Монтейро де Карвалью; Инусса Уэдраого; Йорг Браун (2011), Лазарус , Бёблинген, Германия: Computer & Literatur Verlag GmbH, OL  25426539M
  • Михаэль ван Каннейт; Маттиас Гертнер; Свен Хайниг; Фелипе Монтейро де Карвалью; Инусса Уэдраого (2011), Лазарь - полное руководство , Журнал Blaise Pascal, OL  25427992M

Внешние ссылки [ править ]

  • Домашняя страница Lazarus
  • О Lazarus
  • Домашняя страница проекта на SourceForge.net
  • Проект документации Lazarus
  • Получите загрузки хостинга Lazarus
  • Учебный центр Lazarus