大遅刻。

前回マンキュー入門経済学とかHARD THINGSを読もうかなとか言ったけど、結局読んでない。 一応弁明をすると、勉強の優先度が自分の中で少し変わったので、新しく本を買ったりしつつそっちを先に読んでた。 なので、今週はその買った4冊のうち読んだ3冊と、あとは併せて1冊消化した積読を紹介してお茶を濁そうと思う。

現場で役立つシステム設計の原則

  • オブジェクト指向が実際の開発にどう役立つのか、ということを最初に学ぶ指針としてとても優れている
    • DDDの考え方を踏襲しているのもあって個人的には馴染みが深く、尚更受け入れやすく感じた
    • 今からOOP・DDDを学びたい人には相当おすすめできる
    • Repositoryの考え方だけは違う気がしたけど、言語化が自分の中で出来てないのでまた考える
  • 一方で、具体的な技術要件が絡んだ話をいろいろと取り上げる部分は聞き流すくらいがいいかとも思った
    • DBとかUIのパート
      • 自分もイベントソーシングとか好きだけど、これは自分が考える「システム設計」のスコープ外
      • まあ「実装例」という意味ではいいのかもしれない
    • こういう技術要件を抽象化して必要になってから考えられるのが一番じゃないのかなと思った
      • Clean Architectureと並行で読んで、自分はClean Architectureの考え方に賛同した

Clean Architecture

  • 間違いなく名著
    • 早く読んでなかったことをかなり後悔した
    • とはいえ、早く読んでたとしてもその時に感銘を受けられたかは不明
  • 抽象的な話しかしないので、つまりどうしろと?みたいな話になりがちなのはわかる
    • 一方で、実践的な手法を知ってから読むと全てが繋がったような気分になる
  • 今後Clean Architectureの話するときに例の同心円出してきたら何も信用しないことにした
    • マジで一瞬だけだし、しかも文脈がただのクリーンアーキテクチャの一例としてだった
    • 「ソースコードの依存性は、内側(上位レベルの方針)だけに向かっていなければいけない。」の重み
      • でもたしかにこの一文だけ見てクリーンアーキテクチャとは何かは分からんわなともなった
  • 訳者あとがきで、「大昔の話を何度もされても困る」とか、ドメイン以外全てを後回しにすることなんかに「私もすっきりしていない」とか書いてあるのは笑った
    • 翻訳はそういうものだとはわかるけど、すっきりしてない内容をありのまま世に出して頂いたことに感謝しか無い
  • 設計原則系を参照するときのバイブルになりそう
  • DAGを維持しつつもレイヤーを飛び越えた依存がある状態を「緩いレイヤードアーキテクチャ」と呼んで、あまり良くないとしてるのはへぇと思った

UNIXという考え方

  • これもまたいい本だった
  • UNIX哲学とソフトウェア工学に相当通じるものがあるので、原著が1995年とかなの結構信じられない
  • SimpleとEasyは違う」にビビッとくる人にはオススメできる
  • UNIXに慣れてない人が入門とかで買う本ではない
    • 最低限でもシェル操作ができるのであれば読む価値あり

テスト駆動開発

  • Clean Architectureの横に置いてあったから買っちゃった(照)
    • TDDBCの基調講演で感銘を受けていたので、そのうち買おうとは思ってたからセーフ
  • ネットで表層をなぞって鵜呑みにするんじゃなくて、原典に当たることは大切だなと思った
    • とはいえ、原典に近いTDDの考え方は基調講演で一通り学んでしまったので、本読んで衝撃!みたいにはならなかったけど
  • 基調講演の「テストの構造化」という部分を結構期待してたんだけど、あのあたりの情報は原典にはなさそうだった
    • 原著が少し古い(JUnit3を聞いたことがなくてすいません)し、そこまで手が回るような時代じゃなかったのかもしれないとは思ったけど
    • ここの詳しい情報があれば掘り下げたい
  • とりあえず基調講演を見て、興味が湧いたらリファレンス的に持ってていいと思いました

4冊買って4冊読んでるので積読は増やしてないからセーフ。 ちなみに買った残りの一冊がみずほ銀行システム統合、苦闘の19年史なんだけど、期待にくらべてしょぼすぎるのであんまり読み進める気になってない。 まあ途中から面白くなるかもしれないし、読み切ろうとは思う。 あとは先週の続きかなぁ、という感じで。