MASATOの開発日記


前の開発日記 次の開発日記 一覧

2002/07/26

最近は新しいRPGを作っています。 結構設計やプロトタイプ実装に時間を割き、ようやく本格的に実装が始まったところです。
これに限らず、最近は設計に結構時間を割くようになりました。 設計をした後実装しても、やはりうまくいかないことは多いのですが、 そういうときは再び設計からやりなおしています。 設計演習も兼ねているので、結構勉強になります。

「うまくいかない」というのは、実装がスムーズに行かないことで分かります。 これとこれとこの機能を実装しようとしていたところ、最初の一つはうまく実装でき、 次の一つもうまく実装できそうだけれど、最後の一つがうまく実装できそうにない。 となったら設計ミスです。うまく実装できないといっても、力づくで実装すれば なんとでもなりますが、まだ実装は始まったところです。最初から力づくでやっていては 後が思いやられます。

現在開発中のゲームは、ネットワーク対戦を行えるよう設計しています。 そこらへんをどうするかの設計を前もって考え、組み込んであるわけです。 しかし、これが実際にネットワーク越しに動くかどうかは今のところ分かりません。 ネットワーク部分を実装するのは当分先です。 (もしかしたら面倒なので止めちゃうかもしれません)
しかし、ネットワーク部分を実装する時が本当に来たら、 その時、今の設計が良かったかが問われるわけです。 さてさて楽しみです。

MFCの正体?

MFCのCFileというクラスは、入力機能と出力機能の両方を兼ねています。 コンストラクタ(あるいはOpen)において、引数にmodeReadを渡せば入力に、 modeWriteを渡せば出力となります。細かくは色々あるけれど省略します。

これに対し、C++標準ライブラリは、istreamと、ostreamの二つに分かれています。 Javaも同様にInputStreamとOutputStreamの二つがあります。

RubyやPerlは、MFCのように、ファイルを開くときにフラグで入力か出力かを指定します。

では、MFCのCFileの由来はどこにあるか、と考えてみると、 やはりCの標準ライブラリではないかと思います。 CFileに限った話ではありません。MFCは、C言語に似ていると感じるときが 多々あります。というわけで、MFCの正体は、拡張C言語。決まりです。冗談です。以上です。

前の開発日記 次の開発日記 一覧