オブジェクト指向に関するmadknightのブックマーク (3)

  • ゲーム開発のためのオブジェクト指向2

    ゲーム開発のためのオブジェクト指向2 文章:syun 日付:2005/5/28 目次 1.はじめに 2.インタプリタパターン 3.ビジターパターン 1.はじめに 今回もゲーム開発に役立つ「デザインパターン」の解説を行います。 ただ、前回と違い使う場面がかなり限定されています。 それは、「スクリプト」の実装時に適用するからです。 何回も同じことを書いていて申し訳ないのですが、 プログラムの「データ」や「アルゴリズム」は、 たいていはソースコードという「内側」に記述を行います。 それを「外部」で定義し、実行時に読み込ませるのが「スクリプト」です。 (まあ、似たようなものにデータベースとか設定ファイルとか色々種類はありますが…) ゲームにおけるスクリプトには、 アドベンチャーゲームのフローを制御するスクリプト シューティングゲームの敵キャラの行動パターンのスクリプト といった使い方があります。

  • 23.Interpreter パターン

    2012/04/26 一部修正しました デザインパターン 23章 Interpreter パターン 23.1 Interpreterパターンとは 23.2 サンプルケース 23.3 Interpreterパターンまとめ 23.1 Interpreter パターンとは 第23章では Interpreter パターンを学びます。Interpreter とは、英語で「解釈者・説明者」を意味する単語です。 何らかのフォーマットで書かれたファイルの中身を、解析した結果に則って何らかの処理を行いたい場合があります。 Interpreter パターンとは、このような「解析した結果」得られた手順に則った処理を実現するために最適なパターンです。 1 + 2 × ( 4 + 2 ) という計算式を処理する場合を考えて見ましょう。まずは、処理を解析すると、以下のような構文木が得られます。 このような構文木に則っ

  • デザインパターンを読み解く

    ポリモーフィズム(サブクラスによる切り替え、抽象化) ここに分類されるのは、オブジェクト指向の第3原則、ポリモーフィズムを使用したパターンです。ポリモーフィズムを使用すると、動的に使用するクラスを切り替えることができます。<参照> 他に分類されているものでも、ポリモーフィズムが重要な位置を占めているものもありますが、ここではそれしか使われていないものを扱います。 ただデザインパターン全体を通して強調されているのは、インターフェースでプログラミングするということです。実装への依存をなくし、そうすることによって設計の骨組みを明らかにするのです。 Template 次のようなメソッドがあった場合に、処理Bのところを条件によって変えたい場合があるとします。 class Hogehoge { void doit() { ... 処理A ... ... 処理B ... ... 処理C ... } }

  • 1