Кроссплатформенное программирование для Linux (47500)

Посмотреть архив целиком

МОРДОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ИМЕНИ Н.П. ОГАРЕВА

Факультет светотехнический

Кафедра светотехники

















КУРСОВАЯ РАБОТА

КРОССПЛАТФОРМЕННОЕ ПРОГРАММИРОВАНИЕ ДЛЯ LINUX







Автор курсовой работы А.В. Богданов

Специальность 100101 сервис

Обозначение курсовой работы КР-02069964-100101-05-08

Руководитель работы С.Д. Шибайкин















Саранск 2008



МОРДОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ИМЕНИ Н.П. ОГАРЕВА

Факультет светотехнический

Кафедра светотехники



ЗАДАНИЕ НА КУРСОВУЮ РАБОТУ (ПРОЕКТ)

Студент ______________________________________________________

1 Тема _______________________________________________________

2 Срок представления работы (проекта) к защите___________________

3 Исходные данные для научного исследования (проектирования) __________________________________________________________________

4 Содержание курсовой работы (проекта)

4.1 _________________________________________________________

4.2 _________________________________________________________

4.3 _________________________________________________________

4.4 _________________________________________________________

Руководитель работы (проекта) _______________________________

подпись, дата, инициалы, фамилия

Задание принял к исполнению _________________________________

дата, подпись





Реферат



Дипломная работа содержит 26 страниц, 1 таблицу, 20 использованных источников, 2 приложения.

ПРОГРАММИРОВАНИЕ, LINUX, DELPHI, KYLIX, CLX, ПРИЛОЖЕНИЕ.

Объектом исследования является способ создания приложений для Linux в среде Delphi.

Цель работы – проанализировать принцип создания приложений для Linux на уровне пользователя и среды Delphi с целью выявления основных сходств и различий его c программированием для Windows.

Задачи: изучить состав стандартного проекта CLX и кроссплатформенные элементы Репозитория, иерархию классов CLX, общие свойства и методы компонентов, их отличия от компонентов VCL; особенности кроссплатформенного программирования, дополнительные возможности кроссплатформенных приложений.

Степень внедрения – частичная.







Содержание



Введение

1 Проект CLX

1.1 Общие сведения

1.2 Объектная концепция кроссплатформенного программирования

1.3 Библиотека компонентов CLX

1.4 Сходства и различия визуальных компонентов CLX и VCL

2 Особенности программирования для Linux

2.1 Общие сведения

2.2 Приложения баз данных для Linux

2.3 Internet-приложения для Linux

Заключение

Список использованных источников

Приложение А

Приложение Б









Введение



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

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

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

Однако, Delphi 7 действительно позволяет писать программы для Linux.

Теперь разработчик, использующий Delphi 7, может создавать приложения, исходный код которых будет компилироваться без каких-либо дополнительных усилий не только в Delphi для Windows, но и в Kylix для Linux.

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

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

Кроссплатформенная разработка приложений в Delphi стала возможной благодаря созданию специального варианта библиотеки VCL, которая называется Component Library for Cross Platform (CLX). В основе CLX лежит иерархия специально созданных базовых классов, обеспечивающих работоспособность визуальных компонентов – потомков сразу в двух операционных системах. Конечно, набор компонентов CLX не столь богат по сравнению с нынешним разнообразием VCL, однако вполне сравним с Палитрой компонентов Delphi или Delphi 2.

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

В моей работе рассматриваются следующие вопросы:

состав стандартного проекта CLX и кроссплатформенные элементы Репозитория;

CLX – библиотека компонентов кроссплатформенного программирования;

иерархия классов CLX, общие свойства и методы компонентов, их отличия от компонентов VCL;

особенности кроссплатформенного программирования Windows – Linux;

дополнительные возможности кроссплатформенных приложений.





1 Проект CLX



1.1 Основные сведения



