软工视频——面向对象技术(OOA、OOD、OOP、OOT)

简介: 面向对象的技术是当前计算机界所关心的重点,,面向对象的概念和应用已经扩展到很宽的范围,如面向对象的数据库系统、面向对象的系统分析与设计、CAD 技术、人工智能以及其他广泛的应用范围。

面向对象的技术是当前计算机界所关心的重点,,面向对象的概念和应用已经扩展到很宽的范围,如面向对象的数据库系统、面向对象的系统分析与设计、CAD 技术、人工智能以及其他广泛的应用范围。


20200607165015853.png


什么是面向对象?


面向对象=对象+类+继承+通信


什么是对象?


对象是系统中用来描述客观事物的实体,是面向对象开发模式的基本成分


每个对象可用它本身的一组属性和它可以执行的一组操作来定义


对象具有哪些特点?


  • 对象具有封装性:对象将数据及行为封装在一起,将其内部结构隐藏起来。外界不能直接修改对象的状态,只有 通过向该对象发送消息(message)来对它施加影响
  • 对象具有自治性
  • 对象具有通信性
  • 对象具有被动性
  • 对象具有暂存性
  • 对象可具有持久性


什么是消息?


就是对象向对象发送的服务请求


什么是类?


类是一组具有相同数据结构和相同操作的对象的集合(类的基本元素是对象)


方法是什么?


方法也称作行为,指定义于某一特定类上的操作与法则


面向对象的基本特征


  • 继承性


是使用已存在的定义作为基础建立新定义的技术。新的类自动继承旧类的属性和行为特征,并可具备某些附加的特征或某些限制。新类称作旧类的子类,旧类称作新类的超类。


实例:


 20200607163225402.png                                                          


如果类 C 能使用类 B 中的方法及属性,称 B 是 C 的超类(superclass),C 是 B 的子类 (subclass),也称类 C 继承类 B


  • 封装性


所有信息都存储在对象中,即其数据及行为都封装在对象中。


  • 多态性


在收到消息时对象要予以响应,不同的对象收到同一消息可以产生完全不同的结果, 这一现象叫做多态。


类的继承与多态结合后,将进一步增强软件的重用性


对象模型化技术OMT


就是把分析时收集的信息构造在三类模型中,即对象模型、功能模型、动态模型


                 2020060716364697.png            


  • 对象模型


三个模型中最关键的一个模型,作用是描述系统的静态结构,包括构成系统的类和对象,他们的属性和操作,及他们之间的关系


在OMT中,类与类之间的关系叫做关联


关联有这几种形式:聚合:代表整体与部分的关系


                               限定:用以对关联的含义做某种约束


                                角色:用来说明关联的一段


  • 动态模型


涉及到事件追踪图和状态图

  • 功能模型


由多个数据流图组成,指明从外部输入,通过操作和内部存储,直到外部输出,这整个的数据流情况


面向对象的软件工程方法

                                                               

20200607164225224.png


  • 面向对象的分析:OOA


强调直接针对问题域中客观存在的各种事物建立 OOA 模型中的对象。分为了5层


  20200607164310372.png                              


  • 面向对象设计:OOD


继续做面向对象分析阶段的工作。OOA 与 OOD 采用一致的表示法,两者能够紧密衔接,大大降低了从 OOA 过渡到 OOD 的难度、工作量和出错率。


  • 面向对象的编程:OOP

用一种面向对象的编程语言把 OOD 模型的每个成分书写出来。


  • 面向对象的测试:OOT


指,对于用面向对象的技术开发的软件,在测试过程中继续运用面 向对象的技术,进行以对象概念为中心的软件测试


20200607164404392.png

相关文章
|
存储 测试技术 BI
软件体系结构 - 系统分析与设计(2.面向对象方法)
【4月更文挑战第6天】软件体系结构 - 系统分析与设计(2)
443 0
|
机器学习/深度学习 人工智能 搜索推荐
LangChain入门指南
LangChain入门指南
3489 0
|
11月前
|
人工智能
阿里云优惠券在哪领取?手动整理2025阿里云代金券、上云补贴活动整理
2025阿里云优惠券免费领!个人可享6折券+12张代金券,总计2088元;学生专享300元无门槛券,0元购服务器;企业用户更有5亿算力补贴、10万出海支持及AI先锋计划。点击活动中心、学生专区、企业权益中心一键领取,上云更省钱!
1022 5
|
数据采集 监控 数据管理
数据管理最容易混淆的3个概念:元数据、数据元、元模型
本文深入解析数据领域三大核心概念:“元数据”“数据元”“元模型”,从定义、用途到实际应用,清晰区分三者区别。元数据是“数据的说明书”,描述数据来源与使用方式;数据元是“最小数据单元”的标准,确保数据统一与规范;元模型是“模型的设计规则”,指导模型合理构建。三者相辅相成,是数据治理不可或缺的基础。掌握它们,助你提升数据管理效率,避免踩坑。
|
Linux 编译器 C语言
./build.sh:行1: g++: 未找到命令的错误问题在centos操作系统下面如何解决
通过上述步骤,您应该能够有效地解决CentOS系统中 `g++: 未找到命令`的错误。确保软件开发环境配置得当,对于顺利执行编译脚本和日常开发工作至关重要。如果问题依然存在,考虑检查脚本内的命令路径引用是否正确,或进一步排查系统配置问题。
877 0
|
运维 数据可视化 前端开发
什么是低代码?低代码的技术发展、技术领域及对比纯代码的优劣势
低代码是一种通过可视化工具快速开发应用的技术模式,大幅降低开发门槛与成本。它结合了前端页面搭建、后端服务编排和自动化运维能力,使业务人员和技术团队都能高效构建企业应用,助力数字化转型。
|
Arthas 前端开发 Java
类加载器 超详解:什么是类加载器,类加载器作用及应用场景,类加载时机,类加载的完整过程,类加载器分类
类加载器 超详解:什么是类加载器,类加载器作用及应用场景,类加载时机,类加载的完整过程,类加载器分类
类加载器 超详解:什么是类加载器,类加载器作用及应用场景,类加载时机,类加载的完整过程,类加载器分类
|
Unix Linux Windows
操作系统的演变与基本原理
本文旨在深入探讨操作系统的历史演变过程及其背后的设计原理。通过对不同时期典型操作系统的分析,本文揭示了它们如何响应技术挑战和社会需求的变化。此外,文章还将阐述操作系统的核心功能和关键技术,如进程管理、内存管理和文件系统,并探讨这些技术如何影响计算机系统的性能和可靠性。通过综合历史案例和技术分析,本文希望为读者提供一个全面而深入的理解,为什么操作系统是现代计算不可或缺的基石。
513 28
|
机器学习/深度学习 监控 机器人
量化交易机器人系统开发逻辑策略及源码示例
量化交易机器人是一种通过编程实现自动化交易决策的金融工具。其开发流程包括需求分析、系统设计、开发实现、测试优化、部署上线、风险管理及数据分析。示例中展示了使用Python实现的简单双均线策略,计算交易信号并输出累计收益率。
|
存储 缓存 NoSQL
分布式缓存最全详解(图文全面总结)
关注【mikechen的互联网架构】,10年+ BAT架构经验倾囊相授。本文详细介绍分布式缓存的核心概念、特点及常见问题,如缓存雪崩、缓存穿透和缓存击穿,并探讨其应用场景和解决方案。欢迎交流。

热门文章

最新文章