1.概念
组件化是把重复代码进行封装,例如util
类的封装。
模块化是指把一组功能进行隔离,可以独立运行,独立管理,例如login
(登录)和home
(首页)。
组件化开发的原则
- 专一
- 可配置性
- 标准性
- 复用性
- 可维护性
2.区别
组件:重用、解耦;高重用、松耦合;无统一接口;基础库、基础组件;纵向分层
模块:隔离、封装;高内聚、松耦合;统一接口;业务框架、业务模块;横向分块
3.为什么要使用组件化和模块化?(优势)
1.开发和调试效率高:随着功能越来越多,代码结构会越发复杂,要修改某一个小功能,可能要重新翻阅整个项目的代码,把所有相同的地方都修改一遍,重复劳动浪费时间和人力,效率低;使用组件化,每个相同的功能结构都调用同一个组件,只需要修改这个组件,即可全局修改。
2.可维护性强:便于后期代码查找和维护。
3.避免阻断:模块化是可以独立运行的,如果一个模块产生了bug,不会影响其他模块的调用。
4.版本管理更容易:如果由多人协作开发,可以避免代码覆盖和冲突。
3.1模块化的优点(好处)
- 每个模块也可以理解为一个单独的系统,可独立工作,即便单组模块出现故障也不影响整个系统工作;
- 和组件化一样,模块也可以进行复用,提高了代码的可复用性;
- 由于每个模块可以独立运行,可以多团队并行开发和测试,提高了开发效率。
3.2组件化的优点(好处)
- 常用的功能封装起来之后,一个显而易见的优点就是提高了代码的可复用性,这个可复用性不仅仅是对于当前项目的,以后其他项目需要时也可以直接移过来;
- 当组件需要进行升级时,只要修改一次,提高了代码的可维护性和扩展性;
- 有些组件的功能是比较复杂的,维护时比较麻烦,而组件化则可以隔离复杂度,把高复杂度的代码隔离起来,易于维护和重构;
- 组件与组件之间联系很少,从而降低耦合度,当由于需求的变更替换某个组件时,可以马上替换,不用担心影响其他部分的功能。