ビックひまわりが風で折れないためにやったこと
以前種から撒いたひまわりは今は2メートルを超えるほど立派になりました。
しかし、この前強風が吹いた時に、ものすごく勢いでひまわりがしなって折れそうになっていたので、ずっとそばで寄り添っていました。
今後も雨の中 ...
コードにコメントをつけることがダメなケース 更新が追いついていない
例えば以下のようなコメントがあったとします。
//ここでの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などです。 ...









