リファクタリング
外部から見たときの振る舞いを保ちつつ、理解や修正が簡単になるように、ソフトウェアの内部構造を変化させること 定義
リファクタリング (名刺) : 外部から見たときの振る舞いを保ちつつ、理解や修正が簡単になるように、ソフトウェアの内部構造を変化させること
リファクタリングする (動詞) : 一連のリファクタリングを適用して、外部から見た振る舞いの変更なしに、ソフトウェアを再構築すること
個々のリファクタリングは非常に小さいステップ、またはそれらの組み合わせ
それゆえに、たとえ未完成であってもいつでも中断が可能
一度に行えそうな場面でも非常に小さなステップで進んでいく → 一見非効率に見えるが、各要素が秩序だっており、デバッグにかかる時間も短くなるため、速く進む
リファクタリングはフレームワークの開発に不可欠
リファクタリングは、コードを読みやすくして、修正しやすいものに保つための鍵 体系的に行う必要がある
コードの臭いの典型例は重複
完璧ではないが健全なアーキテクチャへの適用と、事前の設計と組み合わせて使うのが良い