UML——概述(什么是UML?UML有什么作用?面向对象技术)

目录

什么是UML?

UML能帮我们做什么?

什么是建模?

为什么要建模?

为什么要可视化建模?

建模的原理(原则)

UML的基本构造块

UMl中事物有哪些?

面向对象技术


什么是UML?

(Unified Modeling Language)统一建模语言,用来设计软件蓝图的可视化建模语言

UML能帮我们做什么?

                          

什么是建模?

我们要先理解模型,模型就是对现实的简化,把复杂系统变成小的系统,采用“逐个击破”的原则逐一解决。

比如说我现在要建一座大厦,不可能一股脑的就把所有的材料全部垒一块吧,肯定要先了解用户的需求,,要建一个什么样的大厦,工程师和客户之间不断的进行交流。最后定下需求,工程师才开始建这座大厦,先打牢地基,在搭建大楼的框架,在一点点的往大楼上添东西

为什么要建模?

建立大厦和建立茅草屋的区别在于:建茅草屋不需要设计。要生产合格的软件就要有一套关于体系结构、过程和工具的规范

为什么要可视化建模?

我们希望用可视化的方式来描述类与类的关系,流程的关系来描述,不是单单枯燥的文字定义。一张图胜过千言万语

建模的原理(原则)

分解:把一个复杂的问题分解成一个一个小的耦合度之间相互松散的一个一个子问题,逐个突破

抽象:把问题抽象,归纳出他们的共性、个性,分为了可变的和不可变的,要把可变的那部分抽象、归纳、整理成一个一个的参             数,有了这些参数之后,就支持用户的需求变化,用户需求变化了之后,实际上是参数值发生了变化(好处,为之后软件             需求的变更,打下了良好的基础,开发人员不用在从头到处的改代码,简单的修改修改配置文件、参数就可以)

           ?那我们是不是就需要了解在什么场合下要抽象,什么地方要抽象,怎样抽象呢?这个小问题留给大家自己思考一下哟~~

泛化:继承

投影/视图

构件化:把软件做成一个一个的构件,当面临一个新的需求的时候,就可以从已有的构件库中把这些构件进行简单的组装,就可以使用了

形式化:进行正规化的开发


UML的基本构造块

        UMl中的事务:基本图示符号,表示面向对象的基本概念

        UML中的关系:表示基本图示符号之间的关系,描述事物之间的基本关系

        UML中的图:抽象描述

UMl中事物有哪些?

UML中的事物(Things):

结构事物行为事物分组事物注记事物
ClassInteractionPackage

Notes

InterfaceState Mechanism
Collaboration
Use Case
Active Class
Components
Nodes

                             

事物之间的关系是怎样的呢?

                  

不足之处欢迎斧正哦~~🙂

  • 11
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 13
    评论
