コード生成を使用して、特定のデータベースのテーブル定義に対応するインターフェイスを生成しています。
データベースは非常に乱雑であるため、それぞれ独自の定義を持つ約 500 のインターフェイス (500 のテーブルに対して) を取得します。
一部のインターフェイスは相互に継承できます。一部のインターフェイスについては、共通のインターフェイスを抽出してコード定義を最小限に抑えることができます。例えば:
interface One
{
int FirstField { get; set; }
bool SecondField { get; set; }
DateTime ThirdField { get; set; }
}
interface Two
{
int FirstField { get; set; }
DateTime ThirdField { get; set; }
double FourthField { get; set; }
}
コードに対して何らかの最小化を実行して、生成されるコードの量を最小限に抑えたいと思います(多重継承と共通コードの抽出により)。上記の例から、次のようなものを取得する必要があります。
interface OneTwoCommon
{
int FirstField { get; set; }
DateTime ThirdField { get; set; }
}
interface One : OneTwoCommon
{
bool SecondField { get; set; }
}
interface Two : OneTwoCommon
{
double FourthField { get; set; }
}
これらの問題を扱うアルゴリズムのブランチはどれですか?
これらのアルゴリズムの検索はどこから始めればよいですか?
関連する結果を得るためにGoogleに何を書くべきかさえわかりません。