JavaScriptスタイルガイド:クリーンで一貫したコードの書き方

こんにちは、未来のプログラマーたち!あなた们とJavaScriptのスタイルガイドの世界を探る旅に出発することをとても楽しみにしています。プログラミングを教えて数年が経ちましたが、クリーンで一貫したコードを書くことの重要性を強調するのはやめられません。これは部屋を片付けるのと同じで、すべてを簡単に見つけて管理するのに役立ちます!

JavaScript - Style Guide

なぜスタイルガイドが必要なのか?

さあ、詳しくなってみましょう。まず、スタイルガイドが必要な理由について話しましょう。グループプロジェクトで、それぞれが異なる方法でコードを書くことを想像してみてください。それでは混沌としてしまいますよね!スタイルガイドは、誰もが従うことに同意する規則のセットで、コードを読みやすく保守しやすくするものです。

それでは、JavaScriptのスタイルガイドの詳細に入りましょう!

コードのインデント

H3:読みやすいコードの基盤

インデントは、家の基盤のように、構造と安定性にとって非常に重要です。JavaScriptでは、通常、スペースやタブを使用してコードをインデントします。以下に例を示します:

function greetStudent(name) {
if (name) {
console.log("Hello, " + name + "!");
} else {
console.log("Hello, student!");
}
}

この例では、関数の中およびif-elseステートメントの中のコードをインデントしています。これにより、コードのどの部分が一緒であるかが明確になります。

コメント

H3:未来のあなたに残す道標

コメントは、コードの中に残す小さなメモのようなものです。コメントはコードの動作に影響を与えず、コードが何をしているかを説明します。以下にその使い方を示します:

// これは単行コメントです

/*
これは
複数行の
コメントです
*/

/**
* これはJSDocコメントです
* 関数をドキュメント化するために使用されます
* @param {string} name - 学生の名前
*/
function greetStudent(name) {
// コードここに
}

良いコメントは「何故」を説明し、「何を」はコード自体が明確に示すべきです。

変数の宣言

H3:コードのキャスト紹介

変数は、コードのストーリーのキャラクターのようなものです。JavaScriptでは、いくつかの方法で変数を宣言できます:

// 変化する可能性のある変数には 'let' を使用
let age = 25;

// 変化しない変数には 'const' を使用
const PI = 3.14159;

// 現代のJavaScriptでは 'var' を使用しない
// var oldWay = "私たちはもうこれを使用しません";

使用する前に変数を宣言し、値が変わることを知っている場合以外は const を使用するようにしましょう。

キャメルケースでの識別子名

H3:意味のある命名規則

JavaScriptでは、大部分の識別子にキャメルケースを使用します。これは単語を寄せ集め、新しい単語(最初のものを除く)を大文字にすることです。以下にその样子を示します:

let firstName = "John";
let lastName = "Doe";
let fullName = firstName + " " + lastName;

function calculateArea(width, height) {
return width * height;
}

const MAX_SIZE = 100; // 例外:定数はしばしば ALL_CAPS で記述されます

スペースとブラケット

H3:コードに余裕を持たせる

適切なスペースはコードを読みやすくします。これは長いエッセイにパラグラフを追加するのと同じです。以下にスペースとブラケットの使い方を示します:

// 良いスペース
if (condition) {
doSomething();
} else {
doSomethingElse();
}

// 関数呼び出し
console.log("Hello, World!");

// 配列とオブジェクト
let colors = ["red", "green", "blue"];
let person = { name: "Alice", age: 30 };

演算子の周りやカンマの後ろにスペースを使用することに注意してください。これらの小さな詳細がコードをプロフェッショナルに見せるのです!

オブジェクトの規則

H3:データの構造化

オブジェクトは、関連するデータのコンテナのようなものです。以下にその典型的な構造を示します:

const student = {
name: "Bob",
age: 20,
grades: {
math: 90,
science: 85
},
isEnrolled: true
};

// オブジェクトプロパティのアクセス
console.log(student.name);
console.log(student["age"]);

オブジェクトのプロパティを一貫して整理整頓することで、後で問題を避けることができます!

ステートメントの規則

H3:一つの考え、一つの行

一般的に、各ステートメントを一つの行に保ちます。これは、エッセイで文を書くのと同じで、それぞれが完全な考えを表現するべきです:

let a = 5;
let b = 10;
let c = a + b;

if (c > 10) {
console.log("c is greater than 10");
}

これにより、コードが読みやすくデバッグしやすくなります。

行の長さ

H3:コンパクトなものにする

行の長さを適切な長さに保ちます。通常は80-100文字程度です。行が長くなった場合は、区切ります:

// 長すぎる
let result = veryLongFunctionName(extremelyLongVariableName1, extremelyLongVariableName2, extremelyLongVariableName3);

// より良い
let result = veryLongFunctionName(
extremelyLongVariableName1,
extremelyLongVariableName2,
extremelyLongVariableName3
);

これにより、読みやすさが向上し、コードがきれいに見えます。

すべてを合わせる

これまでのスタイルガイドをすべて合わせた、完全な例を見てみましょう:

/**
* ショッピングカート内のアイテムの合計価格を計算します
* @param {Object[]} items - カート内のアイテムの配列
* @returns {number} 合計価格
*/
function calculateTotalPrice(items) {
let total = 0;
const TAX_RATE = 0.08;

for (let i = 0; i < items.length; i++) {
let item = items[i];
let itemPrice = item.price * (1 + TAX_RATE);

total += itemPrice;

// 各アイテムの税込み価格をログします
console.log(`${item.name}: $${itemPrice.toFixed(2)}`);
}

return total.toFixed(2);
}

// 使用例
const shoppingCart = [
{ name: "T-shirt", price: 15.99 },
{ name: "Jeans", price: 39.99 },
{ name: "Shoes", price: 59.99 }
];

let finalPrice = calculateTotalPrice(shoppingCart);
console.log(`Total price: $${finalPrice}`);

この例では、適切なインデント、コメント、変数宣言、キャメルケース命名、スペース、オブジェクトの使用、行の長さのガイドラインを守っています。

これらのスタイルガイドを守ることで、コードが読みやすく保守しやすくなります。あなたのプログラミング人生を通じて、これが役立つスキルになるでしょう。幸せなコーディングを、そしてあなたのコードが常にクリーンで一貫していることを願っています!

Credits: Image by storyset