Сравнение Delphi u Lazarus

Методы, подходы, принципы, интерфейс Lazarus и Delphi. Технические различия, ход установки и коммерческий доступ к продуктам среды визуального программирования. Установление дополнительных компонент программы, их совместимость с операционными системами.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 14.03.2012
Размер файла 4,1 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Муниципальное автономное общеобразовательное учреждение «Лицей №2»

lazarus delphi визуальный программирование

Сравнение Delphi u Lazarus

Работу выполнили:

Гойнов Константин

Зеленкин Михаил

г. Пермь 2012

Содержание

  • Введение
  • 1. Установка LAZARUS

2. Установка Delphi

3. Технические различия

Практическая часть

Заключение

Введение

Уже много лет Pascal является языком программирования, наиболее удобным для обучения, так как является структурированным, логичным, легко читаемым и понимаемым. Основной версией компилятора, применяемого для обучения данному языку, является Borland Pascal 7.0, который применяется в основном для создания консольных приложений. На основе Borland Pascal 7.0 разработана визуальная среда программирования Borland Delphi.

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

Мало кто знает, что последние 10 лет велась активная разработка альтернативы компилятору Borland Pascal, которая называется Free Pascal. Данный проект является полностью свободно распространяемым продуктом, и все заинтересованные программисты могут участвовать в его усовершенствовании.

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

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

Цель работы:

1) Самостоятельно изучить среды программирования Delphi и Lazarus.

2) Найти и описать различия между Delphi и Lazarus.

3) Разработать приложение, демонстрирующее возможности каждой среды.

4) Сделать выводы.

Различия в концепции

Среды Delphi и Lazarus были изучены авторами данной работы практически с нуля.

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

По доступу к продуктам,

По совместимости с операционными системами,

Занимаемое место на диске.

Доступ к продуктам

Lazarus и Delphi - это два продукта с совершенно разными коммерческими идеологиями. Borland Delphi - это полностью коммерческий, закрытый продукт, чтобы начать им пользоваться, нужно его приобрести. Минимальная стоимость Delphi составляет 27 тыс. рублей, но этого мало, так как очень часто требуется система управления базами данных. Производитель рекомендует использовать СУБД InterBase - это еще 6 тыс. рублей. Поэтому для того, чтобы получить полный комплект современного разработчика программного обеспечения, требуется минимум 33 тыс. рублей.

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

Совместимость с Операционными системами

Delphi - это продукт, разработанный под ОС Windows. С его помощью можно разрабатывать приложения только для этой операционной системы. При использовании созданных программ на ПК с другими ОС, требуется применять различные ухищрения: эмуляторы, среды. Еще недавно существовал проект Borland Kylix - Delphi для Linux, но он закрылся. Что касается Lazarus, то реализация данного инструмента существует для всех распространенных операционных систем: Windows, Linux и т.д. Таким образом, разработав программу для одной ОС, ее можно с легкостью перекомпилировать для другой, что удобно для начинающих программистов.

Занимаемое место на диске

Установленная программа Lazarus занимает более 500 мб. памяти на жестком диске, а Delphi Portable-более 350 мб.

1. Установка LAZARUS

Чтобы начать работать с Программой Lazarus, был скачан установочный файл из интернета (он распространяется совершенно свободно и бесплатно).

Официальный сайт http://sourceforge.net.

На время начала работы последней версией была lazarus-0.9.28.2-fpc-2.2.4-win32. Дистрибутив устанавливается легко, как и все стандартные программы.

Ход установки:

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

Рис.1.1 Окно Мастера установки. Выбор языка

Следующее окно (рис. 1.2) информационное. Оно сообщает о начале установки. Необходимо нажать кнопку Далее и перейти к следующему этапу установки.

Рис.1.2 Начало процесса установки Lazarus

На третьем этапе установки (рис.1.3), необходимо выбрать путь установки для Lazarus. По умолчанию программа будет установлена на диск С.

