ジャバスクリプト — ネーミング、スタイル、コメント


アマゾンで私の本をチェックしてくださいhttps://www.amazon.com/John-Au-Yeung/e/B08FT5NT62
今すぐ私の電子メールリストを購読http://jauyeung.net/subscribe/
他のプログラミング言語と同様に、JavaScriptはプログラムを読みやすく維持するためにベストプラクティスの独自のリストを持っています.JavaScriptにトリッキーな部分がたくさんあり、これは特定のパターンや機能を避けるべきです.我々はJavaScriptコードを読みやすくするためにいくつかのベストプラクティスに従うことができます.
この記事では、読みやすいコードのためのいくつかのベストプラクティスを見ていきます.変数と関数のネーミングを見て、グローバル変数を避け、厳密なコーディングスタイルを保ち、コード化をモデレートします.

変数、関数、およびCountクラスの簡単で短く、読みやすい名前


関数名は短くて意味がある.たとえば、誰かが誕生日を格納する変数を作成したい場合は、その名前を指定する必要があります.
これは、それが名前のようではならないことを意味しますb , しかし、それはまた、外来語のような何かであるべきではありませんveryVeryVeryLongBirthdayName . 命名birthday は適切でしょう.
また、何かを避けるためには、値を名前の機能と組み合わせることです.たとえば、誰かが過半数を超えているかどうかをチェックする関数を書きたいならばisAdult() 代わりにisOverEighteen() .
これはまた、すべての場所は、年齢18歳以上の年齢としてより多くの意味を作る.
また、変数と関数を命名するためのハンガリー記法も考慮することができます.記法は、戻り値の型と名前を1つにまとめます.JavaScript関数には、固定型の戻り値がないため、関数の型の接頭辞を追加できます.
例えば、ブールを返しますisAdult() 機能、我々は書くことができますbIsAdult()b booleanであることを示す.
それがすべてのコードの残りの部分と一貫性を保つので、英語で名前を保つことも良い考えです.すべての予約語function and new 英語はすべてですので、英語で他のすべてを保つことは一貫しています.
英語は国際的な言語でもあるので、開発者は英語を知らない.
クラスは他のオブジェクトを構成する関数です.たとえば、Personオブジェクトを構築するクラスを持っている場合、それらはPerson .
クラス名は大文字でなければならず、どのようなオブジェクトを作成しているのかを示します.

グローバル変数と関数を避ける


JavaScriptでは、すべてのファイルが同じスコープで実行されます.物事が偶然に変更されて、意図的に参照されることができるので、これは本当の問題です.
幸いにも、ES 6以来、JavaScriptはこれに対処するためにいくつかの機能があります.一つはモジュールの使用です.モジュールでは、明示的にエクスポートするものだけが利用できます.
JavaScriptの厳密なモードは、グローバル変数の誤った宣言を防ぐために有効にする必要があります.厳密なモードで何かx = 1 はキーワードなしでエラーを起こすvar , let , or const それの前に.
Also let and const ブロックスコープ変数と定数をそれぞれ宣言するためのキーワードですので、ブロック外では参照できません.
例えば、var 次のコードを書くと
if (true) {
  var x = 1;
}
console.log(x);
我々は、1から記録される1を見ますconsole.log ブロックスコープではないので.
一方、我々が使うならばlet の代わりにvar :
if (true) {
  let x = 1;
}
console.log(x);
それから、私たちはエラー'キャッチされないreferenceerror : xが定義されていません
我々が見ることができるように、我々は我々が期待しない場所で参照することができません.
別の方法は、我々が機能で個人的でありたいものを包むことです.
例えば、以下のように書くことができます.
(function() {
  var x = 1;
})();

console.log(x);
また、' catchされていない参照エラー:xが定義されていません上記のように宣言された直後に実行される関数は、すぐに呼び出された関数式またはIFEと呼ばれます.
我々が上に持っているIFEの外に何かを公開したいならば、我々はちょうど以下のように我々が欲しいものを返すことができます:
let foo = (function() {
  var x = 1;
  return {
    bar: 2
  }
})();
console.log(foo.bar);
我々はオブジェクトを返したbar プロパティとfoo . それから、我々は2から得るべきですconsole.log 出力.
写真でMohau MannathokoUnsplash

厳密なコーディングスタイルを保つ


彼らがスタイルをコード化する方法を決めるならば、チームのあらゆる開発者は彼ら自身のスタイルを持ちます.
これは、コードが異なる場所で異なるスタイルを持っていることを意味し、コードを読みにくいようにします.
そのため、スタイルを一貫して保つのは良い考えです.EslintやJSlintのようなプログラムで自動的にコードを作成することができます.これは、設定されたスタイルに固執するようにコードの静的チェックを行います.
また、コードベースを一貫した方法でコードをフォーマットするようなツールもあります.
きれいなコードを読みやすく維持することです.それを読むのが難しくてデバッグするのをやかましいものを持ってはいけません.

コメントが必要なとき


コードの多くは自己説明ですが、いくつかのコードを明らかにする必要があります.たとえば、コードが複雑なシステムの一部である場合は、コメントでいくつかの明確化が必要になる場合があります.
いくつかの行の長い単純な関数は、おそらく多くの説明を必要としない.
コメントを書くなら、複数行コメントを使うべきです/* */ 代わりに1行コメント// 彼らはより汎用性があるので.
コメントの1つの便利なトリックは、次のように複数行コメントを閉じる前に、ダブルスラッシュで書くことです
/*
  function foo(){
    return 1
  };
// */
この方法では、最初の行にスラッシュを置く前にスラッシュを置くことでコードをコメント解除することができます.
//*
  function foo(){
    return 1
  };
// */
上記のコードはコメントされません.
多くのテキストエディタは、JavaScriptコードを自動的にコメントしたりコメントしたりするのに十分スマートでなければなりません.
変数と関数は、それぞれが何を格納しているかを示す方法で名前をつけなければなりません.クラスは大文字で始まるべきです.
我々は、グローバル変数を避ける必要がありますので、誤って参照し、意図的な変更を引き起こすことができます.我々は物事を関数やモジュールの中でプライベートに保つことができます.
コードを読みやすくするために.コードを読むとき、我々がどんな混乱も得ないように、厳しいコーディングスタイルを保つことは重要です.
最後に、理解しにくい部分があれば、コード化についてコメントすることができます.