项目架构开发:服务层(下)
之前我们已经完成了服务层,因为当时展现层还没有出来,所以只做了简单介绍。传送门: 项目架构开发:服务层(上) 这次我们通过一个维护系统用户的场景来介绍一下服务层真正的设计用意。 1、新增用户场景 新增用户可能会有以下步骤 实现以上需求,开发人员一般情况下可能就是以上 蓝 红 黑 紫 绿 几种选择 1、有些写在Controllers、有些写在Application 2、都写在Controllers或都写在Application 3、有些写在DAL层、甚至存储过程 特别是新手以及那些拿来主义的人,他们不会花更多时间去思考。 分不清各层的职责以及界限,迷信那句: 不管黑猫白猫,抓到老鼠就是好猫 最后造成劣质的代码满天飞,到处(无论哪个公司或项目)都充斥着这种随心所欲的代码 分层已经失去意义,因为整个系统在局外人看来已经只有一层,那就是业务逻辑层,上至html、下至数据库存储过程 都充满业务逻辑。联想一下,这只是用户注册而已,还有更加复杂的业务场景还没说出来。不知道最后会怎样 这样的系统已经完完全全一团面条了,后续维护已经与个人技能无关了,就算请一线的NB程序员,想来他也只会说一句,去年买了个表 好了,吐槽了一下现状(不管你们同不同意,反正我是不会收回的,哈) 有没有方法解决上面这种窘境呢,当然是有的,比如我就觉得那种蓝色的方案勉强还可以 在UI层解决数据合法性校验,在逻辑层完成功能性问题