1. Changing Software - WORKING EFFECTIVELY WITH LEGACY CODE (WEwLC)

Working Effectively With Legacy Code の 1章 Changing Software。
導入部分。この次に来るものが楽しみ。

マインドマップから再構成したまとめ

ソフトウェアを変更する

  • デザインを改善するリファクタリング
    • ふるまいを変更しない
    • メンテナンス性を上げる
    • テストで支える
  • 最適化
    • ふるまいを変更しない
    • 時間・メモリ
  • ふるまい(追加する・変更する)
    • 対象のふるまいを追加・変更するコスト
    • 「元からあるふるまい、変更対象でないふるまい」のふるまいを理解・維持するためのコスト
  • 悪いこと
    • 変更・追加時にコードベースにちまちまと書き足すこと
    • 新しいクラス・手続きなどを「バグらせる恐れ」から追加しない
      • コードの巨大化・メンテナンス性の低下・将来の時間を奪う行為
    • いくつかのテクニックをマスターすれば「恐れ」を克服して改善できるかも?