SlideShare a Scribd company logo
1 of 11
Download to read offline
Clean
Architecture
第Ⅴ部
アーキテクチャ Part8
前回まとめ
- メインコンポーネント
- 全てのシステムには、外のコンポーネントを作成・調節・監督する Mainコンポーネントが最低 1つは存
在する
- Mainコンポーネントは究極的な詳細である
- Clean Architectureの円の最も外側の下位レベルのモジュールである
- サービス:あらゆる存在
第Ⅴ部:アーキテクチャ Part8
第1章:サービス:あらゆる存在
- サービス指向とマイクロサービスが人気なのは以下の理由
- サービスがお互いに分離されているように見える
- サービスが開発とデプロイを独立させているように見えるから
- しかし、いずれも部分的にか正しくない
第1章:サービスアーキテクチャ?
- アプリケーションの振る舞いを分離するだけのサービスは、単なる高価な関数呼び出しにしか
すぎない
- サービスはサービスであり、アーキテクチャを定義するものではない
- アーキテクチャにおいて重要なサービスが関心事
第1章:サービスのメリット?
- 誤った分離
- サービス同士が強く分離されるとあるが、変数レベルで分離されているだけで、プロセッサ内やネット
ワーク上にある共有ソースについては分離されておらず、共有しているデータと強く結びついてし
まっている
- 誤った開発とデプロイの独立
- 誤った分離によって、必ずしも独立した開発・デプロイ・運用ができるとは限らない
第1章:子猫の問題
第1章:救世主のオブジェクト
第1章:コンポーネントベースのサービス
第1章:横断的関心事
第Ⅴ部:Part8 まとめ
- サービス指向とマイクロサービスが人気なのは以下の理由
- サービスがお互いに分離されているように見える
- サービスが開発とデプロイを独立させているように見えるから
- しかし、いずれも部分的にか正しくない
- アプリケーションの振る舞いを分離するだけのサービスは、単なる高価な関数呼び出しにしか
すぎない
- サービスはサービスであり、アーキテクチャを定義するものではない
- アーキテクチャにおいて重要なサービスが関心事
- 誤った分離
- サービス同士が強く分離されるとあるが、変数レベルで分離されているだけで、プロセッサ内やネット
ワーク上にある共有ソースについては分離されておらず、共有しているデータと強く結びついてし
まっている
- 誤った開発とデプロイの独立
- 誤った分離によって、必ずしも独立した開発・デプロイ・運用ができるとは限らない

More Related Content

More from tak

可読性について リーダブルコード Part2(ループとロジックの単純化)
可読性について リーダブルコード Part2(ループとロジックの単純化)可読性について リーダブルコード Part2(ループとロジックの単純化)
可読性について リーダブルコード Part2(ループとロジックの単純化)tak
 
可読性について リーダブルコード part1(表面上の改善)
可読性について リーダブルコード part1(表面上の改善)可読性について リーダブルコード part1(表面上の改善)
可読性について リーダブルコード part1(表面上の改善)tak
 
DiI/DIコンテナを一から学んでみた
DiI/DIコンテナを一から学んでみたDiI/DIコンテナを一から学んでみた
DiI/DIコンテナを一から学んでみたtak
 
TypeScriptのdecoratorについて
TypeScriptのdecoratorについてTypeScriptのdecoratorについて
TypeScriptのdecoratorについてtak
 
Rust + web assemblyやってみた
Rust + web assemblyやってみたRust + web assemblyやってみた
Rust + web assemblyやってみたtak
 
第ⅴ部:clean architecture アーキテクチャ Part5
第ⅴ部:clean architecture アーキテクチャ Part5第ⅴ部:clean architecture アーキテクチャ Part5
第ⅴ部:clean architecture アーキテクチャ Part5tak
 
第ⅴ部:clean architecture アーキテクチャ Part2
第ⅴ部:clean architecture アーキテクチャ Part2第ⅴ部:clean architecture アーキテクチャ Part2
第ⅴ部:clean architecture アーキテクチャ Part2tak
 
第ⅳ部:Clean architecture コンポーネントの原則
第ⅳ部:Clean architecture コンポーネントの原則第ⅳ部:Clean architecture コンポーネントの原則
第ⅳ部:Clean architecture コンポーネントの原則tak
 
第ⅲ部:Clean architecture 設計の原則
第ⅲ部:Clean architecture 設計の原則第ⅲ部:Clean architecture 設計の原則
第ⅲ部:Clean architecture 設計の原則tak
 
第ⅱ部:Clean architecture 構成要素から始めよ
第ⅱ部:Clean architecture 構成要素から始めよ第ⅱ部:Clean architecture 構成要素から始めよ
第ⅱ部:Clean architecture 構成要素から始めよtak
 
第ⅰ部:Clean Architecture イントロダクション
第ⅰ部:Clean Architecture イントロダクション第ⅰ部:Clean Architecture イントロダクション
第ⅰ部:Clean Architecture イントロダクションtak
 

More from tak (11)

可読性について リーダブルコード Part2(ループとロジックの単純化)
可読性について リーダブルコード Part2(ループとロジックの単純化)可読性について リーダブルコード Part2(ループとロジックの単純化)
可読性について リーダブルコード Part2(ループとロジックの単純化)
 
可読性について リーダブルコード part1(表面上の改善)
可読性について リーダブルコード part1(表面上の改善)可読性について リーダブルコード part1(表面上の改善)
可読性について リーダブルコード part1(表面上の改善)
 
DiI/DIコンテナを一から学んでみた
DiI/DIコンテナを一から学んでみたDiI/DIコンテナを一から学んでみた
DiI/DIコンテナを一から学んでみた
 
TypeScriptのdecoratorについて
TypeScriptのdecoratorについてTypeScriptのdecoratorについて
TypeScriptのdecoratorについて
 
Rust + web assemblyやってみた
Rust + web assemblyやってみたRust + web assemblyやってみた
Rust + web assemblyやってみた
 
第ⅴ部:clean architecture アーキテクチャ Part5
第ⅴ部:clean architecture アーキテクチャ Part5第ⅴ部:clean architecture アーキテクチャ Part5
第ⅴ部:clean architecture アーキテクチャ Part5
 
第ⅴ部:clean architecture アーキテクチャ Part2
第ⅴ部:clean architecture アーキテクチャ Part2第ⅴ部:clean architecture アーキテクチャ Part2
第ⅴ部:clean architecture アーキテクチャ Part2
 
第ⅳ部:Clean architecture コンポーネントの原則
第ⅳ部:Clean architecture コンポーネントの原則第ⅳ部:Clean architecture コンポーネントの原則
第ⅳ部:Clean architecture コンポーネントの原則
 
第ⅲ部:Clean architecture 設計の原則
第ⅲ部:Clean architecture 設計の原則第ⅲ部:Clean architecture 設計の原則
第ⅲ部:Clean architecture 設計の原則
 
第ⅱ部:Clean architecture 構成要素から始めよ
第ⅱ部:Clean architecture 構成要素から始めよ第ⅱ部:Clean architecture 構成要素から始めよ
第ⅱ部:Clean architecture 構成要素から始めよ
 
第ⅰ部:Clean Architecture イントロダクション
第ⅰ部:Clean Architecture イントロダクション第ⅰ部:Clean Architecture イントロダクション
第ⅰ部:Clean Architecture イントロダクション
 

第ⅴ部:clean architecture アーキテクチャ Part8