软考《软件设计师》第十章:面向对象

第十章:面向对象

考点1:基础知识(★★★★★)

  1. 概念
  2. 对象:属性(数据)+方法(行为)+对象ID
  3. 类:对象的集合
    1. 实体类:现实世界中存在的实体,如人,物等
    2. 边界类(接口):未用户提供一种与系统合作交互的方式,如显示屏、窗口、对话框、条形码、二维码等
    3. 控制类:控制活动流,充当协调者
  4. 接口:只有方法定义没有实现
  5. 三大特征
    1. 封装:隐藏对象的属性和实现细节,仅对外提供公共访问方式,提高安全性。
    2. 继承:提高代码复用性,是实现多态的前提。
    3. 多态:父类或接口定义的引用变量指向子类或具体实现类的实例对象,提高了代码的拓展性。
    4. 静态绑定:在编译时,把过程调用和响应调用所需要执行的代码加以结合
    5. 动态绑定:在运行时,把过程调用和响应调用所需要执行的代码加以结合
  6. 设计原则
    1. 单一职责原则SRP:类的功能要单一。
    2. 开放封闭原则OCP:扩展开放,修改关闭。
    3. 里式替换原则LSP:子类可以替换父类出现在父类能够出现的任何地方。
    4. 依赖倒置原则DIP:要依赖于抽象,而不是具体实现;针对接口编程,不要针对实现编程
    5. 接口分离原则ISP:使用多个专门的接口比使用单一的总接口要好
    6. 组合重用原则:要尽量使用组合,而不是继承关系达到重用目的
    7. 迪米特原则(最少知识法则):一个对象应当对其他对象有尽可能少的了解
  7. 面向对象开发过程
    1. 面向对象分析:获得对应问题的解决,抽取和整理用户需求并建立问题域精确模型
      1. 认定对象:按自然存在的实体确立对象。一般“名词”作为对象
      2. 组织对象:分析对象间的关系,将相关对象抽象成类,利用类的继承性建立具有继承性的层次的类结构
      3. 描述对象间的相互作用:描述对象在应用系统中的关系。
    2. 面向对象设计:采用协作的对象、对象的属性和方法解决软件问题的方案
    3. 面向对象实现:采用面向对象程序设计语言实现系统
    4. 面向对象测试:根据规范说明来验证系统设计的正确性

考点2:UML(★★★★★)

  1. UML图分类

    在这里插入图片描述

  2. 用例图:描述系统和外部的交互关系。小人表示参与者,圆圈表示用例,实线空箭头表示泛化关系,虚线普通箭头<>表示扩展关系,虚线普通箭头<>表示包含关系

    在这里插入图片描述

  3. 类图:描述类、接口及协作之间的关系,用于系统的静态实现视图建模。箭头上可表示关系和角色,方框表示实体

    1. 依赖:一个类A使用到了另一个类B(作为类A的方法的参数)

    2. 关联:类B作为成员变量形成存在于类A中

    3. 聚合:整体与部分生命周期不同

    4. 组合:整体与部分生命周期相同

    5. 泛化:一个类与它的一个或多个细化类之间的关系

      在这里插入图片描述

  4. 序列图:对象间消息的传递按时间顺序。对象名标有下划线,生命线为虚线,控制焦点用薄矩形表示,消息为箭头

    1. 同步消息:进行阻止调用,调用着终止执行,使用实心三角实线表示

    2. 异步消息:调用着发出消息后继续执行,不引起调用着阻塞,使用普通箭头实线表示

    3. 返回消息:使用普通箭头虚线表示

      在这里插入图片描述

  5. 活动图:用于系统的动态视图建模,通常在建模用例图之后,对复杂用例进行进一步细化。黑色粗线条的数量表示能运行的最大线程数,在此区间的活动可以同时进行

    在这里插入图片描述

  6. 状态图:描述对象、子系统、系统的生命周期。圆圈代表状态,箭头表示监护条件

在这里插入图片描述

  1. 通信图:表示对象和对象之间的调用关系。“:”表示对象,前面是对象名,后面是类名

    在这里插入图片描述

  2. 组件图:描述组件之间的组织和依赖,用于系统的静态实现视图,与类图相关,通常把组件映射为一个或多个类、接口和协作

    在这里插入图片描述

  3. 部署图:软件的构件应该部署在哪个硬件的节点上,用于系统的静态实施视图

    在这里插入图片描述

考点3:设计模式(★★★★★)

  1. 设计模式分类

    在这里插入图片描述

  2. 创建型模式

    在这里插入图片描述

  3. 结构型模式

    在这里插入图片描述

  4. 行为型模式

    在这里插入图片描述

    在这里插入图片描述

视频来源 软件设计师
如需软考设计师笔记的,私聊或评论

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

流年师兄要努力りゅう

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

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

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

打赏作者

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

抵扣说明:

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

余额充值