簡単です。 .NET Frameworkのガイドラインを一度聞くだけで実際に役立ちます(本書の多くの資料はRedmond WonderlandのJavaスタイルの要素です)。
プロジェクト間またはプロジェクト内で同様の型名を使用しないでください/ライブラリは名前空間を混合する。ドメインやモデルを一般的に混在させることができます(C++言語でも厳密で強力ですが、コンパイラ、解像度、列挙型コンパイラのクラッシュや問題にもなります)。
したがって、完全に修飾されていても、偽りのない(btwエイリアスと「使用」は非常に制限されており、せいぜい軽度の複製が行われ、一般的なプログラミングではC#の弱点などが証明されます)。私の経験で
、データドメインの種類は、より適切な名前のための主なターゲットであるため、ある名前のリファクタリングのために:
a)は豊富なのASTの処理と安い(しかし、のような単純なADT-SのサポートC#では、IDEで右クリックし、タイプチャレンジされた動的Rubyファン/バッカーに応じて強力に感じる)
[4.0としても読むことができるダイナミックな機能のヒツジは誰もが責任を負うが、名前空間や機能JS、Cテンプレートを用いて(クラス付きC言語ではない)、またはそれに類似する]
b)は、セマンティクスをよりよく伝達します。
c)通常、原始的であるが型付きの本質またはメッセージ(OOではない型、すなわち前述の本のようにOO型の批評はそれ自体がまっすぐイントロから壊れる)。リフトすべての土地を参照する「モデル」)
d)および「エイリアス」は、実際に可能であり、非常に2020のようなクロスドメインの使用に有用なアーチファクト(..すなわちなる。値型プログラミング)
実際にはルールはありませんが、開発中にネームスペースを混在させていることに注意してください。プラス少し余りにも深刻ではない、よりコンパイル時間とIntelliNonsenseのエラー..もちろん
あなたの設計/命名の問題です。ツールベンダーでさえ、時代遅れのブラウズ情報に基づく拡張された一般的なIDEのもう一度、管理された言語では他の人がそれをうまくやっています。
名前を複製することに反対しているわけではありませんが、デュアル+ interop +表現などを混在させるとケースが(厳しいが必要です)同じ名前で読みやすくなります。すなわち、重複は二重使用の必要性です。しかし、それはC#が親切ではない、または奨励していない低レベルのイディオムです(オーバーヘッドに有利です)。
あなたの答えに追加するだけで、ただ一つの別名は使用しないでください。両方にエイリアスを使用し、エイリアスを使用してそれらを常に参照してください。混乱の原因となるため、そのうちの1つをデフォルトにしないでください。 – DevinB