组件化开发

2016.10.25

组件化架构的由来

随着互联网的不断发展,很多程序代码量和业务越来越多,现有架构已经不适合公司业务的发展速度了,很多都面临着重构的问题。

在公司项目开发中,如果项目比较小,普通的单工程用MVC架构就可以满足大多数需求。但像淘宝、蘑菇街、微信这样的大项目,原有的单工程架构就不足以满足架构需求。

在一个项目越来越大,开发人员越来越多的情况下,项目会遇到很多问题

1.业务模块间划分不清晰,模块之间耦合度很大,非常难维护

2.所有模块代码都编写在一个项目中,测试某个模块或功能,需要编译运行整个项目。

为了解决上面的问题,可以考虑加一个中间层来协调模块间的调用,所偶有的模块间的调用都会经过中间层中转。

添加中间层后,耦合还是存在的。中间层对被调用模块存在耦合,其他模块也需要耦合中间层才能发起调用。这样还是存在之前的相互耦合的问题,而且本质上比之前更麻烦了。

所以应该做的是,只让其他模块对中间层产生耦合关系,中间层不对其他模块发生耦合。

对于这个问题可以采用组件化的架构,将每个模块作为一个组件,并且建立一个主项目,这个主项目负责集成所有组件,这样带来的好处是很多的:

业务划分更清晰,新人接手更容易,可以按组件分配开发任务。

项目可维护性更强,提高开发效率。

更好排查问题,某个组件出现问题,直接对组件进行处理。

开发测试过程中,可以只编译自己那部分代码,不需要编译整个项目代码。

进行组件化开发后,可以把每个组件当做一个独立的app,每个组件甚至可以采用不同的架构,例如分别使用mvvm、mvc、mvcs等架构。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容