项目中代码复用的一些理解

今天逛博客看到一个博主对好系统设计的描述,有感而发

https://www.cnblogs.com/rainbow-1/p/15626886.html


概括:

刚好工作中接触的是比较大型的项目,一个项目好几个公司在做,代码量很大,但是代码的复用性几乎为零。特别是我们后期加入的,根本不敢乱动前面的代码。所以会出现一种情况,明明他这个功能和我差不多,我也不敢用他的方法。


描述:

我们系统有很多个端口,给A客户用是一个系统,给B客户用是一个系统,给C客户用。。。。功能基本上是一样的,但是在不同端口会有一些不同的业务处理。我们公司根据负责的端口不同分了不同的开发小组,这样就会存在A组开发了功能A1,B组也需要使用到A1,这个时候会有两种处理办法,一种是直接把A组写好的代码cv一份,还有一种就是通过调用A组写好的接口实现功能。最好的办法当然是直接调用A组写好的接口,但是问题来了,我们后入职的同事对哪个组有哪些功能根本不熟悉,所以很大可能会直接自己动手写一套A1的实现,导致同一个功能有多个实现,不方便后期维护,也对程序的一致性有影响。


解决思路:

我目前想到的就是需要有一个地方维护一份功能手册,就类似jdkapi这种的,专门一个小组维护上面的代码,我称之为核心。如果其他组有什么新需求直接提给核心,核心负责实现,不过核心实现的功能都是弱业务的,只提供基础的服务。如果我需要实现什么功能可以直接查手册,如果发现手册已经实现了就直接调用手册上的接口。不同的业务场景可能会有定制化需求,但是由于最终调用的核心代码都是一样的,这样可以对业务逻辑或者说功能实现上能有统一的控制能力。

posted @ 2021-12-12 17:57  闻窗壹如初见  阅读(248)  评论(0)    收藏  举报