组件化设计思路

  |  
 阅读次数

组件化的设计思路

组件封装有一定的不确定性,更多时候在几方面做个权衡,在最开始并不可能做到完美,在业务的不断变化中,可能还会面临一些调整和重构

组件化的意义
1 组件化是实现分层。更有效的代码组合方式
2 组件化是对资源的重组和优化,从而是项目管理更加合理
3 有利于单元测试
4 对重构友好

组件的定义
1 可复用的模块,完成既定的功能
2 有明确的接口规定
3 有上下文依赖 外部依赖资源定义
4 可以独立发布

组件设计的原则 主要的是复用性
1 使用单一职责原则
2 适用开放封闭原则
3 追求短小精悍
4 避免太多参数
5 缩小信赖范围和想稳定方向的信赖
6 追求无副作用
7 追求透明化
8 入口处检查参数的有效性,出口处检查返回的正确性
9 充分隔离变化的部分

自省的几个问题
组件是否有必要再分
组件划分的依据通常是业务逻辑、功能、要考虑组件之间的关系是否明确
划分粒度的大小需要根据实际情况权衡,大小会提升维护成本,太大又不够灵活和高复用性
每一个组件都应该有起独特的划分目的,有的是为了复用实现,有的是为了封装的复杂度清晰业务实现

2 组件的依赖是否可以再缩减
3 组件的可复用于其他类似场景中
在考虑需要适用的不同场景,在组件接口设计时需要兼容
4 组件当别人使用时,会怎么想
5 假如业务需要不需要这个功能,是否清楚方便

敲代码的李二狗:

为什么说 Java 程序员必须掌握 Spring Boot ?