Zenn
Open2

リファクタリング第2版の学び

inoway46inoway46

はじめに〜第1章 リファクタリング 最初の例

  • リファクタリングとはソフトウェアの外部の振る舞いを保ったままで、内部の構造を改善していく作業。
  • テストがある状態で、こまめにテストを実行しつつ改善する。
  • コードを読む→洞察を得る→リファクタで頭の中にある洞察をコードに表現する。
    • コードがきれいになるにつれ、より洞察が働くようになり、フィードバックループが回る。
  • 小さく、適切に名付けられた関数が望ましい。
  • 良いコードはどれだけ変更が容易なのかで決まる。
inoway46inoway46

第2章 リファクタリングを行う理由

  • リファクタリングとパフォーマンスチューニングはどちらも振る舞いを変えずにコードを変更するのは同じだが目的が異なる。
    • パフォーマンスが多少落ちたとして、たいていは無視できるレベルである。
  • 機能追加とリファクタリングの二つの帽子
    • 機能追加の時は既存のコードは変えない。
    • リファクタリングの時は機能追加は行わない。テストも追加しない。(不足している場合はOK)
    • ex. コードの構造を少し変えれば簡単に機能追加できる時は、リファクタリング→機能追加
  • 重複したコードを排除することは設計を改善するための重要事項。
    • コードのある部分を変えても、同じことをしている他の部分を直し忘れたりする。
  • リファクタリングのメリット
    • 設計を改善する
    • ソフトウェアを理解しやすくする
      • 理解しづらいコードは読むのに時間がかかり、開発スピードを遅くする。
    • バグの発見を助ける
    • プログラミングを速める
ログインするとコメントできます