[書評ブログ] 「良いコード/悪いコードで学ぶ設計入門 保守しやすい成長し続けるコードの書き方」

2022.07.07

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

CX事業本部の仲安です。まいどです。

本日はクラスメソッドの創立記念ブログ祭ということで、少し久しぶりにブログを書きたいと思います。

今記事では2022年5月に刊行された書籍「良いコード/悪いコードで学ぶ設計入門 保守しやすい成長し続けるコードの書き方」についての書籍を読んだ感想などを書き連ねさせていただきたいと思います。

ざっくり内容

著者は「ミノ駆動 @MinoDriven」というお名前で Twitterなどで活躍されている仙塲大也さんです。 普段よりソースコードの改善についてのアウトプットをされている方です。

この書籍では、ソースコードの設計、書き方、構成にのさばるバグや可読性の悪さ、改修のしづらさのパターンを「悪魔」と位置づけ、 それを駆逐するための様々な方法が記されています。

「悪魔を倒すため」を意識されているのか、 基本的にサンプルのソースコードはRPGゲームのノリで書かれています。(その手の書籍は多いですが)

サンプルソースコードはJavaですべて書かれていますが、 オブジェクト指向プログラミングである言語であれば、どの言語であっても読み替えて読みすすめると思います。

モダンな言語であれば書き方によってはもっとシンプルに実装する方法も見つかると思います。 ここで大事なのは書籍の伝えたいことを守りつつ、よりベターなプログラミングの方法を実践の中で考え続けることかと思います。

読み進め方

この書籍は、400ページ弱で17章に分かれています。 もちろん1ページ目から最後まで順番に読むのもいいと思います。

ただ、2章までは書籍が目指したい方向性が書かれていますが、それ以降は具体的なアンチパターンの提示と、その解決方法がかなりの量で書かれています。 多くのパターンにもしかすると脳が疲れてくるかもしれません。

ですので、2章まで読み進めたのちに、15章から最後までを読んでみてはいかがでしょうか。

それまでに書かれていた設計についてのハイライト的な内容が続いてるので、 まずはそれを読んでから実例に入ってみてもいいかもしれません。

もちろん、あくまで一例なのでご参考までに。

こう思った

経験上、悪しきソースコードは何度もお目にかかったことがあります。 かくいう自分も過去には(いや、現在も)そういった設計やソースコードを生み出したことはあると自負しています。

そのたびに経験則が増え、「こういうアンチパターンは避けよう」という意識が芽生えます。 それらは、あくまで自分の頭の中でなんとなく意識しているものだと思います。

この書籍に書いてあることは「あまりに新鮮なこと」は書いてはいません。 書いてあることの感想としては、今まで色々な設計をし、ソースコードを書いてきた経験の中で、知ってきたことも多く書かれているとは感じました。

ただ、それが体系的に纏まっていることは非常に良いなと思いました。 過去にも似たような書籍はあったかもしれませんが、これほど多岐にわたるパターンと考え方を纏めている書籍は珍しいかもしれません。

ゆえに、新米エンジニアの方にも読者として適合すると思いますが、 あらためて頭の整理のためにベテランエンジニアが手にとってもいいかもしれないと思いました。

最後に

ということで、今回は「良いコード/悪いコードで学ぶ設計入門 保守しやすい成長し続けるコードの書き方」についての書籍レビューを書かせていただきました。 iOSアプリエンジニアの自分にとってもSwiftの書き方に参考になりました。

最後にAmazonのリンクを貼っておきます。

では、またー