ここからsmurf命名という用語を取りました(21番)。トラブルに慣れていない人を救うために、Smurfの命名は、関連するクラス、変数などの束に共通の接頭辞を付ける行為であるため、「a SmurfAccountViewpass SmurfAccountDTOto to SmurfAccountController」などになります。
私がこれに対して一般的に聞いた解決策は、smurf名前空間を作成し、smurfプレフィックスを削除することです。これは一般的に私に役立ちましたが、私は2つの問題に直面しています。
私は
Configurationクラスを持つライブラリで作業しています。呼び出すこともできましたがWartmongerConfiguration、Wartmonger名前空間にあるため、単に呼び出されConfigurationます。同様Configurationに呼び出すことができるクラスもありますSmurfConfigurationが、それはSmurf名前空間にあるため、冗長になります。私のコードにSmurf.Configurationは横に表示される場所があり、Wartmonger.Configuration完全修飾名を入力するのは面倒で、コードが読みにくくなります。SmurfConfigurationand(ライブラリではなく私のコードである場合)を扱う方が良いでしょうWartmongerConfiguration。私は
ServiceSmurf名前空間で呼び出されたクラスを呼び出しましたSmurfService。Smurfジョブを実行する複雑なSmurfライブラリの上にServiceあるファサードです。Smurf接頭辞がなければ非常に一般的なSmurfServiceため、より良い名前のようServiceです。それSmurfServiceはすでに一般的で役に立たない名前であり、スマーフを取り除くことはこれをより明白にしただけだと認めることができます。しかし、、などと命名することもできますがRunner、Launcherそれでも「気分が良くなる」SmurfLauncherのLauncherは、a が何をするのかわからないからですが、aSmurfLauncherが何をするのかは知っているからです。あなたは、aSmurf.Launcherがすることはa と同じように明白であるべきだと主張することができますSmurf.SmurfLauncher、しかし、 `Smurf.Launcherは、smurfsを起動するクラスではなく、セットアップに関連する何らかのクラスであることがわかりました。
これらのいずれかに対処するためのオープンな方法と閉じた方法があれば、それは素晴らしいことです。そうでない場合、彼らの迷惑を軽減するための一般的な慣行は何ですか?
SmurfJobsを起動するか、技術的に実行してSmurfドキュメントの言語と一致させます。それと他の答えを踏まえて、私はに名前SmurfServiceを変更しSmurfJobRunnerます。私が予想したように、ナンバー1には言語にとらわれない最適な解像度がないようです。行くのがSmurfConfiguration適切な場合がありますが、私の場合Configurationは面倒でも最高だと思いますWartmonger.Configuration。
Smurf.ConfigurationをSmurfConfiguration感じるのですか?確かにそれは余分な文字ではありませんよね?(Config長さが問題である場合は短縮されます。)Smurf.Configuration問題はありSmurfConfigurationませんか?
Smurf.Launchersmurfsを起動しますか、それともsmurfsを起動しSmurfJobますか?おそらくそれを呼び出すことができますSmurf.JobLauncherか?