OOAD 2 UML

什么是UML(Unified Modeling Language)

  • 统一建模语言(UML) 是描述、构造和文档化系统制品的可视化语言。
    The Unified Modeling Language is a visual language for specifying,constructing and documenting the artifacts of systems

  • UML是一个符号体系,帮助人们使用面向对象的概念为系统建模。
    It is a notational system aimed at modeling systems using OO concepts

  • UML不是一种方法, 也不是一种过程。

UML的三种应用

  • 作为草图(sketch)
    非正式的 不完整的图
    敏捷建模(agile modeling) 强调了UML作为草图的方式,这也是使用UML的普通方式

  • 作为蓝图(blueprint)

    • 逆向工程以UML图的方式对现有代码进行可视化。
    • 代码生成(前向工程)
  • 作为编程语言(programming language)

  1. 用UML完成软件系统可执行规格说明。
  2. 可执行代码能够被自动生成,但并不像通常一样为开发者所见或修改;人们仅使用UML“编程语言”进行工作。
  3. 如此应用UML需要有将所有行为或逻辑进行图形化表示的实用方法(很可能
    使用交互图或状态图)
  4. 但是目前在理论、工具的健壮性和可用性方面仍然处于发展阶段。

UML图的定义

在这里插入图片描述

类的术语

  • 概念类(conceptual class):现实世界中的概念或事物。

  • 软件类(software class):无论在过程还是方法中,都表示软件构件在规格说明
    或实现透视图中的类。

  • 实现类(implementation class):特定OO语言(如Java)中的类

可视化建模的优点:图可以帮助我们更为便利地观察全景,发现软件元素或分析之间的联系,同时允许我们忽略或隐藏旁枝末节。

UML中的几种关系

  1. 泛化(Generalization):带三角箭头的实线,箭头指向父类
  2. 实现(Realization):带三角箭头的虚线,箭头指向接口
  3. 关联(Association) :带普通箭头的实线,指向被拥有者
  4. 依赖 (Dependency) :带箭头的虚线,指向被使用者
  5. 聚合(Aggregation):带空心菱形的实线,菱形指向整体
  6. 组合 (Composition) :带实心菱形的实线,菱形指向整体

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/1381436.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

北邮:OOAD笔记

1.用例图:描述角色以及角色与用例之间的连接关系 2.类图:描述系统中的类,以及对象,接口,协作等事物之间的关系 3.交互图:描述对象间如何协作,包括序列图和协作图 4.状态图 描述类的对象所有可能…

OOAD实验

类图综述该类图总共分为大致几个模块:用户、票务管理、个人信息管理、用户管理。其中用户分为乘客、票务管理员和系统管理员三类。票务管理员除了负责平时更新车票信息之外,还可以查看车票的销售情况;而系统管理员主要是对乘客和票务管理员的…

OOAD练习题

一 选择题: 1. UpClean公司准备开发一套战略游戏系统。该系统中有很多战略角色(character),比如King、Queen、Troll、Knight等,每个战略角色可以发出各种攻击行为(weapon behavior),…

OOAD概述

OOA Object-Oriented Analysis (OOA):面向对象的分析与设计 OOA的侧重点是业务领域分析,与软件所要应用的行业领域相关,而与软件技术关系不大,需要由领域专家进行。这一部分的工作被称为“需求分析”。 OOA的成果: 业…

OOAD与UML

1.OOAD(Object Oriented Analysis and Design)面向对象分析和设计 --OOA 分析阶段,主要解决以下问题: --建立对业务问题域的清晰视图 --列出必须要完成的核心业务 --针对问题域建立公共词汇表 --列出针对此问题域的最佳解决方案 -…

OOAD之设计原则

一、设计原则意义 为了设计出一个好的软件系统。我们必须遵照一定的规则。 衡量软件设计质量的首要标准是该设计是否能满足软件的功能需求。除了功能需求以外,还有很多衡量软件设计质量的标准,包括可读性、可复用性、可扩展性、可维护性等。 1、一般一个…

ooad设计模式_OOAD-面向对象的分析与设计

ooad设计模式 让我们分为以下几节来讨论OOAD: (Lets discuss OOAD by dividing into the below sections:) OOS 操作系统 OOA OOA OOD 面向对象 Thumbnails principles of the object oriented design 面向对象设计的缩略图原则 OO Design Quality Metrics OO设计质…

