「Clean Architecture 達人に学ぶソフトウェアの構造と設計」を読んだ感想を書きます!
お硬いタイトルですが、簡単に言うと見やすいプログラムを書くために必要なことが書かれた本です!
こんな体験をしたことがある人に特におすすめです!(体験したことない人や体験したくない人にもおすすめ!!
- コードがぐちゃぐちゃで見にくい... コードをあまり見たくない...
- ViewController, Controller, Activity のコード行数が数百行以上...
- より綺麗な設計のコードを書きたい!
※過去の私であることは秘密です...
読んだ感想を一言で!
プログラムを綺麗に書くにはどうすればいいのかについて書いてある!!
実は、最初 Clean Architecture について延々と書いてあるのかなーと思ってました。
ところが読み進めていくとその認識が間違っていると気づきました。
具体的な実装についてはほとんど書いてなく、概念と気をつけるべきポイントを中心に描かれてました!
本にも書いてあるように「遅くとも着実であれば競争に勝つ」なので、アーキテクチャ等を着実に自分のものにしてプログラムを書いていければ良さげかなと!!
どんなことが書いてあるの?
例えば
- 設計の目的
- 設計の原則
- コンポーネントの原則
特に気に入ってる部分
個人的には設計の原則のところが良きでした。
今まで自分がプログラムを書くうえでなんとなくこうするといいよね?ってやってきたことが言語化されてました!
「こう書くのはこんな名前がついてるのか!」 みたいな
単一責任の原則 とか オープンクローズドの原則 とかは聞いたことあるんじゃないかなと!
※単一責任の原則とは一つのモジュール(クラス)は一つの責務(機能)しか持たないって意味
※オープンクローズドの原則とは拡張しやすいけど、修正しても影響範囲は狭いって意味
「こんな感じでこう言う原則があるよ〜」って話やこんな感じで作ると良きよ〜!って話があったり!
変に略してないのでわかりやすい
ネットでここら調べててよくあるのが「動物クラスを継承して犬クラスを実装したらオブジェクト指向を理解できる」とか「Todoアプリのサンプルを見せただけでアーキテクチャについて説明した気になっている」とかの結局よくわからない怪文で説明されること。
この本は内容はがっつり!(けど個人的に変に略してないのでわかりやすかった!
上述しましたが、具体的な実装についてはあまり触れてないので今後も役立つ知識を付けれるかと!!!!(こう言う本は少ない....
ちょっと面白かった部分
「アーキテクチャ考古学」と言う部分が面白かったです!
昔のIT業界のアーキテクチャについてとか書いてある!!!
私はWindows 98 と同い年な98年生まれなので昔の人がどんな感じでプログラムを書いてるか!とかについてはほとんど知りません!(ベテランエンジニアの人との飲み会では軽く聞いたりはしてますが...)
まとめ
もっと早くに買うべきでした...!
リーダブルコード(ITエンジニアの中で聖書と言われてる本)並みにみんな買うべき本!!!!
Kindle版が存在するのでKindle版を買うと荷物が増えなくて良いかも!!
開発の途中にチラ見しながらコード書くと綺麗な設計なコードが書けるようになる!(気がするw
筆者に感謝です!!