next up previous contents index
Next: 14.3 Error Checking and Up: 14 Implementation Issues Previous:14.1 Name Space Conventions

14.2 Modular Implementation

ウィンドウ関連のライブラリを扱うと,巨大で扱いにくいプログラムになりがちです. これはプログラムに大量の「実際には使わない」コードをリンクしているからであり, さらにその原因は,リンク時にはそのプログラムがそのコードを決して実行しないか どうかがわからないからです. GLUTのAPIの設計思想のひとつ(最優先ではありませんが)は, プログラムがGLUT APIのサブセットを(なるべく)限定して用いれば, インプリメンテーションにとって必要なGLUTライブラリの部分を できるだけ最小とすることができるように API をモジュラー化することです. これはGLUTのインプリメンテーションが, APIのモジュール性によって有利となるように 構成されているということを強く仮定しています.

良いインプリメンテーションは, カラーインデックス・カラーマップ・マネジメント, オプショナルなデバイス・サポート (スペースボール,ダイアル&ボタンボックス,タブレット), オーバーレイ・マネジメント, ポップアップ・メニュー,様々なウィンドウ・マネジメント・ルーチン (ポップ,プッシュ,表示,隠蔽,フルスクリーン,アイコン化) 幾何的形状のレンダリング,フォント・レンダリング などを扱う多くのコードを, これらの機能へのインタフェースが, 明示的にGLUTプログラムによって使用される時だけに GLUTプログラムへ組み込まれるように構造化されています.


next up previous contents index
Next: 14.3 Error Checking and Up: 14 Implementation Issues Previous:14.1 Name Space Conventions
Mark Kilgard
Fri Feb 23 08:05:02 PST 1996