プログラミング入門, リファクタリング

引数の数は少ないに越したことはないですが、以下は個人的な基準です。

引数なしが理想

引数がないのが一番シンプルです。

しかし、動的に結果が変わるのがプログラムなので、このケースはあまりない気がします。

プログラミング入門, リファクタリング

関数の引数がフラグ(boolean)だった場合は、その関数をリファクタリングするチャンスかもしれません。

というのも、フラグを引数にとっているケースでは、そのフラグによって処理を分岐している可能性があるからです。

プログラミング入門

すでにあるデータ(配列)に対して新しいデータを追加する処理があるとします。

あるシステムではaddXXXXというような命名をしていました。

例えば、addCustomer・addHistoryなどです。 ...

JavaScript, プログラミング入門

関数やメソッドに名前をつけるときは、他とは明確に異なることがわかるようにするべきです。

例えば、tamiXXXXXX のように、すべての命名の先頭に同じ文字列をくっつけると、他との区別がしづらくなります。

ta ...

プログラミング入門, リファクタリング

forループや短い関数内で1文字の変数が使われることがあります。

これらの変数がどのように可読性に影響するのかを考えてみました。

この変数が非常に狭い範囲ででてくるのであれば、そこまで読む時にストレスは感じない ...

プログラミング入門

キャンプ場を、自分が見つけたときよりもきれいにすること

というボーイスカウトの規則があります。

プログラミングの世界でもこの言葉が用いられることがあります。

つまり、コードを綺麗に保つには常日頃から ...

プログラミング入門

時にプログラミングをしていると、他の人が思いつかないような巧みなコードを書きたくなる。

でもチームでの開発ではそういったトリッキーなコードはできるだけ書かない方がみんなのためになる。

むしろ、誰もが思い浮かべる ...

JavaScript, React, プログラミング入門

Reactの関数コンポーネントでlodashのdebounceをそのまま使うと、毎回関数が実行されてしまってうまく機能しません。

これはdebounceが内部的にsetTimeoutを使用していることと、関数コンポーネント ...

JavaScript, プログラミング入門

mouseoverやscrollイベントが発火した際に何か処理を行いたいことはよくあることですが、これらのイベントは大量に発生するため、イベントが発火する度に関数を実行するとかなりの負荷がかかります。

lodashのdeb ...

JavaScript, React, プログラミング入門

ボタンコンポーネントにonClick時に実行したい関数を渡す場合は、以下のように書くことができます。

<button onClick={this.handleClick}/><button onClick={( ...