Рис.1.3 Окно выбора установки Lazarus

Четвертый шаг - это выбор компонентов из полного перечня средств системы (рис.1.4). По умолчанию будут установлены все компоненты. Рекомендуем установить пакет полностью.

Рис.1.4 Окно выбора компонентов.

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

При первом открытии программы необходимо просмотреть параметры, окружение и свойства отладчика (рис.1.5). Общая информация о настройке данных параметрах была найдена на официальном форуме Lazarus.

Из-за того, что после установки не был прописан каталог исходного кода FPC, пришлось программу переустанавливать несколько раз. Также программа не прописывала путь к компилятору и путь к Make. После использования информацией с форума и действуя по своим соображениям, были настроены эти два пути (рис.1.6).

Рис.1.5 Параметры IDE после настройки

Данные настройки важны для дальнейшего использования программы.

Рис.1.6 Верно указанный путь компилятора и Make

Также был настроен тип отладчика и путь, для этого необходимо найти файл gdb.exe (c помощью команды поиск), поместить его в папку с установленной программой и указать путь к ней (рис.1.6).

Рис.1.6 Тип отладчика и путь

После выполнения описанных выше операций на другом ПК, тем не менее, возникал ряд ошибок, исправление которых не известен на данном этапе изучения (рис.1.7-1.10).

Рис 1.7 Текст ошибки

Рис 1.8 Текст ошибки

Рис 1.9 Текст ошибки

Рис 1.10 Текст ошибки

Обращение на форум с вопросами по получаемым ошибкам пока результатов не дал.

2. Установка Delphi

Программа Delphi является коммерческой версией, ее стоимость составляет от 30 до 60 тыс. рублей (в зависимости от комплектации). Чтобы не приобретать коммерческую версию этого продукта мы воспользовались портативной версией Delphi portable, скачанной с файлообменной сети DepositFiles.ru которая не запрашивает лицензионного пароля.

Так как эта версия является портативной, то с ее установкой не возникло проблем, в связи с отсутствием процесса установки в данной версии.

Для того чтобы начать работать в Delphi Portable, нужно:

1. Распаковать скачанный архив (рис.2.1).

Рис.2.1 Распаковка скачанного архива

2. Далее в папке с файлами необходимо нажать ярлык PortableDelphi.exe

Рис.2.2 Открытие программы

3. Программа готова к работе (рис.2.3)

Рис.2.3 Готовая программа

Главным минусом в работе с портативной версией продукта является то, что программу нельзя сделать по умолчанию для просмотра файлов типа .pas , .dos, .cfg и.т.д. Проекты приходится открывать непосредственно после запуска программы.

3. Технические различия

Установка дополнительных компонент

Для того, чтобы установить дополнительный компонент Lazarus, нужно полностью перекомпилировать всю визуальную систему программирования, компонент интегрируется в среду и становится непосредственной ее частью. В Delphi установка новых компонентов происходит намного удобнее. Не надо компилировать весь пакет, надо скомпилировать только модули компонента.

Время компилирования

Процесс компилирования в среде Lazarus занимает более длительное время по сравнении с Delphi и зависит от мощности компьютера и объема проекта.

В отличие от Delphi, использующей собственный отладчик, Lazarus подключает для отладки внешнюю программу gdb (GNU Debugger) и вынужден включать в компилируемые исполнимые файлы информацию, помогающую этому отладчику в работе. Объём такой информации может в несколько раз превышать объём кода.

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

1) Можно воспользоваться консольной утилитой strip, чтобы удалить отладочную информацию из уже собранных исполняемых файлов. В Windows-версии Lazarus эта утилита находится в каталоге c:\lazarus\fpc\2.4.3\bin\i386-win32\strip.exe. Для удобства использования strip можно создать bat-файл, включить в него вызов команды strip, которой в качестве первого параметра командной строки передан ключ -- strip-all, а в качестве второго - имя исполнимого файла: strip --strip-all <имя исполнимого файла>.

