C++设计模式(一)

设计模式实现的目标

理解松耦合设计思想
掌握面向对象设计原则
掌握重构技法改善设计
掌握GOF核心设计模式

什么是设计模式

每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复劳动。
——Christopher Alexander

对于程序员来说,要有底层思维和抽象思维

底层思维:向下,如何把握机器底层从微观理解对象构造。
主要有以下四点:语言构造 、编译转换、内存模型、运行时机制。
抽象思维:向上,如何将我们的周围世界抽象为程序代码。
主要有以下四点:面向对象、组件封装、设计模式、构造模式。
如何才能理解面向对象
  1. 向下:深入理解三大面向对象机制
    封装,隐藏内部实现
    继承,复用现有代码
    多态,改写对象行为
  2. 向上:深刻把握面向对象机制所带来的抽象意义,理解如何使用这些机制来表达现实世界,掌握什么是“好的面向对象设计”。
    软件设计的复杂的根本原因就是变化
如何解决复杂性?
  分解
    人们面对复杂性有一个常见的做法:即分而治之,将大问题分解为多个小问题,将复杂问题分解为多个简单问题。
    抽象
    更高层次来讲,人们处理复杂性有一个通用的技术,即抽象。由于不能掌握全部的复杂对象,我们选择忽视他的非本质细节,而去处理和理性化了的对象模型。
软件设计的目标
  复用。
   但复用并不是的代码复制,而是编译之后二进制代码的复用。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风赤

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值