博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
20172303 2017-2018-2 《程序设计与数据结构》实验二报告
阅读量:6163 次
发布时间:2019-06-21

本文共 1723 字,大约阅读时间需要 5 分钟。

20172303 2017-2018-2 《程序设计与数据结构》实验二报告

  • 课程:《程序设计与数据结构》
  • 班级: 1723
  • 姓名: 范雯琪
  • 学号:20172303
  • 实验教师:王志强
  • 助教:张旭升/刘伟康
  • 实验日期:2018年4月17日
  • 必修/选修: 必修

1.实验内容

  1. 初步掌握单元测试和TDD
  2. 理解并掌握面向对象三要素:封装、继承、多态
  3. 初步掌握UML建模
  4. 熟悉S.O.L.I.D原则
  5. 了解设计模式
  6. 完成蓝墨云上 (1)-(5)实验。

2.实验过程及结果

过程:

  • 本次实验老师一共设置了5个提交节点分别是:
节点一
  • 参考完成单元测试的学习
  • 提交最后三个JUnit测试用例(正常情况,错误情况,边界情况)都通过的截图,截图上要有画图加水印,输入自己的学号
  • 本提交点考查JUnit会不会使用,测试用例至少要包含正常情况,错误情况,边界情况的测试
节点二
  • 参考
    以 TDD的方式研究学习StringBuffer
  • 提交你的单元测试用例和测试通过的截图,截图要加上学号水印
  • 测试自己会不会写JUnit测试用例
节点三
  • 参考
    对设计模式示例进行扩充,体会OCP原则和DIP原则的应用,初步理解设计模式
  • 用自己的学号%6进行取余运算,根据结果进行代码扩充:
    • 0:让系统支持Byte类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印
    • 1:让系统支持Short类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印
    • 2:让系统支持Boolean类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印
    • 3:让系统支持Long类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印
    • 4:让系统支持Float类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印
    • 5:让系统支持Double类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印
节点四
  • 提交:单元测试代码和运行成功截图及码云上代码链接,截图要加上学号水印
  • 任务:以TDD的方式开发一个复数类Complex,要求如下:
// 定义属性并生成getter,setterdouble RealPart;double ImagePart;// 定义构造函数public Complex()public Complex(double R,double I)//Override Objectpublic boolean equals(Object obj)public String toString()// 定义公有方法:加减乘除Complex ComplexAdd(Complex a)Complex ComplexSub(Complex a)Complex ComplexMulti(Complex a)Complex ComplexDiv(Complex a)
节点五
  • 使用StarUML对实验二中的代码进行建模,发类图的截图,加上学号水印
  • 类图中至少两个类
  • 类,继承,接口实现,组合在UML中表达

结果:

节点一

1332969-20180424220605538-2049552553.png

节点二

1332969-20180424220646079-937821853.png

1332969-20180424220656987-139206845.png
1332969-20180424220706977-1621729467.png

节点三

1332969-20180424220723618-1081027050.png

1332969-20180424220733007-17153167.png
1332969-20180424220741275-285693469.png

节点四

1332969-20180424220803431-1382246554.png

节点五

1332969-20180424220916675-669157633.png

3.实验过程中遇到的问题和解决过程

  • 问题1:做实验二时,所写的容量显示错误
    1332969-20180424220940206-1909983335.png
    1332969-20180424220930938-633236375.png
  • 问题1解决方案:通过测试显示结果修改了容量,但不清楚为什么要这么改。询问张旭升学长后知道了是根据输入的字符数量规定好的。
  • 问题2:UML类图的使用
  • 问题2解决方案:当时做的时候特别匆忙做的特别特别烂...我都不好意思拿节点五的分了。后来又重新写了一遍:为了巩固依照PP9.3的程序写了它的UML类图。
    旧图:
    1332969-20180424221007461-277752883.png
    新图:
    1332969-20180424221018620-1776980934.png
    PP9.3:
    1332969-20180424221033040-300993358.png

其他(感悟、思考等)

感悟

本周的实验其实很简单,只要照着博客一步一步踏实地做下去就好,但做完发现自己学会了很多东西。首先使用JUnit真的能节省很多时间,然后学会使用UML类图让自己对每个程度的整体结构有了一个非常明晰的认识。

参考资料

转载于:https://www.cnblogs.com/PFrame/p/8934116.html

你可能感兴趣的文章
《CLR via C#》读书笔记 之 方法
查看>>
设计模式:组合模式(Composite Pattern)
查看>>
ContentValues 和HashTable区别
查看>>
LogicalDOC 6.6.2 发布,文档管理系统
查看>>
给PowerShell脚本传递参数
查看>>
实战2——Hadoop的日志分析
查看>>
利用FIFO进行文件拷贝一例
查看>>
Ecshop安装过程中的的问题:cls_image::gd_version()和不支持JPEG
查看>>
resmgr:cpu quantum等待事件
查看>>
一个屌丝程序猿的人生(六十六)
查看>>
Java 编码 UTF-8
查看>>
SpringMVC实战(注解)
查看>>
关于静态属性和静态函数
查看>>
进程的基本属性:进程ID、父进程ID、进程组ID、会话和控制终端
查看>>
spring+jotm+ibatis+mysql实现JTA分布式事务
查看>>
MyBatis启动:MapperStatement创建
查看>>
调查问卷相关
查看>>
eclipse启动无响应,老是加载不了revert resources,或停留在Loading workbench状态
查看>>
1. Git-2.12.0-64-bit .exe下载
查看>>
怎样关闭“粘滞键”?
查看>>