今日もリファクタリング。
種類の異なる処理が混じっているのを分離していく。例えば、発振器の周波数を変える関数の中で液晶に文字を表示しているような箇所を、周波数を変更する関数と表示をする関数の2つに分離する。
このように処理を分離すると、モジュール(C言語なのでソースファイル単位)の独立性が上がるというメリットがある。具体的に言うと、変数のスコープを狭くできたり、#includeを減らすことができる。こうしておくことでモジュールが機能ごとにまとまり、ソースがシンプルになって将来の再利用もしやすくなる。
ただし、こういった書き換えはそれによって新たなバグを起こしやすい。書き換えでミスをしたときにコンパイラがエラーを検出できるように、書き換え手順を考えながら慎重に進める必要がある。