单一职责原则

定义:单一 Single职责原则简单点做就是为了解耦,一个类或者接口只负责一个功能或一类功能

我们再来仔细分析下,单一职责原则这个说法其实更加倾向于方法我们要与接口隔离原则区分开,接口隔离原则本质上也是为了接口,降低接口与接口之间的污染,定义多个接口不要紧,因为接口可以多实现,结合实际开发来讲,在通常的spring项目中我们一般会有Filter类以及Config类,其中Filter类我们一般用来对特定的URL进行过滤,比如说我们做一个商城,有的页面是需要用户登录才能访问的,比如说收藏页,购物车等,有的页面是不需要用户登录的比如商城首页,商家营业信息等(2019年的新规定,需要商家资质),这个时候我们在Filter里面做的就是对URL的过滤(很古老的方法,现在一般不采用,但是建议去了解),再比如说我们的Config类比如说DataSourceConfig里面可能会对数据库连接池进行一些配置,比如说连接池句柄的多少吖等等

下面我们来举个反例

就那上面的Filter来说,行~你过滤URL是吧,我是不是可以拿到你请求了?!可以,我是不是可以拿到你的请求参数!那行,你的这些个新信息都有了我还要你MVC架构有何用?我直接完全可以做一系列处理,连接数据库,做逻辑操作,对返回给前端的数据进行处理!我在一个Filter里面就可以完成所有的操作!这个一点都不夸张!

然后下面新提出一个问题,我想把对返回前端的数据进行处理,有的需要嵌套Freemarker模板,有的我需要返回JSON数据~ 开心不?代码删掉重写吧!不然有你哭的,所以在写代码的时候就进行遵守这些个原则之类的,遵守可能会有麻烦点不会出现什么问题,但是不遵守准出问题

再举个项目实战中的案例: 我们都知道我们后端开发程序员一般在写项目的时候严格点的话需要遵守下面的接收前端的参数: 用xxxQuery实体对象,数据库对应的实体xxx数据库表名,从数据库取出数据映射到后端xxxDAO,偷懒的话你可以完全直接写个xxxQuery来对应,那么接下来几个问题你就懵逼了!后端需要多但会一个字段,那么你Query如果不对应DAO的话就需要去增加一个字段,你前段多传递一个参数,后端数据库但是不返回这个字段,孤零零的一个字段!你强迫症会不会发作???而且这个东西一般就都是有约定成俗的规定的 约定 > 配置 > 编码而且里面还存在数据库字段与后端实体类相对应的问题!所以老老实实写代码,不遵守规范以后就不要怪别人骂你

这篇文章能看懂的都应该是至少有一年开发经验的了,这些都是我踩过的坑

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值