面向对象UML 第一部分 软件开发活动 7 第一章 结构化的分析与设计 8 第一节 模型图 8 业务流程图 8 数据流图 11 功能结构图 12 功能树 13 网络结构图 14 程序流程图 15 第二节 需求分析 15 需求分析的任务 15 需求分析的步骤 15 需求分析的原则 16 需求分析的方法 16 第三节 概要设计 16 概要设计任务 17 概要设计过程 17 一些概念 17 概要设计原则 17 概要设计方法 17 第四节 详细设计 18 详细设计的任务 18 详细设计的原则 18 详细设计的表示方法 18 第二章 面向对象的分析与设计 18 第一节 面向对象方法概述 18 对象面向对象 18 面向对象技术产生的原因 19 面向对象方法的基本思想 19 概念 19 面向对象技术的特点 19 面向对象语言及系统 19 第二节 面向对象的分析 20 OOA分析的任务 20 OOA分析的原则 20 OOA分析过程 20 第三节 面向对象的设计 20 设计的模型 20 设计的三条重要原则 21 面向对象设计的概念 21 面向对象的设计方法 21 第三章 UML概述 22 UML对软件工程的重大影响 22 UML的概念模型 22 UML建模思想 23 第四章 用UML建模 24 第一节 建模概念 24 系统、模型和视图 24 概念和现象 25 数据型、抽象数据型和实例 25 、抽象对象 26 事件、事件和消息 27 面向对象建模 27 证伪和原型化 28 第二节 UML的主要图形符号 28 用例图 28 图 35 顺序图 40 状态图 42 活动图 44 图表组织 45 图表扩展 47 第五章 需求提出 47 第一节 需求提出概述 48 第二节 需求提出的概念 50 功能性需求--系统功能 50 功能的分 50 非功能性需求和伪需求 51 系统属性 51 描述的层次 52 用例的分 52 用例的层次:高层用例与扩展用例 53 主要、次要和可任选的用例 53 基本用例和真实用例 53 正确性、完整性、一致性、清晰性和现实性 54 可验证性和可追溯性 55 可跟踪性 55 greenfield工程、再工程、界面工程 56 第三节 需求提出活动 56 确定执行者 56 确定场景 57 确定用例 58 改进用例 60 确定执行者和用例之间的关系 60 确定最初的分析对象 62 确定非功能性需求 63 从用户得到信息的方法 64 第六章 需求分析概述 64 需求分析的概念 65 概念模型 65 实体对象,边界对象,控制对象 67 回顾关系重数 68 受限关系 69 归纳 69 第七章 需求分析活动:从用例到对象 70 第一节 识别概念 70 识别概念的策略一 70 识别概念的策略二 71 建立概念模型的指导原则 71 几个注意点 71 自然语言分析: Abbott的试探法 72 第二节 标识实体对象 72 标识实体对象的试探法 72 例子:报告紧急情况用例 73 例子:报告紧急情况用例的实体对象 73 第三节 标识边界对象 73 标识边界对象的试探法 73 例子:报告紧急情况用例的边界对象 74 第四节 标识控制对象 74 标识控制对象的试探法 74 例子:报告紧急情况用例的控制对象 74 第五节 标识关系 75 关系的属性: 75 标识关系的试探法 75 试探关系 75 冗余关系 75 惟一标识 76 找出关联——通用关联列表 76 关联原则 76 关联的命名 77 两个型间的多重关联 77 关联和它的实现 77 例子:销售点问题的关联 77 第六节 标识属性 78 属性的属性 78 有效的属性型 78 非简单属性型 78 识别属性 79 例子:销售点系统的属性 79 术语表 80 第八章 需求分析活动:用动态模型表示系统行为 80 系统行为 80 交互图 80 交互图:协作图与顺序图 81 交互图的依赖关系 82 顺序图--两种观点 82 系统顺序图 82 系统事件和系统操作 83 如何建立一个系统顺序图 84 系统事件和系统边界 84 系统事件和操作的命名 84 对象顺序图 85 画顺序图的试探法 86 协作图的基本表示法 87 契约 90 活动及其之间的依赖关系 90 系统行为与契约 90 契约段 91 如何建立一个契约 91 后置条件 92 后置条件应该详细到什么程度 92 描述设计细节和算法——注释 93 前置条件 93 对书写契约的一些建议 93 用例enterItem的契约 93 概念模型的修改 93 标识状态 94 事件、状态和转移 94 状态图 94 用例状态图 95 系统状态图 95 状态无关和状态相关型 95 何处需要状态图 95 外部和内部事件 96 其他的状态图表示法 96 对单个对象的重要行为进行建模:状态图 96 第九章 GRASP: 职责分配模式 97 导言 97 职责和方法 98 UML图表示方法 98 职责和交互图 98 模式 99 GRASP: 职责分配通用原则的模式 99 专家 99 问题: 99 解决方案: 99 举例: 99 专家模式的优点是: 100 创建者 100 问题: 100 解决方案: 100 举例: 100 优点: 101 低耦合度 101 问题: 101 解决方案: 101 举例: 101 优点: 102 高聚合度 102 问题: 102 解决方案: 102 高聚合度例 102 具有不同功能聚合度的一些场景如: 102 优点: 103 控制者 103 问题: 103 解决方案: 103 控制者例 103 优点: 104 问题要点和讨论 104 消息处理系统和命令模式 105 相关模式 106 职责、角色扮演和CRC卡 106 GRASP: 职责分配通用原则总结 106 多态 106 问题: 106 解决方案: 107 举例: 107 讨论 107 优点 107 纯虚构 107 问题: 107 解决方案: 107 讨论 107 优点: 108 相关模式 108 介者 108 问题: 108 解决方案 108 举例: 108 讨论: 108 优点: 低耦合 109 相关模式 109 “不要和陌生人讲话” 109 问题: 109 解决方案: 109 举例 109 讨论 109 优点: 低耦合 110 相关模式 110 第十章 需求分析活动:精化模型 110 建立交互图的步骤 110 例:运用对象和模式设计一个解决方案 110 交互图和其他制品 110 销售点系统的协作图 111 对对象间的归纳关系建模——泛化 113 泛化 114 UML表示法: 114 定义超型和子型 114 何时定义一个子型 115 销售点终端系统的型层次 115 组织模型 116 销售点终端系统的概念模型的包 116 检查分析模型 116 检查提问 116 分析总结 117 第十一章 系统设计 118 第一节 系统设计概况 118 分析产生的需求模型由以下结果描述: 118 系统设计得到如下结果: 118 他们特别需要解决以下问题: 119 第二节 系统设计的概念 120 子系统和 120 服务和子系统接口 121 耦合度与相关性 121 分层和分区 124 软件体系结构 126 UML配置图 131 两个包之间的可见性 131 服务包接口——虚包模式 131 模型-视图分离模式 132 一个系统的间接通信 132 应用协调者 133 存储和持久化 133 第三节 系统设计活动:从对象到子系统 133 起点:路线设计系统的分析模型 134 确定设计目标 135 确定子系统 137 将子系统映射到处理器和组件 138 定义连续数据的存储 140 定义访问控制 142 设计全局控制流 146 确定边界条件 147 预期变化 149 系统设计综述 150 第四节 系统设计的管理 151 记录系统设计 151 分配任务 152 与系统设计相关的交流 153 系统设计的不断反复 153 第十二章 对象设计 154 第一节 对象设计概况 155 对象设计包括4组活动 155 对象设计是非线性的。 156 第二节 对象设计概念 157 应用域对象和解决域对象回顾 157 型、声明和可见性回顾 157 合约:不变量、前提条件和后续条件 159 UML对象约束语言(OCL) 160 第三节 对象设计活动 161 规格说明活动 161 确定遗漏的属性和操作 163 指定型、声明和可见性 166 指定约束条件 166 指定异常情况 167 组件选择活动 168 确定并调整库 168 确定并调整应用程序框架 169 重组活动 169 实现关系 170 提高可复用性 172 消除实现的依赖性 173 优化活动 175 回顾访问路径 175 退化对象:将对象转变成属性 176 存储高开销计算的结果 176 推迟高开销计算 176 第四节 对象设计的管理 177 用文档记录对象设计 177 分配职责 180 设计图 180 活动及其相互之间的依赖关系 181 何时创建设计图 181 设计图示例 181 如何建立设计图 181 概念模型和设计图的对比 182 建立销售点系统的设计图 182 识别出并画出它们。 182 添加关联和导航 183 添加依赖关系 183 细节的表示法 184
图书详细描述: 本书将Java语言作为大学生的计算机程序设计入门语言,其特色是内容全面、深入浅出、辅助教材立体配套。不但详细介绍了Java语言本身,而且讨论了面向对象的设计思想和编程方法、UML建模语言、图形用户界面的编程方法、网络和数据库程序的编程方法、线程的使用、Java集合框架等实用开发技术。全书以面向对象的程序设计方法贯穿始终,基础性和实用性并重。本书不仅能使读者掌握Java语言,而且能够让读者对现实世界较简单的问题及其解决方法用计算机语言进行描述。    本书既可供大专院校用作“Java语言程序设计”课程教材,也可供Java 爱好者作为入门的自学教材。 目录第1章 Java语言基础知识 1.1 Java语言与面向对象的程序设计  1.1.1 面向对象的程序设计思想  1.1.2 Java语言的特点  1.1.3 Java库 1.2 Java程序概述  1.2.1 Java开发环境  1.2.2 Application举例  1.2.3 Applet举例  1.2.4 Servlet举例  1.2.5 JSP和JavaBean举例 1.3 基本数据型与表达式  1.3.1 变量与常量  1.3.2 基本数据型  1.3.3 表达式与运算符  1.3.4 型转换 1.4 数组的概念 1.5 数组的创建和引用  1.5.1 数组的声明  1.5.2 数组的创建  1.5.3 数组元素的初始化  1.5.4 数组的引用  1.5.5 多维数组 1.6 本章小结 习题第2章 对象的基本概念 2.1 面向对象的程序设计方法概述  2.1.1 抽象  2.1.2 封装  2.1.3 继承  2.1.4 多态 2.2 对象  2.2.1 的声明  2.2.2 对象的声明与引用  2.2.3 数据成员  2.2.4 方法成员  2.2.5 的组织——包的概念  2.2.6 的访问控制  2.2.7 成员的访问控制 2.3 对象初始化和回收  2.3.1 构造方法  2.3.2 内存回收技术 2.4 应用举例  2.4.1 声明BankAccount  2.4.2 声明toString()方法  2.4.3 声明存取款方法  2.4.4 使用DecimalFormat  2.4.5 声明方法生成特殊的实例  2.4.6 声明变量 2.5 UML简介  2.5.1 图  2.5.2 对象图 2.6 本章小结 习题第3章 的方法 3.1 方法的控制流程  3.1.1 if选择结构  3.1.2 switch选择结构  3.1.3 for循环结构  3.1.4 while语句  3.1.5 do while语句  3.1.6 break语句  3.1.7 continue语句 3.2 异常处理简介  3.2.1 异常处理的意义  3.2.2 错误的分  3.2.3 异常的处理  3.2.4 生成异常对象  3.2.5 声明自己的异常 3.3 方法的重载 3.4 本章小结 习题第4章 的重用第5章 接口与多态第6章 输入输出流第7章 对象群体的组织第8章 多线程第9章 图形用户界面第10章 JDBC与数据库访问第11章 Servlet程序设计第12章 JSP程序设计参考文献

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小乔努力变强

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

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

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

打赏作者

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

抵扣说明:

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

余额充值