ゲームが作れるようになるまでがんばる日記

ゲーム制作のことを中心にゲームに関することを書いています

is-aかhas-aか

今作っている部分でis-aにするか、has-aにするかで悩む。
たとえば、シューティングゲームの弾を表現する場合。テクスチャを描画するクラスがあるとき、弾クラスはテクスチャ描画クラスを継承して実装するべきか、それとも弾クラスにテクスチャ描画クラスのインスタンスをメンバにもつべきか。
いまいち、is-aとhas-aのそれぞれの特徴、メリット、デメリットを理解していない。


最近読んだis-aやhas-aの面白い例
http://www.kt.rim.or.jp/~kbk/zakkicho/08/zakkicho0803b.html#D20080312-6

R2UnitとDroidの関係はis-a。JediとLightsabreの関係はhas-a。