Как стать автором
Обновить

Lazarus IDE для аналитика

Уровень сложностиПростой

Кому адресованы материалы

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

Почему выбрана Lazarus IDE

Lazarus IDE - это открытая среда программного обеспечения для компилятора Free Pascal. Одним из важных аспектов является то, что язык программирования Free Pascal не только прост в использовании, но и поддерживает множество функций, характерных для современных языков программирования. Кроме того, имеется возможность использования богатого набора библиотек и пакетов, охватывающих различные области, такие как графика, базы данных, сетевые технологии, веб-разработка и т.п. И конечно одним из самых важных аргументов использования среды Lazarus является то, что язык Free Pascal и сама среда разработки не перестают развиваться. На странице дорожной карты проекта можно ознакомиться с информацией об уже реализованных функциях и планами на будущие версии.

Lazarus IDE реализует технологию RAD, и по этой причине она очень удобна для разработчиков, работающих в одиночку или небольших команд, которые создают "несложные" приложения. Стоит отметить, что среда подходит для создания приложений различного уровня сложности и направленности, оценить ее потенциал можно ознакомившись с перечнем проектов, реализованных с ее помощью.

Варианты установки среды разработки

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

В среде Lazarus возможно настроить кросс-компиляцию для различных платформ. Например, настроить сборку 32-разрядного приложения на 64-разрядной операционной системе Windows. Для этого необходимо скачать дополнение среды со страницы Lazarus на SourceForge.net, где необходимо выбрать папку с версией IDE, которая уже установлена. Далее выбрать и скачать дистрибутив самого дополнения (файл, у которого имя будет оканчиваться на ...cross-i386-win32-win64.exe).

После установки дополнения, в параметрах проекта необходимо будет выбыть целевую платформу win32 и процессор i386, после чего будет осуществляться сборка уже 32-разрядного приложения.

Рис 1. Настройка целевой платформы для проекта
Рис 1. Настройка целевой платформы для проекта

В случае же, если необходимо настроить кросс-компиляцию приложения под другие платформы, например для Linux на платформе ARM, можно воспользоваться утилитой Fpcdelux , которая автоматически осуществит скачивание, сборку необходимой конфигурации среды Lazarus и настройку кросс-компиляции.

Автоматическая установка Lazarus IDE с использованием Fpcupdeluxe

Fpcdeluxe - графический установщик для FPC и Lazarus IDE, он основан на fpcup, его назначение - предоставить пользователю простой и понятный интерфейс для инструментов установки и обновления нескольких версий FPC и Lazarus IDE в автономном режиме. Это означает, что вы можете установить несколько версий FPC и Lazarus IDE вместе, кроме того, вы можете выбрать какие компиляторы необходимо поставить и для каких платформ.

File:fpcupdeluxe.png

Графический интерфейс программы позволяет выбрать рабочую и целевую платформу, и в автоматическом режиме будет произведено скачивание, установка и настройка нужной конфигурации. Такой вариант удобно использовать если, например пишется приложение для исполнения в среде Linux под ARM процессор, на машине с Linux на x86 архитектуре.

Последнюю версию приложения можно скачать со страницы репозитория Releases · LongDirtyAnimAlf/fpcupdeluxe · GitHub.

Перечень учебных материалов

Среда разработки Lazarus обладает обширной справочной информацией, предоставляемой сообществом, которая включает в себя учебник для начинающих и детальное описание интерфейса.
Кроме того, в сети интернет имеется ряд других материалов, на которые стоит обратить свое внимание:

Дополнительные перечень книг и материалов можно найти на сайте freepascal.ru в разделе Публикации / Книги.

Рекомендации по настройке и использованию среды

Подробную информацию по функциям интерфейса и горячим клавишам можно получить в материалах на WIKI страница инструментов Lazarus. Ниже приведены некоторые настройки и инструменты, на которые хотелось бы обратить дополнительное внимание.

Включение отображение контура

Этот параметр находится в диалоговом окне Сервис → Параметры → Редактор → Отображение → Подсветка и соответствия → Отображать контур блока(глобально). Опция выделяет ключевые слова Pascal вместе со своими операторными (begin-end) скобками в редакторе кода, что позволяет видеть вложенность больших блоков.

Настройка и использование шаблонов кода

