[コラム] リファクタリングとは、 最適化することじゃない。 理解しやすくすること。
…これはべつに私が言い出したことではありません。
リファクタリングを世に広めた Martin Fowler 氏の言葉です。
Martin Fowler's Bliki in Japanese - リファクタリングの境界線
( 原文: MF Bliki: RefactoringBoundary )
リファクタリングとは、理解や修正が簡単になるための変更だと私は思っている。同じ変更でも、目的が異なれば、それはリファクタリングとは言わない。
※ リファクタリングを勉強するには、 何を措いてもファウラー氏の本は読んでおきましょう。
「リファクタリング ― プログラムの体質改善テクニック」
マーチン ファウラー (著)
ピアソンエデュケーション (2000/05)
ISBN-13: 978-4894712287
Martin Fowler's Bliki には、 ほかにも次のような記事があって、 とても参考になります。
リファクタリングの誤用:
リファクタリング中に2,3日システムが動かなくなっちゃってーなどと言ってる奴がいたら、んなもんリファクタリングじゃあなーいと言ってやれ。
リファクタリングはどこからやってきた?:
リファクタリングが、数学の因数分解(ファクタリング)から来ていることは明らかです。 x^2 + 5x + 6 という式は、(x+2)(x+3)というふうに因数分解できます。因数分解を行うことで、複雑な式が簡単になるのです。
(中略)
用語としては、しばらく使われてきたはずなのですが、どこから来たのか、語源は分かりません。
最適化はリファクタリングか?:
リファクタリングは、 コードを理解しやすくするためである。 最適化は、 プログラムを速くするためである。
| 固定リンク
「*コラム」カテゴリの記事
- [コラム] Visual Studio 11 に統合できるテスティング フレームワーク(2012.03.22)
- [コラム] TDD のパターン: Assert First(2012.02.09)
- [TDD Advent Calendar jp: 2011] TDD とアジャイルを支えるバックボーン #TddAdventJp(2011.12.25)
- [コラム] TDD の原点 ~ Kent Beck による定義(2011.12.13)
- [コラム] TDD は止めて、 DbE (例示による設計) と呼ぼう!(2011.11.03)

コメント