bin^2

bin^2

discord server
twitter

架构方法论——三层分形架构演示

架构方法论 —— 三层分形架构演示#

#article/done/published
#架构
#三层分形架构

实践是检验真理的唯一标准

我们有了一个分层的方法,这个方法是否有效呢?
我们虚拟一些场景来模拟下,看看该方法能否解决我们的问题。

以 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]]

从演进的角度,可以很清晰的看到最终的分层是如何形成,但是只看最终的分层,却很难明白为什么这样。

当然分层分解的过程仍然可以继续下去,这并不是终点。
但是三层分形的方式描述出架构的演进,可以更加清晰易懂的理解架构的演进。

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。