OOAD复习笔记

OOAD学习目标: 1.A critical,fundamental ability in OOAD is to skillfully assign responsibilities to software components.(面向对象分析设计种至关重要的的能力是熟练地为软件部件分配职能) 2)GRASP patterns &#xff0c…

几款免费的数据恢复软件测试

目录 一、前言 二、测试正文 1、Windows File Recovery (不推荐) 2、Recuva 3、Undelete360 (最轻量级) 4、Glary Undelete 三、总结 一、前言 刚进回收站,清空后的,都能找到,还原后能正常…

一款非常好用且专业的免费万兴数据恢复软件

Wondershare Recoverit Mac版是一款非常好用且专业的免费万兴数据恢复软件,可以恢复所有文件类型,包括照片、视频、文档和其他文件。从所有数据丢失场景中检索数据,并从所有存储设备中恢复数据,并崩溃Windows系统或可启动问题!可靠…

【C++基础(十)】C++泛型编程--模板初阶

💓博主CSDN主页:杭电码农-NEO💓   ⏩专栏分类:C从入门到精通⏪   🚚代码仓库:NEO的学习日记🚚   🌹关注我🫵带你学习C   🔝🔝 模板 1. 前言2. 函数模板3. 函数模板原理4. 函数…

PETool free分享

百度盘下载pe解析工具、PETool.1.0.0.5.exe(免费) 链接: https://pan.baidu.com/s/1A44RaB3GotWfmWmQCv3qqw 提取码: 33fh MD5: 5691CCA8BD8C5BDEE5F839098CE82A2A SHA1: 1DAD3D205405EB8E99BD39DAE891463C15F995CD 下载后请校验文件防篡改。 文件安全性…

CPABE

属性加密的基础是秘密共享。 什么是秘密共享? 秘密共享指的是dealer有一个秘密,他想要在w个人中分享这个秘密,但是他希望任何单个人都无法计算出(获得)这个秘密,也就是说他想任意t个人在一起才能够把这个…

Peers

Peers 区块链网络主要由一组peers节点组成。 peers是网络的基本要素,因为他们主持分类账和智能合约。 回想一下,分类账不可变地记录智能合约产生的所有交易。 智能合约和分类帐分别用于封装网络中的共享进程和共享信息。 peers的这些方面使他们成为理解H…

Protobuf-importimport public

【转载】https://www.cnblogs.com/letsgollc/p/7423248.html 场景:假如有文件hundredbulls.proto,需要导入另一个文件common.proto,两者在同一个目录中. 导入方式 在hundredbulls.proto文件的开头,使用关键字import导入另一个文件…

pump-probe技术简介

pump-probe技术简介 pump-probe定义介绍应用 pump-probe定义介绍 泵浦-探测(pump-probe)是一种利用短激光脉冲测量超快现象的技术。**当泵浦光照射在样品上时,可以激发出各种各样的物理现象,例如电子激发。随后,经过一…

记录更换若依框架的用户和部门两种表的过程

背景: 公司使用若依框架快速构建项目,客户那边原有的数据要同步过来,且要求字段与原先的字段一致,可以让数据丝滑无畅导入。用户表和部门表是基础在代码出现的地方比较多,该如何考虑去过度去更换) 如何快速…

【单片机/嵌入式】最完整学习路线

一.什么是单片机?什么是嵌入式?它们之间的区别与联系。 关于这个问题我在网上寻找到了相关文章解释得很详细,不了解的同学可以参考一下这篇文章:到底什么是嵌入式?什么是单片机? - 知乎 二.学习路线 一个人…

大学学习历程简单总结

一、主要学习经历: 2017年9月进入大学: 最开始自己对大学的认识是一种特别仰慕的感觉,并且当时自己认为在大学里面是做各种各样的研究和学习的,并且认为只有对科研特别喜欢而且拥有天赋的大学生才能去升学为研究生; 进…

“机器学习”名字的由来

阿瑟萨缪尔(Arthur Samuel, 1901-1990) 阿瑟萨缪尔是人工智能研究的先驱。 从1949年到1960年代后期,他在让计算机从经验中学习方面做了最出色的工作,而他的研究工具是跳棋游戏。(玩游戏的程序通常在人工智能研究中扮演果蝇在遗传学中所扮演的…