クリーンアーキテクチャのDB非依存みたいなのは本当に意味がわからない
トランザクションの保証レベルが違ってるDBに取り替えても全く同じように動作するの?
@izumism3
「インクリメンタリズムの幻想」みたいなのがそこには存在している
永続データの並行性制御とかセキュリティみたいなアーキテクチャ特性は透過的に後付け出来ないよ
@izumism3
MEMO:
- これはその通り
- 「DBからの依存を無くす!!」みたいなのはロバート・C. マーチンのイキリというかリップサービスみたいなもので、真に受けるべきものではない
- 精々、基本的にはMySQLを使うけど、顧客によってはOracleやSQL Serverなど他のDBを使いたがるので設定ファイルで切り替え可能にしておこうぐらいのテンションの話だと思う
- SaaSが一般化する以前は顧客のオンプレ環境にアプリをインストールするのが当たり前のことで、そこで使っているDBに対応できることがビジネス要件として求められることもまた当たり前のことだった
- SaaSとして提供するサービスならDBのプロダクトを別のものに変えるなどという事態はほぼ考慮する必要がない(あるとしても検証コスト含め、かなり大掛かりなプロジェクトになるのでコードレベルの話では済まない)
- クリーンアーキテクチャはロバート・C. マーチンのキャリアの集大成みたいなところがあり、オンプレ時代の価値観も多く含まれているように思う
- なので、クリーンアーキテクチャを律儀に全部やろうとすると現代においては無用な複雑性を抱えるだけということもある
(2023/11/21)