| ||
Borland Kylix 2В начале (а точнее, весной) 1999 года всемирно-известная компания Borland (создатель таких средств разработки как C++ Builder, Delphi, Jbuilder) провела на своем сайте анкетный опрос с целью оценить, насколько высоким спросом будет пользоваться продукт, назначение которого заключается в переносе приложений, разработанных на Delphi для ОС Windows, на платформу Linux. Видимо, результаты опроса удовлетворили компанию, так как сразу же после него началась работа над Kylix одним из самых неординарных проектов в истории Borland. Так что же собой представляет Borland Kylix? Это первая RAD(Rapid Application Development Быстрое Создание Приложений)-среда разработки для Linux, которая во многом идентична Delphi для Windows (часто ее даже называют «Delphi для Linux»). Но Kylix имеет ряд отличий от своего Windows-аналога (в частности, отсутствие поддержки VCL, библиотеки компонентов, используемой всеми версиями Delphi и внедрение на замену ее библиотеки CLX). Этот продукт, как уже описывалось выше, предназначен для разработки кроссплатформенных приложений, а также переноса Delphi-программ для Windows на систему Linux. Kylix (как и Delphi) обладает мощными средствами для разработки интернет-приложений и работы с базами данных. Наверняка многие читатели были знакомы с Delphi, и учитывая тот факт, что Kylix является, можно сказать, Delphi для Linux, то все сказанное о этом продукте будет на 99% правдой и для Kylix. Я не буду в этой статье детально описывать возможности Kylix, а остановлюсь конкретно на функциональных различиях между этими двумя средами разработки. Основная особенность Kylix заключается в том, что эта среда разработки не поддерживает библиотеку VCL (Visual Components Library Визуальная Библиотека Компонентов), которую использовали все версии Delphi. Windows и Linux являются принципиально разными операционными системами, соответственно, многие компоненты VCL имеют жесткую привязку к платформе Win32 и не смогут работать в Linux. Для решения этой проблемы компания Borland создала совершенно новую библиотеку компонентов Borland Component Library for Cross Platform (CLX). Компоненты этой библиотеки поддерживаются как в Windows (начиная с Delphi версии 6), так и под Linux. В CLX появилось множество новых возможностей, облегчающих процесс кроссплатформенной разработки, в частности, возможность использования условных указателей при компиляции (Delphi использует при компиляции одни библиотеки, а Kylix другие). Например:
Даже человеку, который не знаком с синтаксисом языка Pascal, должно быть понятно, что при запуске из среды Linux программа будет компилироваться с использованием библиотек, указанных в разделе {$IFDEF Linux}, а при запуске из Windows совершенно других, указанных в разделе {$ELSE}. Библиотека CLX содержит несколько групп компонентов: VisualCLX Основные кроссплатформенные компоненты. Свойства компонентов в этой области могут несколько разниться в Linux и Windows. DataCLX Содержит компоненты, которые позволяют работать с базами данных. NetCLX Содержит Internet компоненты, в частности набор компонентов Indy (Internet Direct) компании Nevrona Design . RTL Библиотека Runtime Library. Конечно, как и любой другой продукт, библиотека CLX не лишена и ряда недостатков. Для VCL на данный момент имеется огромное количество компонентов сторонних разработчиков, чего нельзя сказать о CLX. Многие компоненты, которые часто используются в Windows-приложениях, в CLX попросту отсутствуют, что затрудняет перевод приложений, использующих VCL, на новый стандарт. Компания Borland также акцентировала внимание на тесной интеграции Kylix 2 и Delphi 6. Интерфейс продуктов внешне идентичен во всем, начиная от оформления среды разработки и заканчивая заставками при загрузке продуктов. Начиная с Delphi версии 6, при создании нового приложения имеется возможность выбора отдельного подпункта CLX Application. В этом случае Delphi создает программу с использованием только библиотеки компонентов CLX это означает, что данное приложение можно будет перенести на платформу Linux простой перекомпиляцией кода в Kylix 2 (если, конечно, программа не использует специфических для платформы Win32-функций). Для наглядной иллюстрации ниже приведен список библиотек, которые Delphi 6 добавляет в uses-лист программы при создании нового VCL- и нового CLX-приложения: Как можно заметить, названия многих библиотек в CLX остаються неизменными, просто перед ними добавляется буква «Q» первая буква названия библиотеки Qt, которая была создана компанией TrollTech на языке С++ и содержит набор GUI-классов, достаточно близких по оформлению к стандартным элементам управления Windows (именно на основе Qt создана популярная графическая облолочка KDE). Но многие библиотеки (некоторые из которых используются достаточно часто) в CLX попросту отсутствуют (полный список соответствий библиотек VCL и CLX можно найти в help’е к Borland Delphi 6 в разделе Programming with Delphi > Using CLX for cross-platform development > CLX and VCL unit comparison), как, например, Messages аналога ей в CLX нет, так что если эта библиотека была задействована в вашем приложении, то придется искать какие-либо «окольные пути». Все это, конечно, хорошо, но в основном для тех, кто только начинает создавать свое приложение «с нуля» и может использовать CLX с самого начала работы над проектом. Ведь до появления Delphi 6 о CLX никто и слыхом ни слыхивал (за исключением тех, кто работал с Kylix 1, который особой популярностью не пользовался), приложения же в подавляющем большинстве использовали VCL и встроенные функции ядра конкретной ОС, а так как структура Linux kernel отличается от структуры ядра Windows, то для использования таких приложений в Linux необходима будет определенная модификация их исходного кода. Очевидно, что чем чаще приложение будет использовать специфические особенности платформы Windows, тем значительнее будут затраты труда и времени на переработку приложения для использования аналогичных функций ОС Linux. Но и для приложений, основанных на VCL, еще не все потеряно. Для того чтобы приложение, которое использует компоненты и функции этой библиотеки, переработать для использования библиотеки компонентов CLX, необходимо проделать следующие нехитрые манипуляции: После этого можно смело перекомпилировать исходники программы в Kylix (правда, необходимо будет заново назначить пути к рисункам, а также другим внешним файлам) После всего сказанного за и против, можно вынести справедливый вердикт: такой продукт как Kylix необходим. Даже с учетом специфики перехода от VCL к CLX можно уверенно сказать, что перенос приложений под Linux этой средой разработки предельно упрощается и, вследствие этого, намного ускоряется. И сейчас к тем языкам программирования, которые используются в Linux можно по праву добавить и Object Pascal. Что ж, если теперь, после того как вы прочли статью, у вас еще осталось желание испробовать Kylix в действии, то прошу любить и жаловать его почетным местом на вашем хард-драйве 60-дневный полнофункциональный дистрибутив Borland Kylix 2 Trial можно скачать с сайта Borland’a (http://www.borland.com) в формате tar.gz после регистрации. Обьем архива 69 Мб. На сайте также доступна редакция Borland Kylix 2 Open Edition, предназначенная для создания программ с открытым исходным кодом в рамках проекта GNU General Public License. Источник: http://www.mycomp.com.ua/
| ||
Copyright © "Internet Zone", http://www.izcity.com/, info@izcity.com |