私はゲームをデザインしていて、自分がしていることの概要をよく理解しています。
ただし、OOPスキルを向上させようとしていますが、同じ問題に直面することがあります。抽象化されたオブジェクトをどのように使用すればよいですか?
画面上にxプロパティとyプロパティがあり、おそらく幅と高さがまだすべてを把握していないものを表すエンティティのリストがあるとします。
それから私は特別なタイプのエンティティを持っています。1つは移動でき、もう1つは移動できず、おそらく将来的には衝突可能のようなものです。
それらはすべてエンティティのコレクションにあり(List<Entity>
私の場合)、移動してメインループ上のDynamicEntityのインスタンスであるエンティティをシミュレートしたいのですが、それらはすべてエンティティの抽象的なリストにあり、エンティティかどうかはわかりません動的エンティティであるかどうかにかかわらず、ループ内。
私はそれをチェックすることができることを知っていinstanceof
ますが、それは最善のアイデアではないと確信しています。
タイプをチェックするためにエンティティ内にブール値のようなものを持っている人を見たことがありますが、実際にはすべての種類のエンティティをハードコーディングしたくありません。
そのような場合のベストプラクティスを知りたいだけですか?