は、クラスと名前空間で異なる名前を使用することが推奨されていましたが、それを達成するのは難しい場合があります。 これは簡単なことです。特定のケースのために同じ名前を使用する必要がある場合、決して解決策を提供しません。C#で名前空間とクラスの同じ名前を避けるには?
は、たとえばのために、私は、構成に関するすべてのクラスを見つけるために名前空間を必要とし、その名前空間はABC.Configurationと命名されています。私はこの名前に間違いがないとは思わない。
名前空間の下には構成を保存するクラスが必要なので、その名前も構成になります。合理的だと思いませんか?
さらに、私は名前空間の下にConfigurationBuilder、ConfigurationManagerなどのいくつかのクラスを持っています。
は、Java、パッケージ名でより多くが何我々は「PascalCase」を使う「キャメルケース」、およびクラス名を使用します。だから、命名のために問題はありません。
だから、C#で、このシナリオでは、クラスに名前を付けるか?
はどうもありがとうございました。 Configuration.Configurationを使用する場合、ネーミングのためだけに書く必要があります。他のものは名前空間のないConfigurationManagerだけです。それは少し混乱です。
ConfigurationStoreを使用するアイディアは良いことです。ありがとうございます。 私は、クラスに名前を付けるという解決策は、その名前で使用法を明確に識別し、別の単語を追加することだと思います。 しかし私のプロジェクトでは、Configurationをどこかで使う必要があります.ConfigurationStore.Pathを書いて設定を読み込むと、それは奇妙に見えます。 IConfigurationのようなインターフェイスを使用して、名前付けの問題を回避することができます。
「Configuration.Configuration」タイプを持つことができます。あなたがそれをするのを妨げるものは何もありません。 – poke
C#はすべて小文字( 'configuration.configuration')で名前を付けることができますが、名前空間、クラス、およびメソッドの命名規則には' PascalCase'が推奨されます。 –
小文字を使用しようとしました。しかし、他のすべてのライブラリがPascalCaseなので、それは混乱でした。 – HalfLegend