FPGA開発日記

カテゴリ別記事インデックス https://msyksphinz.github.io/github_pages , English Version https://fpgadevdiary.hatenadiary.com/

「レガシーコードからの脱却」を読んだ

まず初めに一般論を言っておくと、Amazonでのこの本の評価は非常に高い。良いことが書いてあるし、ソフトウェア開発におけるプラクティスのようなものが詰め込まれている。

私の一番の感想は、「読みにくい」ということだった。 本書は14章から構成されている。ページ数はおおよそ300ページだ。14章に何が書いてあるかということが、各章のタイトルから読み取りにくい。

  • 1 章. 何かが間違っている
  • 2 章. CHAOS レポート再考
  • 3 章. 賢人による新しいアイデア
  • 4 章. 9 つのプラクティス
  • 5 章. プラクティス 1 やり方より先に目的、理由、誰のためかを伝える
  • 6 章. プラクティス 2 小さなバッチで作る
  • 7 章. プラクティス 3 継続的に統合する
  • 8 章. プラクティス 4 協力しあう
  • 9 章. プラクティス 5 「CLEAN」コードを作る
  • 10 章.プラクティス 6 まずテストを書く
  • 11 章.プラクティス 7 テストでふるまいを明示する
  • 12 章.プラクティス 8 設計は最後に行う
  • 13 章.プラクティス 9 レガシーコードをリファクタリングする
  • 14 章.レガシーコードからの学び

後ろの章になると、だんだんタイトルから何を言いたい章なのかが分かってくる。しかしそれ以外はタイトルからいったいこれは何を説明し対象なのかが分かりにくい。

私の読み方としては、まず各章の一番最後についている「まとめ」を読みことをお勧めする。「まとめ」を読めば、この章で言いたいことが分かる。 次に戻ってその章を読み始める。そうやって前提条件を持って読まないと、「何が言いたいんだ?」となってしまいそうだ。

私自身最初の章は一から順番に読んでいこうとしたが、日本語の文章ばっかりで目が滑ってしまい頭に入らなかった。 「どこに結論が来るのか」を分かっていないと、頭に入りにくい、つまり抽象的な説明が多い。

ちなみに、内容的にはとても納得できることが多い。最初にテストを書け、とかハードウェア設計でも良く反省する部分だ。CIの導入とかいろんなところで学びが多いだけに、この読みにくさは少しもったいない。

目が滑ってしまったところが多く、もう一度読み直した方が良さそう。