アーキテクチャ方法論 - 三層フラクタルアーキテクチャデモ#
#記事 / 完了 / 公開
#アーキテクチャ
#三層フラクタルアーキテクチャ
実践は真理を検証する唯一の基準です
階層化された方法がある場合、その方法は有効ですか?
いくつかのシナリオを仮想化して、この方法が問題を解決できるかどうかを確認してみましょう。
例として、App 開発を取り上げます。
通常、初期段階では単純なビジネス要件しかなく、この時はビジネスに焦点を当てます。
核心層、ビジネス層、サポート層、アプリケーション層があります。
サポート層には共通のクラスライブラリや共通のコンポーネント、ビジネスに関係のない技術、フレームワーク、ツールなどが含まれます。
アプリケーション層は、ビジネス層で定義されたコンポーネントを統合します。
ビジネス層は、核心のビジネスロジックを担当します。
![[Screen Shot 2020-12-21 at 09.02.27.png]]
ビジネスの発展に伴い、プロジェクトに H5 開発ページの機能を導入したいと考えています。この機能はネイティブのページ機能と異なり、基盤として WebView のコンテナが必要です。
H5 の開発に焦点を当てる場合、WebView のサポートが必要です。
したがって、ビジネス層ではコンテナに焦点を当てます。
核心層はコンテナ層であり、ネイティブビジネスコンテナと H5 ビジネスコンテナを提供します。
アプリケーション層は元のビジネス層ですが、コンテナはビジネスのサポートであり、ビジネスはコンテナに依存しています。
サポート層はコンテナの基本層です。
![[Screen Shot 2020-12-21 at 09.02.38.png]]
さまざまな顧客がいて、異なるインターフェースと機能をカスタマイズしたいという要望があります。
機能のカスタマイズに焦点を当てます。
核心層はカスタマイズ層です。
サポート層は元のビジネス層ですが、カスタマイズは元のビジネスに基づいています。
アプリケーション層はカスタマイズアプリケーション層です。
![[Screen Shot 2020-12-21 at 09.08.41.png]]
今、全体の階層を見てみましょう
![[Screen Shot 2020-12-21 at 09.19.57.png]]
進化の観点から、最終的な階層がどのように形成されるかが非常に明確にわかりますが、最終的な階層だけを見ても、なぜそうなるのかは理解しにくいです。
もちろん、階層分解のプロセスは続けることができますが、これは終着点ではありません。
しかし、三層フラクタルの方法はアーキテクチャの進化をより明確かつ理解しやすく表現するため、アーキテクチャの進化を理解するのに役立ちます。