私はしばしばこの種の状況を持っています。そして、それらについてのすべての記事とメタ情報を格納する別のクラスがあります。私は通常それをArticlesManagerという名前にします。しかし、私は、クラス名のManagerクラスのような言葉を使うのは悪い習慣だと読んだことがあります。 ArticleクラスがModelsの名前空間にある場合、その名前空間をどのように呼び出す必要がありますか?C#(または他の言語)でのクラスの名前付け
答えて
どのように名前を付けて(あなたの質問で行ったように)ArticleMeta?
'ArticleMeta'完璧な名前 – PresleyDias
そのような手榴弾は現実を説明する10ヤード以内の最短の名前または接尾辞が一番です。これは私にGoogleの「3文字の言葉」を思い出させ、コーディング規則のために働くかもしれないものを選ぶ。 –
"マネージャー"と呼ばれることの大きな欠点は、クラスがそれ以降の責任を負う傾向が強く、単一責任の原則に違反し始める傾向があることです。
たとえば、記事をデータベースに保存し、 "ArticleStore"というクラスに「ArticleManager」という名前を付けることを扱うクラスを考えてみましょう。次のプログラマーが記事の翻訳を行う場所を必要とするとき、そのクラスのうちのどれが無関係なコードで終わる可能性がより高いですか?
これは何か「ArticleManager」を呼び出すという意味ではありませんノーノー、それは実際にクラスが何をするかの名前として意味を作る場合、それだけで、それは非常に一般的な名前だとに名を絞り込むしようとしていることを意味しクラスが実際にしているのは良い習慣です。
短く:ArticleManagerが考えることができる他の何かよりも理解力が優れている場合は、単にArticleManagerと呼んでください。
長い:まず、ソリューションを適切に設計する必要があります。その後、あなたのクラスが "ArticleManager"として最もよく記述されている場合は、gollyによってArticleManagerを呼び出します。命名規則に固執しないでください。規則は、経験則として存在し、論理的な(そして十分に考察された)理由がある場合に適合される(または無視される)ことを意味する。
私自身の例:.netでは、「99%正しい」変数を公開するはずがありません。それが正しくない時間の1%は、プロパティを使用しても裸の変数に対して測定可能なパフォーマンス上のペナルティがある場合です。
- 1. C++クラスの宣言と名前空間
- 2. 他の言語の名前から月の番号を取得
- 3. クラスの名前をつけて、クラスに名前を付けて属性を付けたり、その属性をクラス名に入れていいのですか?
- 4. クリーンコード - 関連クラスの名前付け
- 5. PHPクラス関数の名前付け
- 6. Yii 2.0クラスの名前付け
- 7. Goプログラム言語で名前付きのキャプチャグループを見つける正規表現
- 8. 名前付きタプルまたはその他のクラスのパンダを持つfillna
- 9. C# "usings"またはVB "imports"の言語不可知論者の名前
- 10. Samsung HDDファームウェアアセンブリ言語の名前は?
- 11. C言語のデジタル署名
- 12. 名前付けコンテナのfindControl(Asp.net webform C#)
- 13. 多言語の名前付きエンティティのリンク
- 14. 他の言語のためのC++でのライブラリの作成
- 15. symfony:実際の名前が数字で始まる場合のクラス/名前空間の名前付け方法
- 16. 他の言語とのC++ interop
- 17. Railsでの多言語タグ付け
- 18. C#で名前空間とクラスの同じ名前を避けるには?
- 19. 名前付きエンティティのPython自然言語処理
- 20. C#という名前のクラスに新しい名前を付けることは可能ですか?
- 21. 動的に型指定された言語(Rubyなど)での変数の名前付け
- 22. ボタンに名前を付ける他の方法は?
- 23. ユーザーストアドプロシージャの名前付けを避けるSP%またはSP_%
- 24. ウェブ言語を使用して変数を他の言語の名前に連結する方法
- 25. どのようにViewModelクラスに名前を付けますか?
- 26. 他のリスト内のアイテムからリストに名前を付ける
- 27. C言語のempyテーブルのSQLite列名
- 28. 名前付きパイプはCプログラムで開けません
- 29. 名前を付けるクラスと名前空間は同じですか?
- 30. 名前の装飾または名前のmanglingでのC++
どこを読んだのですか?名前はクラス内の実際の名前ほど重要ではありません。あなたがそのような名前を必要とするクラスを持っているなら、恐らくそれはクラス自体の設計において悪い習慣を示しているでしょうか? –
'Magazine' =)や' ArticleRepository'はいかがですか –