最終更新日:
リファクタリングとは、プログラムの外から見た動きを変えずに、中の構造を分かりやすく整え、変更しやすくすることです。
リファクタリングでは、重複した処理をまとめる、分かりにくい名前を直す、大きすぎる部品を分ける、といった整理を行います。利用者から見える機能は変わらないため、変更の前後で動きが同じであることを、自動のテストで確かめながら進めるのが基本です。
発注者からは、機能が増えないのに費用がかかる作業に見えることがあります。なぜ今必要なのか、何が楽になるのか(改修にかかる時間、不具合の起きにくさなど)を説明してもらい、機能の追加と比べて優先順位を判断します。
テストが用意されていない部分を大きく作り直すと、気づかないうちに動きが変わるおそれがあります。範囲を小さく区切り、少しずつ進めることが大切です。システム全体を新しい技術で作り直すモダナイゼーションとは、規模と目的が異なります。