面向对象设计

第十一章、面向对象设计

1、面向对象基本概念

对象
对象”指的是属于某个类的一个实体,是一个具体存在的事物。
类(实体类、边界类、控制类)
类”指的是一类事物,是一个抽象的概念
抽象
指将具体的事物抽象成更一般、更抽象的概念或模式
封装
指将对象的状态和行为包装在一起,并将其视为一个独立的实体
继承与泛化
指一个类可以从另一个类中继承其属性和方法
多态
指同一个方法可以根据不同的对象,产生不同的行为
接口
指定义对象之间的通信协议
消息
指一个对象向另一个对象发送的请求或通知
组件
指可独立设计、开发、测试、部署和维护的软件模块
模式和复用

2、设计原则

单一职责原则:设计目的单一的类
开放-封闭原则:对扩展开放,对修改封闭
李氏(Liskov)替换原则子类可以替换父类
依赖倒置原则要依赖于抽象,而不是具体实现;针对接口编程,不要针对实现编程
接口隔离原则:使用多个专门的接口比使用单一的总接口要好
组合重用原则:要尽量使用组合,而不是继承关系达到重用目的
迪米特(Demeter)原则(最少知识法则):一个对象应当对其他对象有尽可能少的了解

3、UML

请添加图片描述

4、设计模式

4.1、设计模式概念

架构模式:软件设计中的高层决策,例如C/S结构就属于架构模式,架构模式反映了开发软件系统过程中所作的基本设计决策
设计模式:主要关注软件系统的设计,与具体的实现语言无关
惯用法:是最低层的模式,关注软件系统的设计与实现,实现时通过某种特定的程序设计语言来描述构件与构件之间的关系。每种编程语言都有它自己特定的模式,即语言的惯用法。例如引用-计数就是C++语言中的一种惯用法

4.2、设计模式分类

1、创建型模式
工厂方法(factory method)模式
抽象工厂(abstract factory)模式
原型(prototype)模式
单例(singleton)模式
构建器(builder)模式
结构型模式
行为型模式

2、结构型模式
适配器(adapter)模式
桥接(bridge)模式
组合(composite)模式
装饰(decorator)模式
外观(facade)模式
享元(flyweight)模式
代理(proxy)模式

3、行为型模式
职责链(chain of responsibility)模式
命令(command)模式
解释器(interpreter)模式
迭代器(iterator)模式
中介者(mediator)模式
备忘录(memento)模式
观察者(observer)模式
状态(state)模式
策略(strategy)模式
模板方法(template method)模式
访问者(visitor)模式

5、创建型模式

在这里插入图片描述

6、结构型模式

请添加图片描述

7、行为型模式

请添加图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

微笑伴你而行

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

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

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

打赏作者

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

抵扣说明:

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

余额充值