変数に名前を付ける際に推奨されるベストプラクティスは何ですか?グローバル変数?変数に名前を付けるときに従うべきベストプラクティスは何ですか?
答えて
あなたが採用することに決めた基準は大したことではありません。最も重要な要素は、それに固執することです!一貫性は非常に重要であり、あなたが管理している限り、将来的にコードを読みやすく維持することが非常に簡単になるでしょう。
ウインドウズのWin32およびC++プログラミングに使用されているハンガリー語表記をチェックすることができます。ベスト
いくつかの言語で数字や記号でそれらを起動しないように。また、使用している言語の予約済み機能を使用しないでください。たとえば、C#では "if"、 "else"、 "void" "try"などの名前を付けたくありません。
私は決して経験豊富なプログラマーではありませんが、大学とユニで私を掘削して、このようなサイトでそれを見たことがあります。変数を命名するときには、の意味はとなります。
これは教育的なことかもしれませんが、変数名はその変数がどのような目的で使用されているかをコード内のどこにでも簡単に明示する必要があります。それはコードが大量のコメントを必要とするべきではないという事実になります - それはそれ自身を説明するべきです。変数の命名はその一部です。
私の答えに加えて、ブレイクとフィルが言ったことは、あなたが間違って行くとは思わない。 –
あなたの名前は意味があります。コードは自己文書化してください。略語は避けてください。ほとんどの言語では、名前の長さは通常問題にはなりません。
ブール変数はis*
またはhas*
で始まる必要があります。!
がしばしば見逃される可能性があるため、テストで否定を避ける名前を選択してください。
グループインデックスが関与しなければ、変数を区別するために数字を使用して、すなわちdocumentTitle
を共通のプレフィックスを使用して、アイテムに関連付けられた変数、documentType
、documentSize
等
避けます。
ハンガリー表記については忘れてしまいます。
+1ですが、ハンガリー表記は少し誤解されています。良い品種と悪い品種があります:http://www.joelonsoftware.com/articles/Wrong.html –
いくつかの広範なストローク:
- 使用
i
、j
、ループ変数のk
。それは非常に一般的な慣行であり、理解しやすい。 - ブール型(真偽)変数の場合は、
isDirectory
またはcanExecute
のような述部名を使用します。 camelCase
またはuse_underscores
のいずれかが優先事項です。- 変数のの意味を説明するハンガリー表記で変数を装飾することは良い考えです。
iMax
は、配列内の最大要素のインデックスになります。 言語レベルのタイプの情報を使用して名前を飾るのはあまり役に立ちません。違いの非常に面白い説明と、なぜどちらが良いか悪いのかについては、Joel's essayを参照してください。
- 1. オブジェクトであるプロパティに名前を付けるベストプラクティスは何ですか?
- 2. t-sqlのストアドプロシージャに名前を付けるベストプラクティスは何ですか?
- 3. 関数式に名前を付けることができない場合は、関数式の名前を付けるポイントは何ですか?
- 4. Javaで変数を使用して変数に名前を付けることはできますか?
- 5. 名前付き引数のルールとは何ですか?
- 6. なぜ私はIfステートメントに名前を付けるべきですか?
- 7. 名前付き変数をPHPファイルに投稿するには?
- 8. AndroidでXML要素のIDの名前を付けるベストプラクティスは何ですか?
- 9. サブクラスの名前を付けるベストプラクティス
- 10. Rubyの名前付き引数(名前付きメソッドパラメータ、キーワード引数)の現在の状態は何ですか?
- 11. 複数の向きを扱うときに使用するべきベストプラクティスは何ですか?
- 12. Javascriptで配列を宣言するときに従うべきベストプラクティスはどれですか?
- 13. バッキングビーンズにクラスよりも別の名前を付けるべきですか?
- 14. SOAPインターフェイスのメソッドと変数に名前を付けるベストプラクティスはありますか?
- 15. 列名の前に項目名を付けるメリットとデメリットは何ですか?
- 16. Visual Studioデバッガでスレッドに名前を付けることはできますか?
- 17. C#で配列インデックスに名前を付けることはできますか?
- 18. 変数にはどのように名前を付けますか?
- 19. PHPでどのように名前付き変数配列に爆発する?
- 20. XBLハンドラに名前を付けることはできますか?
- 21. Omniauth認証ルートに名前を付けることはできますか?
- 22. OpenLayers:マーカーに名前、説明を付けることはできますか?
- 23. 匿名クラスと名前付き内部クラス? - ベストプラクティス?
- 24. 「名前付き型」とは何ですか?
- 25. 変数に動的に名前を付ける?
- 26. カラム名が日付のときにSASの名前を変更
- 27. 名前付きパイプに接続できるクライアントは1つだけです
- 28. 変数ごとに名前付きセクションを作成しますか?
- 29. 名前付きパイプに接続できるクライアントの数
- 30. 関数演算子に別名を付けることはできますか?
真実ですが、実際に実践されたことはありませんか?そして、PDFを読んでいるうちに、このフォーマットでは、すべてをコメントするのが本当に好きでない限り、最終的には多くの潜在的なコードになります。 –
ハンガリーの表記法の潜在的な性質を理解すれば、変数の型を理解して、自分に思い出させるためにその定義を見つけ出すことなく簡単に理解することができます。これは、入力エラーが非常に簡単であるため、C++では特に重要です。これは選択した言語では問題ではないかもしれません。 –
それは本当だと思うし、私は経験から話す。 –