Difference between revisions of "Lazarus For Delphi Users/ru"
Line 18: | Line 18: | ||
В меню '''Сервис''' выберите команду '''Преобразовать проект Delphi в проект Lazarus'''. Не стоит ждать, что так будет преобразовано абсолютно всё, тем не менее, это хорошее начало. Учтите, что средства Lazarus выполняют, в основном, преобразования в одном направлении. Если вам надо сохранить совместимость с Delphi (компилировать проект и в Delphi, и в Lazarus) рассмотрите использование [[XDev Toolkit]]. | В меню '''Сервис''' выберите команду '''Преобразовать проект Delphi в проект Lazarus'''. Не стоит ждать, что так будет преобразовано абсолютно всё, тем не менее, это хорошее начало. Учтите, что средства Lazarus выполняют, в основном, преобразования в одном направлении. Если вам надо сохранить совместимость с Delphi (компилировать проект и в Delphi, и в Lazarus) рассмотрите использование [[XDev Toolkit]]. | ||
=== Поддержка Юникод === | === Поддержка Юникод === | ||
− | Delphi до версии 2007 не поддерживала Юникод, а использовала кодировку Windows ANSI. | + | Delphi до версии 2007 не поддерживала Юникод, а использовала кодировку Windows ANSI. Юникод в кодировке UTF-16 поддерживается в Delphi с версии 2009. |
В Lazarus поддержка Юникод реализована раньше в кодировке UTF-8 (см. [[LCL_Unicode_Support/ru|Поддержка Юникод в LCL]]). | В Lazarus поддержка Юникод реализована раньше в кодировке UTF-8 (см. [[LCL_Unicode_Support/ru|Поддержка Юникод в LCL]]). | ||
+ | |||
== Delphi IDE -> Lazarus IDE == | == Delphi IDE -> Lazarus IDE == | ||
=== Проекты === | === Проекты === |
Revision as of 18:11, 26 January 2015
│
Deutsch (de) │
English (en) │
español (es) │
français (fr) │
日本語 (ja) │
한국어 (ko) │
português (pt) │
русский (ru) │
slovenčina (sk) │
Эта статья предназначена для тех, кто интересуется Lazarus и уже знает Delphi. Здесь описаны различия между ними.
Delphi -> Lazarus
Lazarus - среда быстрой разработки приложений (RAD), как и Delphi. Это значит, что она состоит из библиотеки визуальных компонентов и среды разработки (IDE). Библиотека компонентов Lazarus (LCL) похожа на библиотеку визуальных компонентов Delphi (VCL). Большинство модулей, классов и свойств Lazarus обладают такими же именами и функциями, как их аналоги в Delphi. Это делает относительно лёгким перенос приложений Delphi в Lazarus. Однако Lazarus не является 'клоном Delphi с открытым кодом', поэтому не следует ожидать 100%-ной совместимости.
Самые большие различия между Lazarus и Delphi
- код Lazarus полностью открыт
- Lazarus написан кроссплатформенным способом
- Lazarus использует компилятор Free Pascal (FPC)
FPC работает на 15 платформах. Однако не все пакеты и библиотеки FPC портированы на все платформы, поэтому Lazarus работает на:
- Linux (i386, x86_64)
- FreeBSD (i386)
- Mac OS X (powerpc, i386)
- Windows (i386, x86_64)
Работа над Lazarus, как и над этим текстом, не закончена. Мы всё время ищем новых разработчиков и технических писателей...
С чего начать перенос проекта Delphi в Lazarus
В меню Сервис выберите команду Преобразовать проект Delphi в проект Lazarus. Не стоит ждать, что так будет преобразовано абсолютно всё, тем не менее, это хорошее начало. Учтите, что средства Lazarus выполняют, в основном, преобразования в одном направлении. Если вам надо сохранить совместимость с Delphi (компилировать проект и в Delphi, и в Lazarus) рассмотрите использование XDev Toolkit.
Поддержка Юникод
Delphi до версии 2007 не поддерживала Юникод, а использовала кодировку Windows ANSI. Юникод в кодировке UTF-16 поддерживается в Delphi с версии 2009.
В Lazarus поддержка Юникод реализована раньше в кодировке UTF-8 (см. Поддержка Юникод в LCL).
Delphi IDE -> Lazarus IDE
Проекты
Главным в приложении Delphi является файл .dpr. Файл .dpr также содержит главный код программы Delphi и является местом, где среда разработки Delphi хранит сведения о соответствующих ключах компилятора и нахождении модулей. В приложении Lazarus есть файл .lpr, который также является основным файлом кода проекта на языке Pascal. Тем не менее, главным в проекте Lazarus является файл .lpi (Lazarus Project Information), который создаётся вместе с файлом .lpr. Все данные проекта (ключи компилятора, пути к модулям и т.п.) хранятся в файле .lpi. Поэтому важнейшим является файл .lpi. На большинстве платформ двойной щелчок по файлу .lpi открывает проект в среде разработки Lazarus.
Delphi хранит пути к модулям проекта в файле .dpr. Пример:
unit1 in 'path/Unit1.pas';
Такие пути со словом 'in' специфичны для Delphi, и не работают в Lazarus, поэтому не используйте их. Вместо этого в параметрах проекта (Проект->Параметры проекта...) на странице Параметры компилятора->Пути задайте пути к модулям, находящимся за пределами каталога проекта. Большинство путей к модулям задаются автоматически после добавления зависимости от какого-либо пакета. Например, во все стандартные проекты Lazarus LCL по умолчанию добавляется зависимость от пакета LCL, поэтому в каждом новом проекте Lazarus LCL (Проект->Создать проект...->Приложение) пути ко всем модулям LCL известны без вашего участия.
Delphi хранит параметры компилятора в файле .dpr (например, {$APPTYPE CONSOLE}). Lazarus игнорирует такую запись. Вместо этого используйте страницу Параметры компилятора в диалоге Параметры проекта.