博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
设计模式-设计思想和原则
阅读量:4163 次
发布时间:2019-05-26

本文共 561 字,大约阅读时间需要 1 分钟。

文章目录

设计思想

  • 天天加班编程,编程到底都做的是什么?

    撸代码,加班撸代码,写接口、写类、写方法

  • 用设计模式或做设计的作用是什么?

    指导、规定如何撸代码,如何来写接口、写类、写方法

  • 为什么要做设计、用设计模式?

    代码会变,为应对变化,为了以后方便扩展
    做到以不变应万变,做一个会偷懒的程序员

软件界永恒的真理:不变的是变化!

设计模式思想中最重要的一点:区分变和不变!

然后搞清楚会如何变,我们需要如何固定不变的,并隔绝变的。不同的变化方式对应不同的设计模式。

OOP回顾:

  • 类:模拟现实,封装数据与代码
  • 接口:隔离变化,定义功能使用者和功能提供者的接口,两者通过接口相联系
  • 抽象类:包容不变与变的
  • 封装、继承、多态:一种实现变化的方式
  • 类与类的关系:继承(类2继承类1)、组合(类2持有类1的实例,类2使用类1)

设计原则

  • 找出变化,分开变化和不变的

    隔离、封装变化的部分,让其他部分不受它的影响

  • 面向接口(抽象)编程

    隔离变化的方式。使用者使用接口,提供者实现接口。接口可以是超类!

  • 依赖倒置原则

    隔离变化的方式。依赖抽象,不依赖具体类!

  • 对修改闭合,对扩展开放

    隔离变化的方式。

  • 多用组合,少用继承

    灵活变化的方式。“有一个”可能比“是一个”更好。

  • 单一职责原则

    方法设计原则。对方法来说,每个方法只负责一个事情!

转载地址:http://fwpxi.baihongyu.com/

你可能感兴趣的文章
HTML5学习之——HTML 5 视频
查看>>
HTML5学习之——HTML 5 Video + DOM
查看>>
HTML5学习之——HTML 5 音频
查看>>
HTML5学习之——HTML 5 拖放
查看>>
HTML5学习之——HTML 5 Canvas vs. SVG
查看>>
HTML5学习之——HTML 5 应用程序缓存
查看>>
HTML5学习之——HTML 5 Web Workers
查看>>
HTML5学习之——HTML 5 Canvas
查看>>
HTML5学习之——HTML5 内联 SVG
查看>>
HTML5学习之——HTML 5 服务器发送事件
查看>>
SVG学习之——HTML 页面中的 SVG
查看>>
SVG 形状学习之——SVG 矩形<rect>
查看>>
SVG 形状学习之——SVG圆形
查看>>
SVG 滤镜学习之——SVG 滤镜
查看>>
mysql中用命令行复制表结构的方法
查看>>
hbase shell出现ERROR: org.apache.hadoop.hbase.ipc.ServerNotRunningYetException
查看>>
让代码变得更优雅-Lombok
查看>>
解决Rhythmbox乱码
查看>>
豆瓣爱问共享资料插件发布啦
查看>>
Ubuntu10.10 CAJView安装 读取nh\kdh\caj文件 成功
查看>>