課題定義
課題定義って難しいですね.
課題はソリューションには一切言及してはいけないそうです.
AFCの場合はどうなるだろうかと考えてみました.
プロジェクト「AFC」の課題定義
Windows環境とC++言語でDirectXアプリケーションを作成する.
しかし,DirectXを直接扱うのは以下のような理由でコストが大きいと予想される.
・DirectXは高機能なため複雑な設定ができるようになっている.
しかし,その多くは普段利用しないため複雑さが増してしまう.・DirectXはオブジェクト指向型のライブラリではない.
よって,リソースの管理など本質的ではない複雑さに注意を払わなければならない.・DirectXの関数を呼び出す部分は,どのアプリケーションでも似たような部分が多くあると予想される.
それを各プロジェクト毎に記述するのは(例えコピー&ペーストだったとしても)無駄である.・DirectXのSDKはバージョンアップが多い.
DirectXの関数をハードコーディングしているとSDKのバージョンを変更する必要がでた場合,コストが大きくなると予想される.
これらに対処することが本プロジェクトの課題である.
適当に(思いつきで)書いてみました.
正しいかどうかは知りません.
これを書いていて驚きました.
今まで自分はAFCライブラリをだらだらを作ってきましたが,
これらの課題を全く解決できていないと気付かされたからです.
いや,1,2,3番目はある程度は解決していましたが,これを書いたことによって,自分の中でのイメージがより鮮明になりました.
凄いですねぇ.
ていうかAFCって名前を変えよう.
あと,この課題定義を更に洗練させていこう.