【高品質なアプリケーション開発テクニック(その4)】
~モジュールの階層設計編~
組込開発では、ある機器向けに開発したアプリケーションを、別の機器(後継機種など)用に移植することがよくあります。
その際、あらかじめ移植することを考えて設計していないと、プログラム全体を修正することになり、移植に非常に手間がかかることもあります。
モジュール階層設計の目的のひとつは、アプリケーションを物理的側面と論理的側面にわけ、物理的環境(ハードウェアやOSなど)の情報を隠蔽することにあります。
これにより、移植時の修正範囲を局所化することができます。
「イープルトレーナー」では、アラーム時計をテーマに、モジュールの階層設計の基礎が学べるようになっています。
階層構造の上にあるモジュール(制御処理管理モジュール)ほど、論理的なモジュールになり、下にあるモジュール(画像ファイル読み込みモジュール)ほど、物理的なモジュールになります。
画像ファイルを、実際にどのファイルからどのように読み込むかは、画像ファイル読み込みモジュールが管理しており、制御処理管理モジュールはその情報を意識する必要はありません。
また、異なるプラットフォームに移植する際には、画像ファイル読み込みモジュールのみを変更すればよいことになります。
ますます膨大になるアプリケーションの開発現場に参画する前に、イープルトレーナーで基礎を見につけてはいかがでしょう?
第一弾のBASIC編では、Windows上で手軽に学べるようにVC++ Express Edition(無料ダウンロード可)上で学習できるようになっています。