MAGAZINE ARTICLES
このページをホームページに登録組み込みソフト開発にも
「Eclipse」の波
[2007年10月号]
NABプロジェクト
NAB(Native Application Builder)プロジェクトは組み込み機器向けのGUI開発プラットフォームの構築を目的とし、富士通の提案によって2006年1月に設立された。プロジェクトリードは筆者が務めている。同プロジェクトからは開発ツールである「NAB plug-in for MWT」が公開されている。これを利用することにより、Eclipse上で、C++を用いた組み込みGUIアプリケーションのビジュアルな開発が行える(図3)。
図3 NABの操作画面
NABプロジェクトは、組み込み機器をスコープとするDSDPプロジェクトの中でもGUIの開発に焦点を当て、統合開発環境「WideStudio*5)」をEclipseに移植するために構想された。現状では、WideStudio/MWTプロジェクトのMWT(multiplatform widget toolkit)ライブラリに対応したプラグインが提供されている。同ライブラリは、組み込み機器からデスクトップ型パソコンまでシームレスに対応するため、表2に示したような多様なプラットフォーム上でのGUIアプリケーション開発が可能になる。とはいっても、NABのアーキテクチャはMWTライブラリに特化することなく、ほかのGUIライブラリにも適用できるよう設計されている(図4)。
表2 MWTがサポートするプラットフォーム
図4 NABのアーキテクチャ
NABを用いれば、組み込み機器向けのGUI開発も、パソコン上でのGUI開発と同様にビジュアルに行うことが可能になる。また、開発したC/C++ソースコードを変更することなくコンパイルし直すだけで、WindowsやLinuxを含めたさまざまなプラットフォーム用のアプリケーションが作成できる。従って、組み込み機器のハードウエア開発の途中でも、先行してGUIの開発とデバッグが行える。
NAB plug-in for MWTは、CDTとの組み合わせにより、GUIベースのアプリケーションをビジュアルにWYSIWYG*6)環境で作成するための機能を提供する。具体的には、以下のような機能だ。
●GUI編集機能:GUI部品をビジュアルに配置/編集し、ソースコードを生成する機能。アプリケーションウィンドウを生成してその上に多様なGUI部品をマウスで配置し、部品の属性をプロパティとしてビジュアルに設定することができる
●コード生成機能:MWTベースの部品ごとにイベントプロシージャを自動生成する。それぞれのイベント処理ごとに、処理プログラムを記述することができる
●ビルド/実行機能:ソースコードをビルドし、実行可能なアプリケーションを生成/実行する機能を提供する
NABプロジェクトは多種のツールのための拡張可能なプラットフォームを目指し、新たな機能追加やほかのGUIライブラリ(GTKなど)に対応すべく活動を行っている。
NAB plug-in for MWTは、CDTとの組み合わせにより、GUIベースのアプリケーションをビジュアルにWYSIWYG*6)環境で作成するための機能を提供する。具体的には、以下のような機能だ。
●GUI編集機能:GUI部品をビジュアルに配置/編集し、ソースコードを生成する機能。アプリケーションウィンドウを生成してその上に多様なGUI部品をマウスで配置し、部品の属性をプロパティとしてビジュアルに設定することができる
●コード生成機能:MWTベースの部品ごとにイベントプロシージャを自動生成する。それぞれのイベント処理ごとに、処理プログラムを記述することができる
●ビルド/実行機能:ソースコードをビルドし、実行可能なアプリケーションを生成/実行する機能を提供する
NABプロジェクトは多種のツールのための拡張可能なプラットフォームを目指し、新たな機能追加やほかのGUIライブラリ(GTKなど)に対応すべく活動を行っている。











