折に触れて取り沙汰されるWindowsとLinux。Windows3.1がようやく日本で出荷された1993年当時,Windows対応ソフトを開発すると明言していたソフトウエア・メーカーは日本では皆無に近い状況だった。それが,今となっては辺り一面Windowsである。その不安定さにもかかわらず,だ(NTカーネルは安定しているが)。

 一方,Linuxはというと,「安定している」「CPUの性能もそれほど必要ない」「無償である」など,評判だけから判断すると素晴らしく良いOSであるように聞こえる。だが,決して普及しているとはいえない状況だ。なぜWindowsはこれだけ普及し,Linuxは使われないのか。

Visual Basicの存在は大きかった

 マーケティング面などその原因はいろいろ考えられる。Microsoft Officeなどオフィス製品の存在も大きい。だが,それだけではない。アプリケーション開発環境の違いも,WindowsとLinuxの普及の速度に差が生じた大きな要因ではないだろうか。OSだけあってもユーザーは何もできない。アプリケーション・ソフトあってのOSである。この点で,WindowsとLinuxには大きな違いがあった。

 米Microsoftは開発ツールVisual Basic[用語解説] を提供し,短時間にしかも比較的容易にアプリケーション・ソフトを開発できる環境をWindowsに作った。

 これによってWindows対応ソフトが一気に増えた。Windowsが普及したのはVisual Basicのおかげといっても過言ではあるまい(プログラマにとってこのようなプログラミングが楽しいかどうかは別問題だが)。

 それに対してLinuxでは,C言語での開発が主流である。ライブラリ関数などのドキュメントは整理されていないというありさまだ(LinuxはUNIX互換なので,SunOSなどほかのUNIX向けのドキュメントを参照してプログラム開発することが多いようだ)。しかも依然としてテキスト・エディタでコーディングし,コマンドライン・コンパイラでコンパイルするというスタイルが一般的である。

 プログラミング経験の長いユーザーの中には,テキスト・エディタとコマンドライン・コンパイラの組み合わせの方が使いやすいという方もいらっしゃるようだが,私自身の20年余りのプログラミング経験から判断すると,Windows用のVisual Studioなどの統合開発環境の方がプログラミングの生産性が上がる。10年以上前に利用していたテキスト・エディタとコマンドライン・コンパイラの組み合わせという環境には,今となっては戻れない。

もっと注目されてもよいKylix

 さて,このような状況の中で,筆者がもっと注目されてもよいと考えているLinux環境での開発ツールがある。米Borland SoftwareのKylixである。Kylixは同社のWindows向け開発ツールDelphiのLinux版だ。Visual Basicと同様なソフトウエア開発手法を採ることができる。しかも開発したプログラムはエミュレータなどで動作するのではなく,れっきとしたLinuxネイティブになる。

 さらにWindowsのVisual Basicとは異なり,周辺機器を直接制御するような低レベル・プログラミングも可能だ。LinuxのC言語用ライブラリ関数(libc)も利用できる。LinuxではGUIを持たないプログラムもまだ多く使われるが,Kylixに用意されている多くのクラスによって,そのようなプログラム開発に関しても生産性を上げられる。

 KylixはDelphiとソース・コード互換になるよう設計されている。つまり,KylixとDelphiを併用することで,1つのソース・コードからWindowsネイティブとLinuxネイティブの2つのプログラムを作れるだけではなく,Delphiで開発したプログラムをKylixで再コンパイルすればLinuxのネイティブ・プログラムにできるのである。

 まだ市場性が不透明なLinux向けソフト開発をちゅうちょするようでも,Windows用ソフト開発の「ついで」にLinuxプログラムも作れるのであれば,Linux市場に打って出るリスクを軽減できる。

 日本で2001年12月に出荷された新版「Kylix 2」では,最近ニーズが高まっているWebアプリケーション開発に関する機能も強化された。LinuxをWebサーバーとして運用すれば初期導入コストなども低く抑えられる。

 ただ,Kylixが採用しているObject Pascal言語に抵抗があるユーザーも少なくないようだ。果たしてKylixは,WindowsのVisual Basicと同じように,Linux普及の起爆剤となることができるだろうか。カギは今年中に出荷される予定の,C++言語版が握っているといえよう。

(山口 哲弘=日経Linux副編集長)