11章『一度に1つのことを』P.143
一度に複数のことを行うコードは分かりづらい
■コードは1つずつタスクを行うようにする
手順
- コードが行っている「タスク」をすべて列挙
- タスクをできるだけ異なる関数に分割する(少なくとも異なる領域に分割する)
11.1 タスクは小さくできる(P.145)
一目見ただけではわからないコードは、複数のタスクを同時に行っている場合がある
複数のタスクを別々に解決する→読みやすいコードになる
具体例(JS)
スコアを更新するコードと見せかけて2つのタスクを内包
- old_voteとnew_voteを数値に「パース(解析)する」
- scoreを更新する
11.2 オブジェクトから値を抽出する(P.147)
タスクを分割する→コードが分かりやすくなる→リファクタリングしやすくなる
具体例(JS)
まずはタスクを書き出す→関数または領域で分けて個別に解決していく
11.3 もっと大きな例(P.151)
具体例(JS)
もっと長いコードでも同じ
タスクを書き出す→関数または領域で分ける(他の領域のことを考えずに済む)
11.4 まとめ(P.155)
タスクを分割することが大事
読みにくいコードがある→そこで行われているタスクをすべて列挙
→別の関数(やクラス)に分割
→分割できないものは関数の論理的段落といえる
担当:やし