单一职责原则(Single Responsibility Principle):html
不要存在多于一个致使类变动的缘由。java
核心思想:系统中的每个对象都应该只有一个单独的职责,而全部对象所关注的就是自身职责的完成。sql
单一职责,何为单一职责,职责的划分?数据库
关于单一职责,个人理解是一类类似的事物,它们拥有惟一一个共同父集。好比数据库的增删改查,咱们能够将其理解成一种职责,即对数据的基本操做。wordpress
职责的划分,主要根据不一样的角度划分,好比,spa
一、从类组成,划分为属性的操做,和行为操做两种。设计
二、从数据库操做的不一样做用,划分为数据库的链接操做,和增删改查基本操做。code
在开发项目时,开发人员设计接口的时候会有些问题,好比咱们设计用户接口类,有时为了方便原则,将其属性操做以及行为操做都封装在用户接口类中。htm
上面这个例子,将业务对象和业务逻辑放在一块儿,使得接口有两种职责,用户类的年龄与身高,属于业务对象,与之相应的方法主要负责用户的属性;而吃东西是业务逻辑,主要负责用户的行为。所以业务对象和业务逻辑这两种缘由均可以引发用户类的变化,发生多于一个致使类变动的缘由的状况,违背了单一职责原则。对象
为了符合单一职责原则,咱们将业务对象和业务逻辑这两种缘由分散开来,便可解决。
在java中数据库操做中,根据不一样职责划分类接口。
java.sql.Connection:Creates a Statement
object for sending SQL statements to the database.
java.sql.Statement:Executes the given SQL statement, which returns a single ResultSet
object.
单一职责原则,难点在于职责的划分,在实际中,咱们尽可能根据项目需求的不一样角度去划分职责。
在某些时候不能遵照单一职责时,那就放心破坏吧,谨记教条是死的,生活是多变的。
好比:
注意:
参考:
一、单一职责原则