Qtは、Trolltech(http://www.trolltech.com/)が開発したマルチプラットフォームC++ GUIツールキット*で、UNIX/Linux、Windows、Mac OS X、Embedded Linuxをターゲットとしています(図2)。簡明で直交性と柔軟性が高いAPIが提供されているため、単独プラットフォームがターゲットでも、アプリケーションの作成に十分な機能を持ちます。このほかにもいろいろな特徴がありますが、全ソースコードが提供されること、そして、ソフトウェア開発者にとって、そのアーキテクチャを納得し、楽しく使えるというのが一番の特徴です。
図2 Qtはソースコード互換のマルチプラットフォームライブラリ(クリックで拡大します)
図3はQtのGUI部分の構成で、プラットフォーム依存レイヤーは表2のように実装されています。
図3 QtのGUI部分のレイヤー構成
表2 Qtのプラットフォーム依存レイヤー
プラットフォーム依存レイヤー
説明
Qt/X11
UNIX/LinuxのX11で、Xlibで実装されている
Qt/Windows
Windows 95/98/Me/NT/2000/XP/2003で、Win32とGDIで実装されている