谈谈项目代码的应用分层

北京皮肤科医院电话 http://m.39.net/baidianfeng/a_8622627.html
架构师(JiaGouX)我们都是架构师!架构未来,你来不来?

1、背景

说起应用分层,大部分人都会认为这个不是很简单嘛就controller,service,mapper三层。看起来简单,很多人其实并没有把他们职责划分开,在很多代码中,controller做的逻辑比service还多,service往往当成透传了,这其实是很多人开发代码都没有注意到的地方,反正功能也能用,至于放哪无所谓呗。这样往往造成后面代码无法复用,层级关系混乱,对后续代码的维护非常麻烦。

的确在这些人眼中分层只是一个形式,前辈们的代码这么写的,其他项目代码这么写的,那么我也这么跟着写。但是在真正的团队开发中每个人的习惯都不同,写出来的代码必然带着自己的标签,有的人习惯controller写大量的业务逻辑,有的人习惯在service中之间调用远程服务,这样就导致了每个人的开发代码风格完全不同,后续其他人修改的时候,一看,我靠这个人写的代码和我平常的习惯完全不同,修改的时候到底是按着自己以前的习惯改,还是跟着前辈们走,这又是个艰难的选择,选择一旦有偏差,你的后辈又维护你的代码的时候,恐怕就要骂人了。

所以一个好的应用分层需要具备以下几点:

方便后续代码进行维护扩展;

分层的效果需要让整个团队都接受;

各个层职责边界清晰。

2、如何进行分层2.1、阿里规范

在阿里的编码规范中约束的分层如下:

开放接口层:可直接封装Service方法暴露成RPC接口;通过Web封装成


转载请注明:http://www.jiaju1314.com/zyyd/zyyd/15983.html