zoukankan      html  css  js  c++  java
  • 设计模式六大原则之单一职责原则

    1.1 类的多职责设计

          单一职责原则的英文为Single Responsibility Principle,简称SRP。它的定义是对于类只有且只有一个原因可以引起类的变化,即一个类只负责一个职责。当一个类承担多个职责时,那么任何一个职责的变化都会成为类改变的原因,多个不同的职责耦合到一起,当需求变化时,这样脆弱的设计会回带来很多负面的影响。以近期做的一个项目的用户管理为例,包括新增用户、删除用户、修改用户信息(密码、邮箱、手机号等)、新增角色、修改用户角色。类图如图1所示:

                                                                                                               图1 用户信息类图

    初步一看这个设计没毛病,把用户的属性和行为放在一个类中,但是按着单一职责原则,这样的设计犯了很严重的错误。

    1.2 类的单一职责设计

    设计的一个类只用于完成特定的业务,这个就是高内聚。耦合就是类之间的互相调用关系,如果耦合很强,互相牵扯调用很多,那么会牵一发而动全身,不利于维护和扩展。    根据单一职责原则,将属性和业务分离,设计出类图如图2。

                                                                                                             图2 属性行为分离

    1.3 总结

     类的单一职责设计从原则上出发确实是一个优秀的思想,但在实际运用过程中可能困难重重,比如项目的时间安排、编码人员的水平、职责划分等,但尽管有困难,但我们在设计时最好做到职责单一,设计方面没有最好的只有更好的。

  • 相关阅读:
    Vue 创建项目
    Vue组件之间的传参
    Vue自定义组件
    Python开发之路
    爬虫
    手撸系列
    Django从入门到不会放弃
    前端
    day29 TCP的三次握手 TCP的四次挥手 基于TCP的socket
    day28 客户端服务端架构介绍
  • 原文地址:https://www.cnblogs.com/smilejeffery/p/6802516.html
Copyright © 2011-2022 走看看