前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >设计模式-六大原则

设计模式-六大原则

作者头像
用户9322266
发布2022-10-09 20:29:28
1950
发布2022-10-09 20:29:28
举报
文章被收录于专栏:MYMY

原则

单一职责原则:

不同的类具备不同的职责,各司其职。

做系统设计是,如果发现有一个类拥有了两种职责,那么就要问一个问题:

可以将这个类分成两个类吗?如果真的有必要,那就分开,千万不要让一个类干的事情太多。

设计模式

抽象工厂模式

开放封闭原则

类、模块、函数,可以去扩展,但不要去修改。

如果要修改代码,尽量用继承或组合的方式来扩展类的功能,而不是直接修改类的代码。

当然,如果能保证对整个架构不会产生任何影响,那就没必要搞的那么复杂,直接改这个类吧。

总结: 对软件实体的改动,最好用扩展而非修改的方式。

设计模式

工厂方法模式

里式替换原则

父类可被子类替换,但反之不一定成立。

也就是说,代码中可以将父类全部替换为子类,程序不会出现异常,但反过来就不一定了。

总结: 在继承类是,务必重写(override)父类中所有的方法,尤其需要注意父类的protected方法(它们往往是让你重写的),子类尽量不要暴露自己的public方法供外界调用。

最少知识原则

尽量减少对象之间的交互,从而减小类之间的耦合。

在做系统设计时,不要让一个类依赖于太多其他的类,需尽量减小依赖关系。

总结: 一定要做到:低耦合、高内聚。

接口隔离原则

不要对外暴露没有实际意义的接口。

也就是说,尽量保证接口的实用性。

当需要对外暴露接口时,需要再三斟酌,若没必要对外提供就删了吧,因为一旦提供了就意味着,将来要多做一件事情,何苦给自己找事做呢。

总结: 不要对外暴露没有实际意义的接口。

依赖倒置原则

高层模块不应该依赖于底层模块,而应该依赖于抽象。

抽象不应依赖于细节,细节应依赖于抽象。

应该面向接口编程,不该面向实现类编程。

面向实现类编程相当于就事论事,那是正向依赖;面向接口编程,相当于透过现象看本质,抓住事物的共性,那就是反向依赖,即依赖倒置。

总结: 面向接口编程,提取出事务的本质和共性。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 原则
    • 单一职责原则:
      • 设计模式
    • 开放封闭原则
      • 设计模式
    • 里式替换原则
      • 最少知识原则
        • 接口隔离原则
          • 依赖倒置原则
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档