第6回 Software Architecture: The Hard Parts 読書会@リモート
第6回 Software Architecture: The Hard Parts 読書会 - connpass
- JavaEE勉強会の読書会
- 開催場所はDiscordのjavaee-study-jp
- Neal Ford, Mark Richards, Pramod Sadalage, Zhamak Dehghani さんの Software Architecture: The Hard Parts [Book] を読んでます
- 今回は
Chapter 8. Sysops Squad Saga: Shared Domain Functionality
まで読み進めました - 次回は
9. Data Ownership and Distributed Transactions
から読み進めます- 次回は 2022-05-21(土)です。
- 第7回 Software Architecture: The Hard Parts 読書会 - connpass
- 参加者トピック
- ディスカッション
- Part II. Putting Things Back Together
- Chapter 8. Reuse Patterns
- Chapter 8. Code Replication
- Chapter 8. Shared Library
- Chapter 8. Shared Service
- Chapter 8. Sidecars and Service Mesh
- Chapter 8. Sysops Squad Saga: Common Infrastructure Logic
- Chapter8. Code Reuse: When Does It Add Value
- Chapter 8. Sysops Squad Saga: Shared Domain Functionality
- 参考情報
参加者トピック
- ACMプロフェッショナル会員の特典だったO'Reilly Learning Pathの無料アクセスが6月に終了する
- ブラックフライデーに割引クーポンが出がちなのでそれを待とうかな
- 本はともかくAudio Bookが代替できなくて辛い
- 人間が読んでいる
- 有明テニスの森公園でテニスやってくる
- 原因不明の体調不良が続いてたので、運動不足を疑っている
- 卓球フィットネス始めた、全球スマッシュを強要するのでとても体力を使う
- Oculusで遊べるテーブルテニスVRお勧め
- BlueMix経由でO'Reilly Learning Pathを利用してる
- VPで遊んでいると筋肉が増える
ディスカッション
Part II. Putting Things Back Together
Chapter 8. Reuse Patterns
- Don't repeat yourself - Wikipedia
- WETとは?
- Write every time
- Write enything tiwce
The opposing view to DRY is called WET, a backronym commonly taken to stand for "write everything twice"
- FOAM DRY + WET - YouTube
- 必ずDRYにしないといけない、なんてことはない
Chapter 8. Code Replication
Chapter 8. Shared Library
- バージョン管理のところは、セマンティックバージョニングを前提にしているよね
Chapter 8. Shared Service
- 仮にそれぞれのサービスがマイクロサービスになっているとして、なんで
Shared Service
にアクセスしないといけないのか理解できない- どういう役割なのかわからない
- 誰がオーナーなのかわからない
- 個人的に最高のアンチパターン
- 後方互換性を保つために必要なコスト
- 古いバージョンのアプリ用のコンテナ動かし続けるの大変そう
- サービスの動作を保証し続けるのも大変そう
Chapter 8. Sidecars and Service Mesh
- 前の章とつながってない
- 値引き機能みたいな具体例がいなくなっているのはなんでだろう
- バージョン管理とか後方互換性の話がなくなっているのはなんでだろう
- ヘキサゴナル・アーキテクチャとサイドカーを結びつける論点が弱い
Chapter 8. Sysops Squad Saga: Common Infrastructure Logic
- 結局
JSONtoXML
ライブラリをサイドカーに入れたのか入れないのか- 入れてない
- サイズは重要(たいした大きさじゃないからよしとする)
- 利用したいチームが全体の半数を超えてないから入れない
- 17チームいて半数に満たないってどれだけ巨大な組織なの…
- 質問にちゃんと答えてない感じがする
- Sysops Squad Saga 全体的に納得いかないところが多い
Chapter8. Code Reuse: When Does It Add Value
- ソフトウェアアーキテクチャの基礎第16章と同じ話だった
過剰な再利用がもたらす危険性は、20世紀に流行したオーケストレーション駆動のサービス指向アーキテクチャで、多くのアーキテクトが学んできたことだ。
- 再利用が問題視されていたのは、オブジェクト指向プログラミングのほうの文脈じゃない?
- 共有にしたサービスが知らない知識を取得するため、さらに他のサービスに依存してしまう、みたいなところはたしかに問題っぽい
Chapter 8. Sysops Squad Saga: Shared Domain Functionality
- Taylenの主張が面白い
Taylen: それがどうした。どれもバックエンド機能だから気にする人なんていない。バックエンド機能が高速に応答する必要はないし、失敗したとしてもすぐに復旧するはずだ。