作业帮 > 综合 > 作业

单一职责的理解如果不违背单一职责原则,是不是类里面只有一个方法就行了?我上网查过单一职责指的是只有一个引起类变化的原因,

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/10 11:09:52
单一职责的理解
如果不违背单一职责原则,是不是类里面只有一个方法就行了?我上网查过单一职责指的是只有一个引起类变化的原因,假如说创建一个“小明”类,小明会扫地,会吃饭,会走路,总共有三个方法,而后来小明又会洗衣服、喝水等等,如果把这些方法加入小明类里面,则是违反了封闭的原则,那么把新增的这两个方法写成类,然后构造的时候把小明当做参数传递进去,这样就相当于小明增加了这两个方法,可是,如果小明有几十种方法,就要写几十种类吗?这样会不会很累呢?我该怎么理解好呢?
单一职责不是单一方法,而是指某个接口或类只有一个原因引起变化,也就是说只管一件事情.
单一模式的缺点确实就是繁琐.
这种设计模式在软件行业当中是存在很大争议的,如果题主实在理解不了也没关系,因为本来就没个定论(当然你要说PM强制要求单一,那没话说,上司最大).
个人建议,如果业务逻辑比较简单,或者是即使承担多项职责,但这几个职责间的耦合性非常强,拆开写反倒不便于维护管理,那么违反单一职责原则也是可以的.