阿里代码规范 阿里终面:优秀的代码都是如何分层的
原标题:阿里最终脸:优秀代码是如何分层的?
每一层基本上都有自己的领域模型,这就导致有些人追求每一层都有自己的领域模型。
这导致一个对象的三次甚至四次变换。在一个请求中,返回时还会有三到四个转换,因此在一个完整的请求-返回中可能会有许多对象转换。
如果我们真的按照这种方式发展,恐怕就不应该再写别的了,只需要在一天之内写出这种重复的、无用的逻辑。
所以我们必须做出妥协:
允许服务/管理器操作数据域模型。对于这个层次,最初的工作是业务逻辑处理和数据组装。
Controller/TService层的域模型不允许传入DAO层,与职责划分不一致。
同样,DAO层的数据也不允许传输到Controller/TService。
摘要
一般来说,业务分层对于代码规范很重要,它决定了未来的代码是否可重用、职责是否明确、边界是否清晰。
当然,这种分层是见仁见智的,团队中每个人的分层习惯不同,很难权衡出一个标准的准则。一般来说,只要职责明确,后续维护容易,就是很好的分层。
最后,如果你的团队有更好的层级,或者上面的描述有问题,请留言纠正。
编辑:陶家龙