本書(の特に17章)を読んでもっと勉強せねば!積読解消せねば!とやる気をもらうことができました。この気持ちを忘れないために書評を書きます。
読んだきっかけ
Amazonでよく新刊チェックをするのですが、本書はタイトルを見た瞬間からとても学びになりそうと思い、発売前の書影が出た頃から気になっていました。
発売後だんだんと話題にもなっていき、あぁ〜やっぱいい本なんや〜読まなければ〜と、とりあえずポチったのですが、勉強自体にやる気が出ずしばらく積読化しておりました…。
そんな体たらくな自分に社の後輩くんが一緒に読もうと誘ってくれたのがきっかけで読みはじめました。
弊社にはお昼休みに勉強するとご飯代を補助してくれる素敵な福利厚生があるので、これを利用しました。
お昼休み中、食事後の数十分でとコツコツ読んでいきました。
一回一回は大した量を読めなくて亀の歩み感が凄いのですが、ほぼ毎日やってちゃんと読み切ることができました。継続は力なり…!一緒に読んでくれた後輩くんに感謝。
個人的な話
著者のミノ駆動さんはクソコード動画で随分前から存じておりました。
Kaigi on Railsのオンラインブースでちらっとお見かけし、お〜本物だ〜と遠くから見ていました。
お忙しそうだった(というか自分も運営で忙しかった)のでお話はできなかったのですがtwitterを見て密かに応援してる方でした。
そんな方が本を出すということで楽しみにしていました(積読してたけど…)。
感想
前置きが長くなりましたが(あと飯テロもすみません)ここから感想です。
設計に関する本はちょいちょい手を出したことありますが、難しかったりピンとこなかったりで買っては積読を何度も経験してきました。。。
本社は類書と比べて初心者向けで終始わかりやすい丁寧な解説で、スラスラ読むことができました。特に沢山のサンプルコードが理解の助けになりました。
サンプルコードはJava書かれています。私はずっとRubyしかやっておらずJavaには全く親しんでいないので多少じっくり眺める必要がありました。
Javaならではのお話もありましたが、何か他のオブジェクト指向言語をやってる方であれば問題なく読めるし役立つでしょう。
基礎的な話から解説されているので、なんとなく知ってたことも多かったですが、丁寧な解説によって体系的に学び直すことができました。
概念は知ってたけどそういう名前が付いてたんだ、といった学びもあり知識が整理されました。
私は特に16章、17章が好きでした。
16章は、コードを良くする技術というよりは良くするための働き方、同僚との接し方、環境に対する考え方などのプロセス面を解説しています。 うんうん、そうだよねぇとうなずく箇所が沢山ありました。エモめで大変よかったです。
17章は、本書を読んだ後はどのようにレベルアップしていけばよいかのアドバイスが書かれています。
沢山の本を紹介してくれてるのですが、この本持ってる!!けど積読!!!ってのが多々ありました…。
著者からのアドバイスやレコメンドを読んで、勉強せねば、積読解消せねば…!と読む気になれました。
そういう気持ちになれただけでも、本書を読んでよかったなと思いました。
というかミノ駆動さんに限らずですが著名なエンジニアさん方、これらの厚い本をこんなに多く読んでめっちゃ勉強しててほんとすごい…(小並感)
また、本書の読了後に他の多くの批評も読みました。
文章が冗長というフィードバックをどこかで目にしました。
確かにちょっとくど目と思う文章もありましたが(笑)、著者の味と思って私はそこまで気になりませんでした。内容じゃなくそこを批判するのはナンセンスだなと感じてます。
他には著者は間違ってる、概念を誤解しているといったものもあって読む前に読むモチベーション削ってくるのですが、そういった意見があるから読まないほうがいいと思うのは早計で、本書を読んだからこそその意見がどういった理由による主張なのかが理解できます(理解できないのもありますが…)。
それはそれで学びだなぁと感じることができたので批判に惑わされず安心して読んでいい本だと思います。
むしろこれからソフトウェア開発に携わっていく方々は本書の内容をなんとなくでも把握してる前提で仕事が進むことになると思うので必読本かと思います。
課題図書といったら重い響きがありますが、知の高速道路と思えばむしろ著者に感謝したいですよね。
私も5年前に読みたいと思った本でした。
まとめ
本書を読めば名著と誉れ高いその他の設計本への足掛かりとなるでしょう。
躓いてもここに戻れば大丈夫だ、と安心できる場所ができることも本書を読む価値だと思います。これからソフトウェアエンジニアを目指す方が羨ましい。
さらにレベルアップするためのおすすめの書籍や、取り組み方が具体的に書かれていてとても刺激になりました。
望むべくはRailsエンジニア向けの設計本、書いてくださらないですかね〜。お金にならないかな〜。それなりに売れると思うんですけどね…w
とにもかくにもせっかく勉強のやる気になれたので、また「設計」という大海原に漕ぎ出そうと思います。