一个人写代码不需要担心会和别人的代码冲突, 不需要做代码合并, 不需要担心自己的代码被覆盖.
但是多个人一起写代码就需要担心这些问题.
解决这些问题的方法很多, 比如用AzureDevOps(TFS)来进行代码管理和版本控制等等. 其中有两个办法就是, 业务模块组件化和微服务.
首先ABP是支持业务模块组件化的, 然而我并不推荐在ABP使用业务模块组件化, 因为:
- ABP更新太快了, 每2周更新一个版本.
- 除了ABP更新快, 其他技术框架工具也更新很快.
正如我在<如何用ABP框架快速完成项目(4) - 如何正确使用ABP?>提到, 我们不能像1998年那样继续使用dll来组件软件系统, 2018年的我们应该要使用微服务来构建系统.
2018年代还有一个趋势, 就是每个开发团队越来越小. 每个团队除了产品经理/项目经理外, 只有两到四个程序员.
这意味着稍微大点的软件系统都不可避免的需要两个或多个团队协作.
而不同团队之间使用的开发语言和平台可能不一样, 比如我现在就经常需要用C#去调用JAVA写的系统.
这种情况dll就无能为力了. 还是要靠微服务.
所以说, 微服务大势所趋啊.