这几年有时会听到中台二字,不知道为什么,觉得特别反感,而不像其他不了解的概念那样,只会不明觉厉。也许是认为它在创建新名词,哗众取宠?我只知道有前台(前端、客户端),后台(后端,服务器端),中台是什么鬼?
一、什么是中台
什么是中台?没有AI之前,在网上搜索得到的答案,总是堆砌一大堆概念,啰啰嗦嗦一大坨,根本看不懂。按照我的经验,如果一个概念,你扯不清楚,说明你没有真正理解;但如果大家,或者大部分人扯不清楚,那很有可能这个概念有问题。它是个伪科学。中台就是这样的。
顾名思义,从名字理解,中台应该位于前台和后台之间,起到一个承上启下的过渡作用。按照AI的回答,中台的作用,简单而言,就是支持复用,或者直接利用现成的成果。因为中台可以分为业务中台,数据中台,技术中台。业务中台,就是将一些分散的业务聚合在一起,以一个套餐的形式提供服务。今天做这个项目,我将现有的服务挑一些组合一下,就不用开发了;然后下一个项目,可以直接用这个服务,或者再组合一下,你看,不用开发了;数据中台,也好理解。比如说前台需要展示一个统计图,我从数据库找数据,吭哧吭哧计算一轮,得到一个结果,然后输出给前端,同时将这个结果保存下来,下次再有请求,直接将结果返回;技术中台,不确定是什么,感觉也跟业务中台差不多,将各种技术组合一下,对外提供服务。总之,中台的目的和特征,就是复用。
二、什么情况下用中台
必然是已经有许多现成的东西,才能考虑用所谓的中台。现在有一个项目下来了,你说我们应该先开发中台,等中台好了以后,项目再居于中台搭建。但这个中台怎么来,它是将现成的东西组合,这样快速出成品,如果原料没有的情况下,去设计什么中台,等开发出来,黄花菜都凉了。一个可以用的中台,一定是以有许多原料,和积累了许多应用经验为前提,经过许多轮迭代,不断经过实际应用的磨合才会成熟起来。
如果失去了已经有许多现成东西这个前提,从新规划,白手起家,取乱之道也。
三、我明白我为啥这么反感中台了
中台就跟开发框架差不多。
常常有一些小公司,为了提高开发效率,然后自己封装了一套开发框架,要求其他程序员居于这个开发框架进行开发。美其名曰,配置式开发,号称只需要配置几下,一个系统就出来了。
有成功的先例吗?有,Spring Boot就是。但是,Spring Boot是对J2EE的改良,而且经过多个版本的迭代,无数优秀程序员的贡献,才这么好用。我们自己的话,通常水平不够,时间不够,资源不够,搞出来的东西,是玩具级的,问题多如牛毛;而且非常不标准,为了用上你端出来的这个东西,有学习成本;有问题,也不知道去哪里获取答案;如果发现问题,或者说想改进一下,只能向搞框架的这个人提需求,看他时间,排队,他说啥就是啥,垄断了一切。而且所谓的号称配置一下,这个配置其实已经跟写代码差不多了。谁用谁知道。
中台类似,你有什么业务请求,就发给中台好了。居于中台搭建(注意号称搭建,理想的状态下,像搭积木)。如果发现中台不满足要求,怎么办?来吧,改中台,向负责中台的人提需求。
四、小结
也许理解不到位,先作为学习成果的输出,以后再改。