staruml

StarUML之七、StarUML的Class Diagram(类图)示例

生来就可爱ヽ(ⅴ<●) 提交于 2021-02-07 05:39:58
UML 类图中的概念 类图关系:泛化(继承)、实现、聚合、组合、关联、依赖 类图的详解可在网上查询(推荐 https://zhuanlan.zhihu.com/p/24576502 ) 它描述了在一个系统中的对象和他们的关系,能够让我们在正确编写代码以前对系统有一个全面的认识。 一个单独的类图描述系统的一个具体方面,收集类图表示整个系统。基本上,类图表示系统的静态视图。 1:新建项目,或者根据模板创建(刚开始可以New一个新项目), 2:在右侧ModelExplorer中顶级节点或者model节点,右键Add Diagram选择添加Class Diagram 3:在左侧的Working Diagrams点击激活需要建模的画布(一个项目中一般会有多个 Diagram,需要确定是那个模型在进行设计 ) 4:在Toolbox中选择Class,在绘图区双击或者拖拽绘制视图元素 5:如下图绘制了一个Class的视图元素,增加了一个类型为string 属性,方法1有一个string参数,方法2有一个string 参数同时需要返回一个string结果. 现在我们要实现一个类图设计,需求如下 1:接口-车; 2:实现类-汽车、自行车; 3:轮胎、发动机类组成汽车; 4:BMW是汽车的一种;5:学生需要骑自行车; 6:每个学生都有身份证; 7:每个学生都有班级; 根据需求设计一个类图。 新建空白项目

StarUML类图的六种关系泛化(Generalization)实现(Realization)依赖(Dependency)聚合(aggregation)组合(Composition)关联Associa

。_饼干妹妹 提交于 2021-02-07 04:48:27
StarUML类图的六种关系 一、 泛化(Generalization) 样式:实线+箭头 泛化关系图(men类继承person类): 代码: 1. public class Person { 2. } 3. Public class men extend person { 4. } 二、 实现(Realization) 样式:实线+圆圈 实现关系图(猪八戒类实现36变): 1. Public interface 36magic { 2. Public abstract void 36magic ( ) ; 3. } 4. public class zhubajie implements 36magic { 5. public void 36magic ( ) ; 6. } 三、依赖(Dependency) 样式:虚线+箭头 依赖关系图(PS:动物类依赖水类生长): 1. Public class Water ( ) { 2. } 3. Public class Animal ( ) { 4. Public void Growup ( water ) { 5. } 6. } 四、 聚合(aggregation) 样式:实线+空菱形 聚合关系图(PS:汽车由轮胎组装而成,且轮胎能独立存在成为一个个体) 1. Public class car { 2. Public Tyre tyre

20172304 实验二 《Java面向对象程序设计》 实验报告

三世轮回 提交于 2020-12-13 04:15:21
#20172304 实验二 《Java面向对象程序设计》 实验报告 课程名称:《程序设计与数据结构》 学生班级:1723班 学生姓名:段志轩 学生学号:20172304 实验时间:2018年4月18日 实验名称:《Java面向对象程序设计》 指导老师:王志强老师 ## 代码链接 ##实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装、继承、多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 完成蓝墨云上 (1)-(5)实验。 ##实验要求 完成实验二《Java面向对象程序设计》中的内容。 其中Eclipse相关的内容参考Intellj IDEA 简易教程换成IDEA实现。 ##实验考核规则 每次实验考核3分 不按要求提交实验过程截图会扣一分(本周五次,只要有一个不合格就会扣分) 实验报告认真写的会加1分(主要是遇到的问题和解决过程) ##实验流程 软件准备: IEDA starUML 实验内容: 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装、继承、多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 ##实验具体内容 实验一:创建Myunit类,并对Myunit类进行测试实现边界检查。 实验二:学习StringBuffer类并进行测试。、 实验三:让系统支持long型,并添加测试代码。 实验四:设计Complex类(复数类)

ubuntu20上安装starUML3

孤街醉人 提交于 2020-08-18 09:49:25
starUML3支持跨平台,是一款非常好用的UML绘图工具,但是虽然你不购买还是能使用但是会像sublime一样一直给你提示购买,接下来就是怎样破解这个软件了。 下载AppImage文件,使用appimagetool-x86_64进行解压,解压之后再安装asar, 对appimage文件进行解压 ./StarUML-3.2.2.AppImage --appimage-extract 进入目录 进入目录/appDir/StarUML.app/Contents/Resources 修改内容如下 checkLicenseValidity ( ) { this . validate ( ) . then ( ( ) => { setStatus ( this , true ) } , ( ) => { //setStatus(this, false) //UnregisteredDialog.showDialog() setStatus ( this , true ) //新增 } ) } 然后使用appimagetool进行打包 ./appimagetool-x86_64.AppImage ./squashfs-root/ 接下来就是启动starUML了,再也不提示购买了 asar 需要使用npm进行安装,也就是需要对你的电脑配置node.js环境 最后想软件启动更方便可以使用

StartUML 使用

让人想犯罪 __ 提交于 2020-08-10 02:38:49
startuml 3 windows 破解教程 ,19.9 声明,请支持正版,此种方式,仅限交流学习。 最新测试,startUML 3.2.2 可用 (1) 下载startUML http://staruml.io/download (2) 安装node.js (3) 安装asar npm install -g asar (4) 解压app.asar asar extract app.asar app (5) 修改源码 XXXX\StarUML\resources\app\src\engine\license-manager.js checkLicenseValidity () { this.validate().then(() => { setStatus(this, true) }, () => { //ori code. if faild will set false. //setStatus(this, false) //UnregisteredDialog.showDialog() // new setStatus(this,true) }) } (6) 重新打包, 替换原来的app.asar. 为了防止自己该错,原来的备份下,再替换好了。 asar pack app app.asar 来源: oschina 链接: https://my.oschina.net/u

读书笔记之这一年学习c#等语言编程知识的感悟(图)

泄露秘密 提交于 2020-05-04 06:14:04
读书笔记之这一年学习c#等语言编程知识的感悟(图) 今天无意翻看自己的博客,发现自己竟是一年前的7月开始学习编程知识的。 感叹时光的飞逝,不知不觉又到了一个7月份。回想当初开通博客的时候,只想着可以记录自己的成长,收藏大神们写的好的博客,以便日后方便查看。记得去年7月份的某一篇博客是《用例图》,还是从他人的博客转载的。当时转载这篇博客的时候,我在写概要设计文档,概要设计文档需要用例图。而我恰好不懂用例图,但是文档一定要规范写好,不能是画图工具随意画一下就了事了。这不仅是对自己的不负责,也是对他人的不负责啊。中午,趁别人都去休息了。我独自守在电脑前,用百度去解决我的疑难。 搜索了很多的内容,没有几篇是让我满意的。想要画用例图,首先要知道用例图是什么。了解完用例图后,还要知道怎么去画用例图,如何下载工具和使用工具,画的过程中应该遵循哪些规范。在搜索的过程中,当看见《用例图》这篇文章时,我就被吸引了,文章很清晰明了的介绍,很容易就明白了用例图的作用。 于是,想着可以转载到自己的博客,当时不知还有版权问题,所以不知道要注明文章出处,导致如今连作者也不知是谁,想必其他看见我转载的这篇博文的人一定会有些遗憾,想看看原文作者吧。 画用例图的工具是starUML,第一次使用感觉无从下手,菜单栏都是英文字母,不知道点哪一个是好。还好有百度,轻松的搜来了教程。大卫科波菲尔读书笔记(http://www

2017-2018-2 学号20165329 实验二《Java面向对象程序设计》实验报告

耗尽温柔 提交于 2020-05-02 06:06:58
#2017-2018-2 学号20165329 实验二《Java面向对象程序设计》实验报告 ##一、实验内容及步骤 ###(一)单元测试 ####(1)三种代码 举例:我们要在一个MyUtil类中解决一个百分制成绩转成“优、良、中、及格、不及格”五级制成绩的功能。 测试结果: ####(2)TDD(Test Driven Devlopment, 测试驱动开发) TDD的一般步骤: 明确当前要完成的功能,记录成一个测试列表 快速完成编写针对此功能的测试用例 测试代码编译不通过 编写产品代码 测试通过 对代码进行重构,并保证测试通过 循环完成所有功能的开发 基于TDD,我们不会出现过度设计的情况,需求通过测试用例表达出来了,我们的产品代码只要让测试通过就可以了。 TDD的编码节奏: 增加测试代码,JUnit出现红条 修改产品代码 JUnit出现绿条,任务完成 测试结果: ###(二)面向对象三要素 抽象 抽象一词的本意是指人在认识思维活动中对事物表象因素的舍弃和对本质因素的抽取。抽象是人类认识复杂事物和现象时经常使用的思维工具,抽象思维能力在程序设计中非常重要,"去粗取精、化繁为简、由表及里、异中求同"的抽象能力很大程度上决定了程序员的程序设计能力。 抽象就是抽出事物的本质特征而暂时不考虑他们的细节。对于复杂系统问题人们借助分层次抽象的方法进行问题求解;在抽象的最高层

OO学习体会与阶段总结(测试与论证)

随声附和 提交于 2020-05-02 05:57:16
#前言   随着期末的到来,对于面向对象程序设计课程的学习也迎来了尾声。在最后一个月的从课程中,笔者对于面向对象程序规格实现层面的单元测试、正确性论证以及使用UML图描述程序的设计进行了深入的学习。通过对类和方法进行规格实现进行单元测试以及论证,检查并确认实现的正确性,使得相应代码拥有更高的可靠性。通过使用UML类图、时序图、状态图对系统的功能、结构、行为等层面进行描述,使面向对象程序具有更清晰的结构设计,提高程序的质量。本文通过对相关知识进行调研,就电梯调度系统这一案例绘制UML图并作分析。在本文的最后笔者还会对本学期所学的面向对象程序设计知识进行总结。 ##正确性论证与测试 单元测试:   在作业中,笔者就已经以电梯调度系统为案例进行了全覆盖的单元测试。运用 JUnit4 为每个类中的每个方法设计单元测试样例。通过覆盖方法中每行代码与每个分支,设置测试点,从而检测方法运行的正确性。这一环节能够对方法进行比较全面的检测,检查代码运行结果是否符合预期。笔者也在单元测试的过程中,发现了方法中选择分支设置上的问题。 正确性论证:   在最近的一次作业,笔者对于电梯调度系统每个类和方法进行了实现层面的正确性论证。从抽象对象实现的有效性、对象有效性、方法实现有效性三个方面对系统实现层面有效性进行了逻辑证明。在抽象对象层面,论证类的抽象对象对于数据管理的有效性;在对象有效性层面

UML 建模工具的安装与使用

◇◆丶佛笑我妖孽 提交于 2020-04-27 11:21:15
一、 实验目的 1) 学习使用 EA(Enterprise Architect) 开发环境创建模型的一般方法; 2) 理解 EA 界面布局和元素操作的一般技巧; 3) 熟悉 UML 中的各种图的建立和表示方法; 4) 掌握如何通过 EA 工具完成相关模型的建立 二、 实验内容 熟悉EA 环境 采用EA工具完成以下ATM示例系统的UML模型的建立。 通过 EA 工具完成相关 UML 图的绘制。在建立过程中尝试理解模型元素,模型元素之间的关系。 提示:EA打开 toolbox 的快捷键为 alt+5 三、实验结果 1.功能性需求 (1)卡处理 (2)取款 (3)用户登录 (4)用户界面 (5)余额查询 (6)功能性需求 2.用例模型 3.活动图 4.状态图 5.顺序图 四、思考题 通过网络查找相关资料,了解有哪些工具可以支持UML模型与C++或JAVA或PYTHON,代码的相互转换,并给出网络链接及说明。 visual paradigm可以支持C++和JAVA的实现  https://www.visual-paradigm.com/cn/features/code-engineering-tools/ ArgoUML 、 Java UML Generator、UMLet等  https://blog.csdn.net/yongxing510/article/details