Шаблоны кода — это текст типового кода, который можно быстро вставить в код текущего модуля, используя соответствующее сокращение. Например, вы можете набрать 'cl' в редакторе исходного кода, а затем нажать комбинацию клавиш Ctrl+J, чтобы вставить один или несколько кодовых шаблонов, начинающихся с 'cl'.

Чтобы посмотреть существующие или добавить собственные шаблоны кода, необходимо открыть диалоговое окно "Шаблоны кода", выбрав Сервис → Шаблоны кода ... из главного меню. Код шаблона может содержать макрос, который автоматически обработается при вставке текста шаблона в код. Необходимо проверить включено ли использование макроса для тех шаблонов, которые вы планируете использовать.

Автоматическое завершение объявления переменной

Существует мнение, что синтаксис Free Pascal неудобен и сложен для восприятия, и это относят к недостатку данного языка. Особенно много вопросов возникает к способу объявления новых переменных. Создавать новую переменную в Pascal можно только в заголовках функции или процедуры, а по аналогии с такими языками программирования как C++ или C# и видно, что удобно ассоциировать переменные с данными в момент их создания, непосредственно в теле кода функции или процедуры. Например, при работе с большими функциями, неудобно постоянно прокручивать код вверх и вниз для добавления переменных.

На выручку может прийти прекрасная функция автозавершения объявления переменной, которая является частью функции IDE - завершения кода, и она автоматически добавляет определение локальной переменной для [оператора] Identifier:=Term [(Идентификатор:=Выражение)]. Функция вызывается, когда курсор находится на идентификаторе присвоения или самом параметре, с помощью сочетания клавиш Crtl+Shift+C . Кроме того, автозавершения кода можно использовать для создания процедуры и функции геттера и сеттера для объявленного свойства.

Подробное описание работы функции автозавершения приведено в разделе описания на WIKI странице Lazarus IDE Tools/ru - Free Pascal wiki.

Настройка параметров сборки для уменьшения размера исполняемого файла

Для проекта может быть настроено несколько режимов сборки. В большинстве случаев достаточно будет двух режимов, которые можно создать автоматически. Для того, чтобы сформировать режимы сборки проекта Debug и Release в диалоговом окне настроек, необходимо выбрать пункт Параметры компилятора, а далее нажать кнопку […] напротив списка Режимы сборки. После чего откроется окно режимов сборки, где достаточно нажать кнопку — «Создать режимы отладочной и конечной сборки» и Lazarus автоматически добавит в список два новых режима. Вариант сборки по умолчанию (Default) можно удалить, в результате чего останется два режима Debug и Release.

31c58d4fe2b3dc3e03507ebb9a98e222.png

Переключение режимов сборки осуществляется в инструментальной панели с помощью кнопки «Сменить режим сборки». Режим Release исключит добавление отладочной информации в файл и улучшит оптимизацию, что позволит существенно уменьшить размер исполняемого файла.

20decaa972b9bdf1a95a4fa08c714e03.png

Добавление пользовательских инструментов на примере UPX

По теме уменьшения размера исполняемого файла в статье Уменьшение размера исполняемого файла в Lazarus (delphi-devs.ru) имеется детальное описание некоторых способов, среди которых стоит отметить использование утилиты UPX для сжатия скомпилированного исполняемого файла. Вы можете использовать UPX из командной строки или из графического интерфейса. Чтобы сжать исполняемый файл с помощью UPX, достаточно выполнить команду upx --best --lzma your\_executable.exe, где your_executable.exe - имя вашего файла. Сжатие позволит уменьшить размер исполняемого файла на 70% и более.

Для удобства использования, команду сжатия можно добавить в качестве пункта меню через настройку внешних средств Сервис → Настроить внешние средства... В диалоговом окне управления внешними средствами добавить новое средство, а в окне настройки средства - указать путь к приложению UPX и в качестве параметров указать строку -9 --compress-icons=0 $TargetFile().

Сопутствующие инструменты

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

Часть инструментов была представлена в статье - Инструменты системного аналитика: методология, софт, сервисы / Хабр, а ниже приведена информация о дополнительных инструментах, которые должны помочь в разработке.

Онлайн-редактор иконок в формате ICO

