设计模式笔记1:设计模式简介

李建钟老师的视频链接

23个设计模式


什么是设计模式

1.可复用
2.面向对象


目标

管理变化,提高复用
在这里插入图片描述


什么时候不用模式

  • 代码可读性很差时
  • 需求理解还很浅时
  • 变化没有显现时
  • 不是系统的关键依赖点
  • 项目没有复用价值时
  • 项目将要发布时

经验之谈

  • 不要为模式而模式
  • 关注抽象类&接口
  • 理清变化点和稳定点
  • 审视依赖关系
  • 要有Framework和Application的区隔思维
  • 良好的设计是演化的结果

如何解决复杂性?

  1. 分解
    人们面对复杂性有一个常见的做法:即分而治之,将大问题分解为多个小问题,将复杂问题分解为多个简单问题。(不容易复用,C语言常用的方法之一)
  • 例子:绘制形状
    每个形状(线、矩形、圆形等)写一个处理类,绘制函数里根据用户设置的形状各自调用对应形状的处理函数。
  1. 抽象
    更高层次来讲,人们处理复杂性有一个通用的技术,即抽象。由于不能掌握全部的复杂对象,我们选择忽视它的非本质细节,而去处理泛化和理想化了的对象模型
  • 例子:绘制形状
    对于所有形状,都可抽象表示为“Shape”,泛化为一个“Draw”的对象模型。
    在这里插入图片描述
在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值