OO第四单元 一.总结本单元两次作业的架构设计 第一次作业 架构 第一次作业只有类图,所以全部的UmlElement都可以放在MyUmlInteraction中进行存储.计算和查找.对于类图来说,可以抽象出以下的层次: 最底层的两个元素是类UmlClass和接口UmlInterface 在这两个元素的基础之上,可以存储它们的属性UmlAttribute.操作UmlOperation.关联关系UmlAssociation.继承关系UmlGenralization.接口实现关系UmlInterfac…
第四单元两次作业总结 第十三次作业 需求分析 本次作业需要完成一个UML类图解析器,所需要解析的只有符合UML标准和能够在Java 8中复现的UML类图.查询指令存在两种:仅与所查对象有关的指令,以及需要回溯至顶级父类逐层查询的指令. 实现方案 本次作业需要我们对类图中的组成元素进行重新建模,建模时需要考虑类中的属性.类的继承关系.接口的继承关系以及类/接口之间的关联.为了达成以上目标,我选择将类和接口分别重新抽象为ClassInfo和InterfaceInfo类以记录其属性:对于类和接口之间存…
OO第四单元--基于UML的UML解析器总结&OO课程总结 前言:一学期愉快(痛苦)的OO课程学习结束了,OO几个单元作业都各有特色,实验也各有特色,仔细回味起来,不再是单纯的敲代码(但自己还是有几次没用成功提交实验),也不乏有许多有趣的知识.整个作业中测--强测--互测--BUG修复的模式也将整个课程变得充实完善了起来,总的来说,收获很多,遗憾也很多.同时也感谢那些不厌其烦帮助我构思帮我debug的py们. Part1:OO第四单元--基于UML的UML解析器总结 架构分析 本单元主要理解UM…
本单元构架设计 统一建模语言(英语:Unified Modeling Language,缩写 UML)是非专利的第三代建模和规约语言.UML是一种开放的方法,用于说明.可视化.构建和编写一个正在开发的.面向对象的.软件密集系统的制品的开放方法.UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效. 本单元作业的主要内容是对UML类图.状态图和时序图进行解析和查询,并依照某些规则对UML类图进行检查.其中,课程组已经做好了将原始UML导出…
title: 2020 OO 第四单元总结 date: 2020-06-14 19:10:06 tags: OO categories: 学习 1. 本单元三次作业的架构设计 本单元的代码编写与第三单元有相似之处,课程组已经提供了相应的接口,我们只需要满足具体的实现.在架构设计上我选择了建立MyUmlClass等类,采用适配器模式以管理UML对象,并配置相应的方法的方式,更加符合面向对象的设计思维. 1.1 第一次作业 在第一次作业其实还没有考虑好迭代开发,在UML对象的存储方式上比较混乱,有的…
前言 统一建模语言(英语:Unified Modeling Language,缩写 UML),是软件架构设计建模和规约的语言. 在UML系统开发中有三个主要的模型: 功能模型:从用户的角度展示系统的功能,包括用例图. 对象模型:采用对象,属性,操作,关联等概念展示系统的结构和基础,包括类别图.对象图. 动态模型:展现系统的内部行为.包括序列图,活动图,状态图. 本单元主要学习了以下关于UML的知识: 类图相关:类.属性及操作的表示,继承和实现.联系等关系的表示: 状态图相关:状态转移和状态的表示…
2019面向对象程序设计第四单元总结 前言 ​ 本单元是面向对象程序设计课程的最后一个单元了,本单元是和UML模型相关,也就是说,我们需要正确理解UML模型的基础上,对构建出的UML模型进行解析,但是我们实际上要理解的是UML建模的理念,即 类模型定义系统的解决方案:使用"这些类"来实现相应的需求 状态模型定义类的行为机制:"这个类"将按照这样的行为逻辑运行 交互模型定义类之间的协作机制:"这些类"在一起完成"这个业务" 在此…
一.本单元两次作业的架构设计总结 作业一.UML类图查询 1. 统计信息图 2. 复杂度分析 基本复杂度(Essential Complexity (ev(G)).模块设计复杂度(Module Design Complexity (iv(G))).Cyclomatic Complexity (v(G))圈复杂度 OCavg为平均循环复杂度;WMC为总循环复杂度 3. 结构信息图 4. 分析架构设计 本次没有架构设计,本次只用了两个类,一个main类,用于启动,一个MyUmlInteraction…
OO第四单元(UML)单元总结 这是OO课程的第四个单元,也是最后一个单元.这个单元只有两次作业,相比前三个单元少一次作业.而且从内容上讲这个单元的作业目的以了解UML为主,所以相对前三个单元比较简单. 一.作业分析 1.第一次作业 第一次作业的目的是实现一个UML类图解析器,这个解析器需要接受由UML图生成的类图信息并根据要求返回相应的结果,是以了解UML类图为目的的作业. 由于UML解析器的输入是按照starUML中存储类图信息的方法来存储的,所以这次作业的目的其实是了解类图的存储方法,即s…
一.架构设计 1.UML第一次作业——类图 第一次作业基于不同element在UML规格中的从属关系来设计架构.继承了UmlInteraction接口的MyUmlInteraction类是主要的交互层.在其构造函数中对加入进来的每一个element进行分析,判断它的ElementType并根据parentId以及其他解析出的性质决定它的存储位置. 对于不同的ElementType,我将其分为三类: 第一类是有所述其他元素的,代表java中具体的类的element,如UmlClass,UmlOpe…