Файлы ICO — это формат хранения значков в операционной системе Windows. Для разрабатываемого приложения часто нужно создать иконки самого приложения, его файлов проектов или документов. Один из способов создать ICO файл с набором изображений под разные разрешения — это использовать онлайн-редактор иконок RedKetchup. Это бесплатный и простой в использовании инструмент, который позволяет вам создавать и редактировать иконки прямо в вашем браузере. Редактор отличает простота создания ICO файла на основе подготовленных изображений.

Шрифты для хранения изображений

При проектировании визуальной составляющей приложения часто приходится использовать пиктограммы или значки на элементах формы, кнопках или в тексте. Для того, чтобы не использовать графические изображения, готовые или специально создавать их, можно использовать осмысленные символы из стандарта кодирования символов Юникод (Unicode). Стандарт имеет большой набор различных символов, имеющих графическое представление в виде различных маленьких значков. Подбор символа можно осуществить с помощью онлайн сервиса - https://symbl.cc/ или Таблица символов Юникода (rapidtables.org) При использовании символов Юникода в строках нужно быть осторожным при использовании различных преобразований. Например, простая строка может не поддерживать размещение символов Юникода, но формат расширенной строки будет поддерживать такое размещение.

Шрифты Unicode — не единственный способ использования значков c помощью шрифта. Во многих случаях может быть создан собственный шрифт, содержащий значки. Графика, нарисованная в векторном формате может быть упакована в шрифт. Затем на элементах формы могут быть использованы символы из этого шрифта, таким образом, ресурсы будут храниться внутри шрифта и могут использоваться в любом месте приложения или в нескольких приложениях из комплекса.

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

Сервисы генерация собственных шрифтов с пиктограммами

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

  1. Fontello: Fontello предлагает простую платформу, которую вы можете использовать для создания своего собственного шрифта с иконками. Чтобы создать свой шрифт с иконками, просто перетащите файлы SVG с компьютера и отпустите их в области, расположенной под заголовком “Custom Icons”.

  2. Fontastic: Fontastic предлагает более 9000 векторных иконок, которые вы можете использовать для создания своего шрифта с иконками. Вы можете добавлять или изменять иконки, а также управлять всеми своими проектами в одном месте.

  3. Iconmoon: Iconmoon предлагает более 45000 бесплатных векторных иконок, которые вы можете использовать для создания своего шрифта с иконками. Вы можете настроить цвет, размер и форму каждой иконки, а также экспортировать свой шрифт в различных форматах.

Утилита просмотра Буфера обмена - Free Clipboard Viewer

Free Clipboard Viewer - это программа, для просмотра информации, которая хранится в памяти при использовании функций копирования и вырезания в рамках работы в операционной системе Windows. Она автоматически обновляет отображаемую информацию при изменении содержимого буфера обмена. Основная функция программы обеспечивает возможность просмотра всех доступных форматов представления скопированной в буфер обмена информации. Можно просматривать содержимое буфера обмена, его размер и описание для каждого формата.

SMath Studio: Система компьютерной алгебры

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

При разработке алгоритмов программы может потребоваться создание алгоритмов сложных математических вычислений. Написание алгоритма в коде может быть непростой задачей, поскольку алгоритм будет являться непонятным, неудобными или ненаглядными, и требовать от программиста значительных усилий в написании и отладки кода. В этом случае может SMath оказаться полезной, она позволит предварительно проработать алгоритм вычислений, предоставляя возможность работы с понятными математическими выражениями и формулами, проводить вычисления и отрабатывать необходимые итерации алгоритма расчета. После того, как алгоритм расчета будет готов и выверен, его уже проще перевести в функцию или процедуру на языке Pascal. SMath Studio доступна как в десктопном варианте, так и в онлайн формате, и имеет большое сообщество пользователей.

Инструмент создания дистрибутива
Inno Setup — это инструмент для создания установочных пакетов в Windows. Он позволяет разработчикам создавать профессиональные установщики для программ.

Inno Setup предлагает широкий спектр функций, включая создание ярлыков, установку файлов и папок, создание деинсталляторов и многое другое. Программа также поддерживает скрипты на Pascal, что позволяет гибко настраивать поведение установщика и добавлять дополнительные функции.

По сравнению с аналогичным инструментом Nullsoft Scriptable Install System (NSIS) - Inno Setup позволяет реализовывать более сложные и гибкие пакеты установки.

Заключение

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

Теги:
Хабы:
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.