2) Также можно исключать отладочную информацию уже на этапе компиляции проекта. Нужный эффект достигается включением всего лишь одной опции в параметрах проекта (рис 3.1).

Применение любого их описанных выше способов позволяет значительно сократить размер получаемых файлов (пустой проект уменьшается примерно на 12 Мбайт для текущей версии Lazarus). Чтобы еще немного уменьшить программу, можно воспользоваться exe-упаковщиком UPX, который запаковывает исполнимые файлы, а при их запуске распаковывает оригинальный код непосредственно в память. Используя UPX можно сократить размер исполнимого файла ещё в 2-3 раза.

Рис.3.1 Окно параметров проекта

Удобство в работе

В Lazarus работать с компонентами намного удобнее. При добавлении новых элементов на поле формы появляются линии, помогающие выровнять этот элемент с другими.

Описание подпрограмм

При описании подпрограмм в разделе type программного кода проекта Lazarus не нужно прописывать TForm перед названием процедуры.

Совместимость кодов в Lazarus и Delphi.

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

Как и компилятор Free Pascal, Lazarus является кроссплатформенным инструментом (по крайней мере, таковой является его архитектура). Для переноса приложения на другую платформу достаточно скопировать исходные файлы проекта, указать в настройках среды, какую библиотеку графического интерфейса пользователя использовать, и откомпилировать проект. Возможна также кросскомпиляция. Например, можно из Linux скомпилировать программу для Windows.

Интерфейс

Отличия в интерфейсе.

1) Code Editor у Lazarus отличается от Delphi только тем, что у него нет субокна Explore. Это субокно в Lazarus является отдельным окном и может быть вызвано через «Вид/Обозреватель кода».

2) Object Tree View. В Lazarus это окно является единым целым с Object Inspector.

3) Object Inspector. У Lazarus'а есть пара дополнительных вкладок: «Избранное» (куда можно поместить наиболее часто используемые свойства) и вкладка «Зависимости» (показывающая ограничения библиотеки виджетов в целом).

4) Main window. У Lazarus меньше вкладок с компонентами. Например, не очевидно использование интернет-компонентов в проекте. Практически все компоненты, доступные для Delphi, можно перекомпилировать под Lazarus с минимальными изменениями, а также большинство компонент можно использовать не визуально, как, например FTP.

Перекомпиляция интерфейса.

В Lazarus есть возможность полностью переписать код его же интерфейса, добавив новые кнопки и функции. Любые изменения в коде удовлетворяются лицензией GPL/LGPL.

Возможность полноценно настроить скомпилированный код позволяет использовать другие отладчики и редакторы.

Поддержка синтаксиса.

Так как Lazarus является кроссплатформенным компилятором, можно сделать вывод, что FreePascal поддерживает несколько режимов синтаксиса. Поддерживаются следующие режимы: FreePascal, Delphi, Turbo Pascal, Object Pascal (по умолчанию) и Mac Pascal.

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

В начале каждого модуля по умолчанию существует следующая строка: {$mode objfpc}{$H+}

Необходимо исправить на: {$mode Delphi}{$H+}

И далее использовать ее синтаксис.

Сохранение проектов.

При компиляции Lazarus автоматически сохраняет проект. В Delphi же сохранение проекта происходит непосредственно в Файл=«Сохранить Проект.

Работа с несколькими проектами одновременно.

В Lazarus можно запускать несколько проектов одновременно, в Delphi необходимо сохранить запущенный проект и закрыть его, после этого можно будет открыть другой проект.

Практическая часть

Цель: Сравнительный анализ реализации конкретного проекта в Delphi и Lazarus.Для исследования выбрана задача построения компьютерной модели математического маятника.

Задачи:

1. Разработать проекты в Delphi и Lazarus,

2. Сделать выводы относительно различий в программном коде и работе приложений.