Создание кроссплатформенного приложения в Delphi требует выполнения абсолютно стандартных действий. Достаточно создать новый проект, выбрав для этого в Репозитории пункт CLX Application.

На первый взгляд новый проект ничем не отличается от обычного, но это не так. Среда разработки тоже претерпела некоторые изменения. В Палитре компонентов теперь представлены компоненты из библиотеки CLX, той самой, которую использует Kylix. Другие немногочисленные изменения в составе проекта также связаны с необходимостью совмещения с Kylix.

Проект CLX отличается от обычного типом файла, содержащего информацию о форме. Если в обычном проекте файл формы имеет расширение *.dfm, то в проекте CLX это файл с расширением *.xfm, одинаково понятный и для Delphi, и для Kylix, так как и те и другие файлы являются обычными текстовыми файлами и сведения о форме представлены в них в текстовом виде. Примерно то же самое мы увидим, просматривая форму в текстовом представлении в окне Редактора Delphi (команда View as Text из всплывающего меню формы) [1].

Форма и модуль CLX связываются при помощи директивы {$R *.xfm}.

Кроме этого, в проектах Delphi и Kylix различаются расширения файла опций проекта (в Delphi – *.dof, в Kylix – *.kof). Однако это не принципиальная проблема и при отсутствии такого файла среда разработки создаст новый с настройками по умолчанию. Таким образом, всегда можно придумать как минимум несколько способов перенести текстовое содержимое файла настроек проекта.

По синтаксису и основным элементам исходный код не отличается от стандартного. Файл проекта содержит список модулей и секцию begin, end. Файл модуля также обычен, за исключением списка используемых модулей в секции uses. Модули с непривычными названиями QControis, QForms и др. содержат базовые классы библиотеки CLX.

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

В подтверждение этого при помощи нескольких изменений в проекте VCL можно легко преобразовать проект VCL в CLX и обратно. Для этого понадобится любой текстовый редактор. И конечно проект не должен содержать компонентов, которые не входят в состав библиотеки CLX.

В файле проекта в секции uses сылка на модуль Forms заменяется на QForms.

В файлах модулей заменяются ссылки на модули VCL на модули CLX. Например, секция uses может выглядеть так:

uses SysUtils, Types, Classes, QGraphics, QControls, QForms;

В файлах модулей заменяется директива {$R *.dfm} на {$R *.xfm}.

В файлах форм меняется расширение с dfm на xfm.

Сохранив сделанные изменения и открыв проект в среде разработки, можно убедиться, что Delphi приняла его за проект CLX, изменила соответствующим образом Палитру компонентов и с готовностью компилирует его.

При необходимости разработчик может добавлять к проекту новые шаблоны, используя для этого Репозиторий. При этом в Репозитории доступны только те шаблоны, которые можно использовать в проекте CLX (например, форма, модуль или модуль данных). Отсутствуют шаблоны, использование которых в Linux невозможно или поддержку которых не обеспечивает библиотека CLX (например, шаблон однодокументного приложения или шаблоны печатных форм Quick Report).







1.2 Объектная концепция кроссплатформенного программирования



Программирование в Delphi подразумевает использование тех или иных классов, будь то формы, невизуальные компоненты или списки. Концепция кроссплатформенного программирования в рамках одной среды разработки имеет в виду наличие общего ядра, обеспечивающего функционирование зависимой от операционной системы программной надстройки. В Delphi таким ядром стала библиотека времени выполнения (RunTime Library – RTL), с использованием классов которой созданы библиотеки компонентов VCL и CLX.


Случайные файлы

Файл
23041-1.rtf
25588-1.rtf
121366.rtf
65427.rtf
48319.rtf




Чтобы не видеть здесь видео-рекламу достаточно стать зарегистрированным пользователем.
Чтобы не видеть никакую рекламу на сайте, нужно стать VIP-пользователем.
Это можно сделать совершенно бесплатно. Читайте подробности тут.