有一些人总在说软件要复用,开发一个项目时要想想怎么在另一个项目中能重用。你问他怎么做到复用,就会听到微服务、中台一些名词
复用的层次
说到复用,首先要想明白复用的是啥
级别越低,粒度越小,复用的范围越广,但价值体现较低;级别越高,粒度越大,复用的价值越高,但复用范围也比较局限。
所以站在业务和价值角度上,都是先从最高的层次上去复用。只有上层无法实现复用,我们才会逐步向下层去寻找。
但是有时候站在技术角度,我们习惯在低层次上去复用,因为这里最接近自己的工作,粒度越小,技术上越可控。
如果要实现LV1,开发人员早就会操心;要实现LV2,要统一技术架构;实现LV3,要统一业务架构(中台)、实现LV4,要做到业务组合,实现LV5,要做到解决方案整合。
复用的成本
抽取、学习、维护 这是基本成本
当复用模块不满足业务要求时,谁来改,怎么保证稳定和业务及时上线 这是组织成本
如何做到复用
CCB库维护
统一技术栈,统一技术底座
统一业务架构,构建中台
复用既是技术问题,更是业务问题。如果一个人既不关心业务,又没有技术手段,但整天把复用挂在嘴上,这是以其昏昏使人昭昭。
复用的达成,不是老板的念念不忘,不是技术领导人的行政要求,也不是所有技术人的满腹牢骚,它需要一个体系的设计,一个组织的支撑,一个相互信任的团队文化,一个不断完善的过程。任重而道远!