0

テキストファイルを生成するクラスがあります。

これは、次のメソッドを持つ非常に単純なクラスです。

ファイルの作成、ファイルのオープン、ファイルのクローズ、ファイルの保存、ファイルへの書き込みなど

フォントサイズ、色、最大単語数など、テキストをファイルに書き込むときに使用するオプションがいくつかあります。

これらのオプションはコンストラクターに渡されます。

このクラスを2つの別々のクラスに分割する必要があります。

fileMaker fileMakerOptions

そしてfileMakerOptionsオブジェクトを使用してテキストサイズなどの責任を負い、fileMakerのコンストラクターに渡しますか?

または、ファイルメーカーに、スタイルオプションを含むファイルの作成に関連するすべてのものをカプセル化させるのが最善でしょうか

4

3 に答える 3

0

クラスが単純な場合。そして、選択肢が少ない場合。いいえ、新しいクラスを作成しないでください。オーバーリファクタリングは非常に悪いです。

于 2012-08-24T09:39:44.130 に答える
0

処理するオプションの数に関する限り、メインクラスの責任に関する詳細情報を提供する必要があります。とにかく-新しい追加インスタンスを作成する一般的な考え方は、メインの「クラス」の責任から責任を処理するオプションを削除することです。

私の場合、オプションの量が4〜5を超える場合は、個別のオプションエンティティを作成することにします。

于 2012-08-24T09:56:58.840 に答える
0

私は、既存のクラスが難しくなりすぎたり、関数のプロパティが多すぎたりする場合、またはクラスが大幅に拡張されることが事前にわかっている場合にのみ、クラスを分割します。

あなたの場合、それは関数/プロパティの複雑さと量に依存します。

于 2012-08-24T10:25:30.160 に答える