kali foremost 分离文件_软件架构之分离关注点

本文探讨了软件设计中的分离关注点原则,包括关注点的定义、如何分离以及实现方式。通过分层、面向接口编程、配置文件、工厂模式等方法实现关注点分离,并提出了关注点开放的概念,以应对不断变化的业务需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、引言

分离关注点是我们经常听到的一个词汇,一说到分离关注点一般情况下有两种场景立即浮现在我们的眼前:一是分层二是面向接口编程。这两个都只是分离关注点的具体实现,但并不是分离关注点的本质思想。分离关注点本身包含三层含义:一是如何分离二是关注点是什么三是关注点如何实现的。本文就是围绕这三点进行阐述,结合自己的想法探讨一下分离关注点的实践。

二、关注点是什么

之前听到一句话不变的是流程,变的是实现细节,当时好像懂了这句话,其实字面意思相信大家都懂,但少深入了一步。大部分业务需求,都是在做变的部分,如果不变也就没有业务需求了,变化的东西是什么?找到这个就是我们的关注点

从软件设计上看,我们都是在实践找关注点是什么,分层只是实践关注点的一种。常见的有应用层、业务层、领域层、资源层等,每一层关注的东西是不一样的:应用层关注的是展示的多样性、交互的体验性;业务层关注的是业务流程的编排;领域层关注的是核心业务模型,更好的支撑业务;资源层关注的是数据存取。

从分层出发,往上抽象,就是4个字:单一职责。很久之前的软件设计原则只有两条:单一职责和开闭原则,它们影响了15年之久后陆续有其它的一些设计原则提出,后续的设计原则是上面两条原则进一步的补充和阐释。

从单一职责的角度,我们可以产出具体的方法实践出来。大概可以纵向和横向两个角度出发:纵向是具有依赖的;横向是水平可替换的。如何讲,分层就是纵向考虑的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值