在正文之前,我们先来看一张电商项目的真实结构图。
从上图中,大家能找到什么问题吗?
接下来给大家好好分析分析
从这个项目结构来看,典型的单一模块、MVC混搭,其实很多架构师都知道,这样的项目随着到了开发后期,会面临着以下几个问题:
-
项目耦合非常严重,类与类之间的关系太杂乱
-
每次修改代码重新编译等待时间过长
-
项目太过于臃肿
-
功能重用异常麻烦
-
不适合多人开发
正是因为这些问题的存在,才会让人开发起来越来越累。
问题来了,项目已经这样了,怎么才能扭转乾坤呢,其实很简单
没错,就是减肥,问题是功能不能砍,代码不能少,怎么减呢?
答案是:从项目架构的角度出发
其实之所以项目会变成这样,基本问题在于项目结构,单一模块的项目必然会有这样的一天,所以我推荐组件化开发,接下来,给大家贴一下项目脱胎换骨之后的图片:
看起来,是不是舒服多了?
当然光看起来舒服是没有用的,真正的意义在于能否给项目开发带来便利。
可能有人要问了:组件化开发真的这么牛吗? 当然,用过的人都说好。
接下来,给大家好好分析下组件化开发对于我们项目的意义。
首先大家看到之前的图片应该也发现了,
-
低耦合,我们把所有的业务逻辑都拆分为了一个个的模块,这样就能够很好的把业务逻辑进行解耦,因为这些模块之间不会有耦合。
-
功能复用简单,只需要将某个逻辑模块COPY到新项目就行了。
-
编译速度提升,因为每次修改某一个功能只需要单独运行该模块就行了。
-
团队开发变得非常便利,能够很好的按照模块进行分工。
组件化开发基本把单一模块遗留的问题全部解决了,这就是它的魅力。
但是组件化开发也有很多细节要处理,比如:如何分模块管理,如何跨模块通信……