| |||
リファクタリングとパフォーマンス | |||
私の体験談なのですが、リファクタリングをするようになって最初に気になったことは、 「問い合わせによる一時変数の置き換え(120)」にかかわることでした。 取得できる値は同じなのに、何度も問い合わせるように修正することは、 わざわざパフォーマンスを劣化させる行為と感じて気が進みませんでした。 しかも、この劣化が体感できるはずがないと気付いていたにも関わらずです。 リファクタリングは人に理解しやすいコードへと変更を行います。 これはしばしばプログラム の実行速度を落とすことにつながるでしょう。 しかし、今あなたが気にしている部分に生じるオーバーヘッドは、 システムのパフォーマンスに多大な悪影響を与えているのでしょうか? そうではないことが多いように感じます。 現実問題として、パフォーマンスに多大な悪影響を与えている箇所を特定するのは、 測定ツールの利用なしには難しいでしょう。 人に理解しやすいコードを優先することで、実際に測定を行ってパフォーマンス改善を考えるときに、 効率良く改善作業を行なうことができます。 そのため、パフォーマンスについて考えたときにも、リファクタリングは有効です。 |
最後に |
リファクタリング体験では、コードのわかりやすさを重視したため、 題材としては小さく、リファクタリングの効果を感じにくかったかもしれません。 しかし、本記事でとり上げたリファクタリングをあなたのコードに行なってみると、 リファクタリングの効果の大きさを実感することができるでしょう。 紙面の都合もあり、たくさんのカタログをとり上げることはできませんでしたが、 カタログ名から想像できるリファクタリングを実行するだけでもすばらしい効果があらわれると思います。 また、カタログについての詳細を知りたい場合には、参考書籍「リファクタリング」を参照してください。 とてもわかりやすい良書ですのでお勧めです。 この記事が、みなさんの快適なプログラミングライフに役立ちますように! |
参考書籍 |
『リファクタリング プログラミングの体質改善テクニック』 |