2011-02-09 9 views
1

私は既存のコードをリファクタリングしています。私は既存のクラスからインタフェースを抽出しました。私はそのようなすべてのインタフェースを保持する別のクラスライブラリを作成しました。 私の問題は、構造体と列挙型のクラスがいくつかあることです。これらのクラスには、これらの構造体と列挙型を返すメソッドもあります。リファクタリング:インタフェースの抽出

私はこれらのクラスからインターフェイスを抽出したいと思います。しかし、私は今、構造とenumsについて心配しています。私はこれらの構造体とenumを私のインタフェースで抽出することはできません。したがって、構造体を返すメソッドと列挙型は抽出に容易に反映されません。

抽出されたインターフェイスで構造体と列挙型を使用するこの状況をどのように克服できますか?構造体を分割し、それをインタフェースのメンバーとして使用する必要がありますか?インタフェースで構造体を返すメソッドをどのように定義できますか?

+1

構造体と列挙型がインターフェイスの外で定義されている場合は、何かが見つからない限り、問題はありません。 – jswolf19

+0

はい、構造体と列挙型はインタフェースの外にありますが、インタフェースを抽出したいクラスの一部です。私はこれらの抽出されたインターフェイスを別のクラスライブラリに保持したい。このライブラリはクラスを含むライブラリを参照するのではなく、抽出されコンパイルされたインタフェースのライブラリは既存のクラスライブラリによって参照されます。 –

答えて

0

一般に、構造体と列挙型はクラスとは異なりネストしてはいけません。型の「公約」に含まれることが多いため、通常はそれらを独自のファイルに抽出して共有クラスに入れますインタフェースを持つライブラリ

関連する問題