DBFlute用語集 G

"G" で始まる用語に関するページです。

GapClass (ギャップクラス)

ジェネレーションギャップにおけるExクラスの別称です。 テーブル構造が反映されたBsクラスに対して、アプリケーションによるギャップを追加する(できる)クラスということで、ギャップクラスと呼ばれます。

GenerationGap (ジェネレーションギャップ)

自動生成されたクラスにアプリケーション独自のメソッドなどを付与できるようにする構造で、ジェネレーションギャップパターンと呼ばれます。 DBFluteでは、自動生成されるクラスは、(一つのクラスにつき) Bsクラス(スーパークラス)Exクラス(サブクラス) に分かれ、再自動生成されたときは、Bsクラスは(常に)上書きされ、 Exクラスは(既に存在している場合は)上書きされません。ゆえに、Exクラスには、アプリケーション独自のメソッドを(手動で)作成しても構いません。 この仕組みを利用した現場フィットとして、"where句の再利用"、"ドメインロジックの再利用" というものがあります。

現場フィット - ドメインロジックの再利用

DBFlute.NETでは、継承の代わりに、C# が持っている partial という言語仕様を利用して実現されます(一部例外あり)。 但し、partial だと、Bsクラスの自動生成されたメソッドをExクラスでオーバーライドできないのが難点です。