Разработка проекта.

Цель: Исследование компьютерной модели Математического маятника, (построение графиков изменения амплитуды движения, углового ускорения и угловой скорости).

Задачи:

· Разработать математическую модель математического маятника

· Выявить различия в графических возможностях Delphi и Lazarus.

· Провести компьютерный эксперимент для исследования скорости в зависимости от силы трения.

Описание проекта.

Исходные данные:

· Alfa-Начальный угол отклонения от положения равновесия.

· V0-Начальная скорость.

· Q-Частота колебаний маятника.

· B-Коэффициент трения.

Математическая модель.

Рассмотрим два вида движения маятника:

1) Без учета силы сопротивления.

Первоначально математический маятник покоится в положении равновесия и подвешен на нерастяжимой нити. При этом действующие на него сила тяжести и сила упругости нити взаимно компенсируются.

Выведем маятник из положения равновесия (отклонив его, например, в положение А) и отпустим без начальной скорости. В этом случае силы и не уравновешивают друг друга. Тангенциальная составляющая силы тяжести , действуя на маятник, сообщает ему тангенциальное ускорение (составляющая полного ускорения, направленная вдоль касательной к траектории движения математического маятника), и маятник начинает двигаться к положению равновесия с возрастающей по модулю скоростью. Тангенциальная составляющая силы тяжести является, таким образом, возвращающей силой. Нормальная составляющая силы тяжести направлена вдоль нити против силы упругости . Равнодействующая сил и сообщает маятнику нормальное ускорение , которое изменяет при этом направление вектора скорости, и маятник движется по дуге ABCD.

Чем ближе подходит маятник к положению равновесия С, тем меньше становится значение тангенциальной составляющей

.

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

При этом составляющая направлена против скорости. С увеличением угла отклонения, а модуль силы увеличивается, а модуль скорости уменьшается, и в точке D скорость маятника становится равной нулю. Маятник на мгновение останавливается, а затем начинает двигаться в обратном направлении к положению равновесия. Вновь пройдя его по инерции, маятник, замедляя движение, дойдет до точки А (трение отсутствует), т.е. совершит полное колебание. После этого движение маятника будет повторяться в уже описанной последовательности.

Скорость, с которой движется маятник в направлении, касательном к траектории, определяется длиной нити и тем, насколько быстро изменяется угол:

.

На тело действуют (сила тяжести) и (натяжении нити).

Выведем уравнения движения маятника, т.е. изменение угла и скорости маятника :

.

2) С учетом силы сопротивления

Тело, движущееся в воздухе, испытывает его сопротивление, сила которого Fc пропорциональна квадрату скорости движения. Сила сопротивления воздуха направлена против направления движения тела

С учетом сопротивления воздуха уравнение движения маятника примет вид:

,

,

где - проекция на ось t;

преобразуем его к виду:

где - коэффициент трения.

Рассмотрим сначала случай малых колебаний. Пусть в начальный момент маятник отклонён от вертикали на угол j и опущен без начальной скорости. Тогда начальные условия будут:

при t=0, , , тогда уравнение будет иметь вид:

Соответственно выведем уравнения движения маятника:

Разработка кода программы

Для создания анимации движения маятника были использованы следующие компоненты:

1) Timer-для выполнения прорисовки объекта шарик через определенные промежутки времени.

2) Image. Canvas-

with Image1.canvas do

begin

Pen.color:=clblue; //контур изображения

Brush.Color:=$EEE9E9; //фоновый цвет

Rectangle(0,0,Width,Height); //прямоуголник на всё поле - для смены кадров

Pen.color:=clBlack; //цвет нити

pen.Width:=1; //ширина нити

end;

x:=round(r*cos(3*pi/2+a));

y:=round(r*sin(3*pi/2+a)); //координаты центра шарика-маятника

with image1.canvas do

begin

