コードにコメントをつけることがダメなケース 更新が追いついていない
例えば以下のようなコメントがあったとします。
//ここでのurlは、テスト環境では 本番環境では です。補足のため非常に親切なように見えますが、このような情報をコードに埋め込んでしまうと、いざurlが変わったときにコメン ...
きれいなコードはいつ書くのか
重複がなく、命名も明確でわかりやすい コードを書くことは非常に重要ですが、どのタイミングでそのコードをかけばいいのでしょうか。
できれば、はじめから書けると良いですが、まだシステム全体が把握できていない初期の段階ではこれら ...
try/catchブロックをシンプルにする
try/catchブロック内の処理は、それぞれ関数として抽出すると良いとされています。
try{// ここに細かい処理を書かかない。関数に抽出してそれを呼び出す calcPrice()}catch(e){// 上記と同様 rep ...
オブジェクトの変更と応答を同じ関数でやらないようにする
以下のような関数があるとします。
const set = (obj, property, value) => {//objにpropertyがあればvalueをセットしてtrueを返す。なければfalseを返す}この ...
関数の引数が増えそうなときは引数オブジェクを渡すことを考えてみる
関数の引数がどうしても3つや4つになる場合は、ひとつのオブジェクトして渡すことを考えてみます。
const myFunc = (hoge, foo, bar) => {//do something}const data = ...
関数の引数が2つ以上だと起きる可能性があるバグ
関数の引数が2つ以上だと順序を気にしないといけない、というデメリットがあります。
以下の関数は name と file という二つの引数をとります。
const getHtml = (name, file) => ...
関数の引数の数について
引数の数は少ないに越したことはないですが、以下は個人的な基準です。
引数なしが理想引数がないのが一番シンプルです。
しかし、動的に結果が変わるのがプログラムなので、このケースはあまりない気がします。
関数の引数がbooleanだった場合は気をつけよう
関数の引数がフラグ(boolean)だった場合は、その関数をリファクタリングするチャンスかもしれません。
というのも、フラグを引数にとっているケースでは、そのフラグによって処理を分岐している可能性があるからです。
関数名・メソッド名をつける時の注意点 同じ意味なのに違う単語を使わない
すでにあるデータ(配列)に対して新しいデータを追加する処理があるとします。
あるシステムではaddXXXXというような命名をしていました。
例えば、addCustomer・addHistoryなどです。 ...
関数名・メソッド名をつける時の注意点 一部分だけ異なるような命名にしない
関数やメソッドに名前をつけるときは、他とは明確に異なることがわかるようにするべきです。
例えば、tamiXXXXXX のように、すべての命名の先頭に同じ文字列をくっつけると、他との区別がしづらくなります。
ta ...









