ソフトウェア設計に関する本を調べる
ソフトウェア設計に関する本、そこそこ多い
どこまで読むか、何から読むか問題がある
自分なりに、ソフトウェア設計とはどういうものか、というのを定めて、それに沿って読むべき
前提として、
作りたい人、作る人が一丸となる
よく考えて、言語化する、議論する
実際に作る
繰り返す
これをすればよい
そのための方法論を探せばよく、プログラミング言語は、そのための実現手段としてみる
だから学ばなくていい、ということではもちろんなく、実現手段、ツールとして特性を日毎から理解を深める
初期段階、負債返却、大規模…
開発にもいろんな属性があり、
特定のパターンにおける適切な効果的なものとか
いろんな状況で役に立つものとかを中心に考えると良さそう
なんか大雑把でも体系化ができそうだと考えているmiyamonz.icon
コードとは、
行の集合である、関数(メソッド)
メソッドを束ねるクラス、またはモジュール
モジュールを束ねる某
というふうになってるので、各々のレベルでの関係性と、良い状況、考えるべきことがある
凝集と結合
モジュールの分け方
レイヤー、アーキテクチャ
本がたくさんあるので、先に自分で体型を作っておきたい
先に構造があると、既存の本がどこの部分を解説してるのか、という目で見て、選別がしやすい
最初に、愚直に読むんじゃなくて、「なにについて書いてるか」だけを舐め回すように読みまくるのは良いかも
ばかすか本を買え
あとオライリーのサブスク使ったほうが良いかも
コードの手法
テスト
関数型、状態や副作用の分離
モジュール、パッケージの分け方
バックエンドの設計論
UIの設計論
DB
書き方
リーダブルコード
リファクタリング
CODE COMPLETE
達人プログラマ
DDD
評判がいい
DDDとかこんな感じの本を読んでると、直接的なソフトウェアのコードばかり意識が回ってしまうが
テストとかデプロイツールとかVSCodeかなんかとか
現代は色々、議論すべき領域が広がってきてる
DDDの時代でも、テストは良いとされてたかな?
OSSは広がり、ライブラリを使うのは前提になった
ライブラリ選定のセンスとか
関数を使うのが当たり前になったとか
既に読んだ本もまとめたいな
リーダブルコード
リファクタリング
あれ、よく考えると対していままで読んでこなかった?
なんかオブジェクト指向に関する本は学生時代に読んだ気がする
言語自体とかgitの仕組みとかは読んだが、ソフトウェア設計に関しては読んでなかったかもな