モデルの中で似た内容を持つクラスを見つけることはよくあります。これらの内容はコンポーネント自身のスキーマ(リレーション、カラムの定義、インデックスの定義など)に関連することがあります。このコードをリファクタリングする明らかな方法は基底クラスとそれを継承するクラスを用意することです。 しかしながら継承はこれらの一部しか解決しません。次のセクションでDoctrine_Templateが継承よりもはるかに強力で柔軟であることを示します。 Doctrine_Templateはクラステンプレートシステムです。基本的にテンプレートはRecordクラスがロードできるすぐ使える小さなコンポーネントです。テンプレートがロードされるときsetTableDefinition()とsetUp()メソッドが起動されこれらの内部でメソッドが呼び出され渦中のクラスに導かれます。 この章ではDoctrineで利用できる様

