デファクトとなるか?Linux版Delphi 「Kylix」
  ボーランド発表会
 

世の中には、いいツールだけど、将来性、開発元の株価、知名度やらで、トップシェアの競合ツールに大きく水をあけられている製品がいくつかある。その中の一つが、Windowsのアプリ開発ツール「Delphi」だろう。
もともとTurbo Pascalを先祖に持つDelphiだが、前身Turbo Pascal for Windowsの登場タイミングに比較して、いわゆる「ビジュアル化」への移行に時間がかかり、国内ではVBとのシェア争いで苦戦を強いられてきた。
言語がObject Pascalだから、という意見も聞かれるが、慣れ、あるいは気分的な問題とおもえるほど見た目の違いは小さい。どちらかといえば、Object Pascalの良いところ盗りをしたと思われる構文はVBに多く見られ、全体的につぎはぎ言語になっているのはVB6をみれば明らかである。

■ ■ ■


米国でKylix登場

2/2に行われた「ボーランドKylixファーストプレビュー」は、1/31に米国で行われたKylix発表に呼応する形で行われた発表会。当初「Kylix英語版スニークプレビュー」という名前だったものが、ファーストプレビューに変更された。内容は、Delphiとはどんなツールであるかの説明とKylixの概要説明である。
同社は、かねてからコマンドライン開発による低い生産性と貧弱なデバッグ環境をLinuxでのアプリ開発の現状と位置づけて、Delphiと同じ環境をLinux+X Window上に実現することを表明してきたが、その成果がKylixである。実際、操作性はもとより、CLX(Component Library for Cross Platform)と呼ばれるコンポーネントにより、WindowsとLinuxの移植性を高めている。
製品形態は、3つに分かれ、「Kylix Open Edition」というオープンソース開発専用の無償ダウンロード版が提供される。ちなみに、Kylixとは、ギリシャ時代のぐい呑み用盃である。

Kylixを試す

早速、発表会で配布されたKylixを試してみた。使用したディストリビューションはVine Linux 2.0。Linuxのアプリでよく問題になる対応ディストリビューョンだが、主要ディストリビューションについては、配布CD-Rにglibcへのパッチが用意されていたので、それを当ててセットアップを行った。なお、このパッチはボーランドが作成したものであり、ディストリビューターが配布しているものではない。

glibc_laser5/6.2 .... Laser 5 Linux 6.2
glibc_miracle/1.0 ... Miracle Linux 1.0
glibc_redhat/6.2 .... redhat Linux 6.2(初期版)
glibc_redhat/7.0 .... redhat Linux 7.0(初期版)
glibc_redhat/7.0a ... redhat Linux 7.0(改訂版)
glibc_turbo/s6.0 .... Turbo Linux 6.0 Server
glibc_turbo/w6.0 .... Turbo Linux 6.0 Workstation
glibc_turbo/w6.0a ... Turbo Linux 6.0 Workstation(改訂版)
glibc_vine/2.0 ...... Vine Linux 2.0
glibc_vine/2.0 ...... Vine Linux 2.1


セットアップはシンプルなシェルスクリプトを実行するだけで完了した。KDEを起動して、シェルからstartkylixとすると見慣れたDelphiとそっくりな画面が現れた。
Delphi用のプログラムをそのまま読み込んだらどうなるかを試すために、当社刊「Visual basic & Delphiプログラミングノウハウ集」(相沢絹恵 著)掲載のプログラム「石積み3並べ」を読み込んでみたところ、

次のエラーが出た。CR-LF -> LFへの変換、日本語の削除はあらかじめ行っている。

これは予想されていたことなので、基本的に*.pasファイルの転用を考えた。その結果、いとも簡単にプログラムがコンパイルできた。

ちなみに、Delphiでの実行画面は、右の通りである。

 

このプログラムのuses節をみたところ、Delphiが、
 
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

であるのに対して、kylixでは、
 
uses
  SysUtils, Types, Classes, QGraphics, QControls, QForms,
  QDialogs, QExtCtrls, QStdCtrls;

となっていた。Windows、Messagesといったユニットは無くなっている。それに対して、Formsなどは、先頭に"Q"が付いている。

感想

同一マシンで、Delphi4を動作させてみたが、Kylixのほうが緩慢な動きをする。コンパイルの速度自体はあまり変わらないようだから、Xのビデオドライバーの影響のようだ。安定性については、大きなプログラムを試していないのでなんとも言えない。

昨今、何でもかんでもWebアプリにすることがトレンドであるが、クライアントマシンの狂ったような性能向上をみれば、クライアントでできることはクライアントで行ったほうが、効率的であることはいうまでもない。その視点で考えると、KylixでLinux+X用デスクトップアプリを作成しやすくなったことは、大きな意義のあることだと思う。

まだまだ日本語対応アプリの少ないLinuxだから、ここで気の利いたシェアウェアを作成して一獲千金を狙うのもいいかもしれない。


・・・ 参考URL:ボーランド株式会社 ・・・