Rectangle((image1.Height div 2-10),(image1.Width div 2-4),(image1.Height div 2+10),(image1.Width div 2+4)); //Основание маятника

MoveTo((Image1.Height div 2),(Image1.Width div 2)); //установка текущей графической координаты

LineTo((Image1.Height div 2)+x,(Image1.Width div 2)-y); //рисуем нить

Brush.Color:=clred; //цвет шарика

Ellipse(((Image1.Height div 2)+x)+7,((Image1.Height div 2)-y)+7,((Image1.Height div 2)+x)-7,((Image1.Height div 2)-y)-7); //рисуем шарик

End.

Заключение

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

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

На наш взгляд, работа в Lazarus для начинающего программиста удобнее по ряду причин:

· Удобство интерфейса;

· Простота организации информационного пространства пользователя;

· Доступность средства;

· Работа над данным проектом позволила нам развить наши личностные качества;

· Работа в команде (умение слушать, принимать критику, находить компромиссы);

· Навыки самостоятельной работы, упорство, терпение;

· Навыки оформления проектной документации.

Размещено на Allbest.ru


Подобные документы

  • Интегрированная среда разработки Lazarus. Среда программных продуктов Lazarus, объекты программных компонентов. Палитра компонентов Standard, Additional. Разработка справочной системы: структура проекта, интерфейс программы, компоненты приложения.

    курсовая работа [695,2 K], добавлен 08.01.2023

  • Форма программы для ввода и вывода массива в программной среде Lazarus. Характеристика главных недостатков Lazarus. Цикл для пропуска пробелов между словами. Результат обработки текстового редактора memo.text. Листинг и экранные формы заданной программы.

    контрольная работа [799,2 K], добавлен 15.01.2011

  • Бесплатная среда разработки программного обеспечения с открытым исходным кодом для компилятора Free Pascal. Почему Lazarus такой популярный. Корректность введенных данных. Использование основных методов визуализации в среде программирования Lazarus.

    курсовая работа [695,5 K], добавлен 19.04.2013

  • Особенности среды визуального проектирования Borland Delphi 7.0. Этапы разработки программы и составления блок-схемы алгоритмов. Способы вычисления кусочно-заданной функции одной переменной. Рассмотрение компонентов среды Delphi, ее предназначение.

    контрольная работа [703,8 K], добавлен 24.09.2012

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

    дипломная работа [2,3 M], добавлен 11.04.2012

  • Теоретические основы объектно-ориентированного языка программирования Delphi, изучение среды визуального проектирования приложений. Определение 40-го числа Фибоначчи, составление листинга и блок-схемы программы, тестирование ее на работоспособность.

    курсовая работа [261,1 K], добавлен 25.03.2015

  • Принципы разработки алгоритмов и программ на основе процедурного подхода и на основе объектно-ориентированного подхода. Реализация программы Borland Pascal 7.0, ее интерфейс. Разработка простой программы в среде визуального программирования Delphi.

    отчет по практике [934,7 K], добавлен 25.03.2012

  • Эффективные средства разработки программного обеспечения. Технология визуального проектирования и событийного программирования. Конструирование диалоговых окон и функций обработки событий. Словесный алгоритм и процедуры программы Borland Delphi 7 Studio.

    дипломная работа [660,2 K], добавлен 21.05.2012

  • Разработка визуального интерфейса пользователя, на основе экранных форм среды Delphi и визуальных компонент. Основные типы данных, используемые в программе MD 5 Calc. Однонаправленные хэш-функции. Процесс хэширования MD5, возможности его применения.

    курсовая работа [433,1 K], добавлен 28.08.2012

  • Характеристика графических возможностей среды программирования Lazarus. Анализ свойств Canvas, Pen, Brush. Сущность методов рисования эллипса и прямоугольника. Возможности компонентов Image и PaintBox. Реализации программы "Графический редактор".

    курсовая работа [2,8 M], добавлен 30.03.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.