标签:
实 验 报 告
课程:移动平台应用开发实践 班级:201592 姓名:王鹤 学号:20159202
成绩: 指导教师:娄嘉鹏 实验日期:2015.10.3
实验密级: 预习程度: 实验时间:
仪器组次: 必修/选修:选修 实验序号:1
实验名称: Java开发环境的熟悉
实验目的与要求:
1. 初步掌握单元测试和TDD
2. 理解并掌握面向对象三要素:封装、继承、多态
3. 初步掌握UML建模
4. 熟悉S.O.L.I.D原则
5. 了解设计模式
实验设备:具有java开发环境的计算机
实验内容、步骤
(一)单元测试
用程序解决问题时,要会写三种码:伪代码、产品代码、测试代码
以实现一个百分制成绩转成“优、良、中、及格、不及格”五级制成绩的功能为例:
1.伪代码
若成绩小于60,转成“不及格”
若成绩在60与70之间,转成“及格”
若成绩在70与80之间,转成“中等”
若成绩在80与90之间,转成“良好”
若成绩在90与100之间,转成“优秀”
其他,转成“错误”
2.测试代码
3.产品代码
编译测试代码没有语法错误了,运行JUnit.Test,如下图:
测试结果出现了一个红条,说明测试没通过,修改MyUtil.Java后再运行测试,如下图所示:
测试成功!
加入边界值测试
发现测试未通过,再修改MyUtil.Java,加入对分数小于0和等于100的判断,运行程序,出现绿条说明测试成功,如下图所示:
Java中用类进行封装,建一个Dog类,Dog
类通过使用类和访问控制(private,public)隐藏了属性color
,开放了接口setColor()
,getColor()
,bark()
和toString
。Dog
类是一个模块,测试代码与运行结果如下:
OOD中建模会用图形化的建模语言UML(Unified Modeling Language),下面用UML中的类图来继承,UML类图能展示类之间的静态关系,在这个实例中AnimalTest
类依赖Dog
类和Cat
类,如图所示:
上面的UML图把Dog
类中的bark()
和Cat
类中的meow()
抽象成一个抽象方法shout()
,Dog
类和Cat
类中覆盖这个方法,对应的测试代码和运行结果如下图所示:
(1)S.O.L.I.D原则
面向对象三要素是“封装、继承、多态”,任何面向对象编程语言都会在语法上支持这三要素。如何借助抽象思维用好三要素特别是多态还是非常困难的,S.O.L.I.D类设计原则是一个很好的指导:
(2)模式与设计模式
模式是某外在环境(Context) 下﹐对特定问题(Problem)的惯用解决之道。
在面向对象中设计模式的地位可以和面向过程编程中的数据结构的地位相当。
(四)练习
1.使用TDD的方式设计关实现复数类Complex。
一、伪代码:
首先设计一个复数类Complex,定义三个构造方法:
二、测试代码:
三、产品代码
运行结果如下:
实验PSP时间
步骤 |
耗时 |
百分比 |
需求分析 |
5min |
5.6% |
设计 |
20min |
22.2% |
代码实现 |
30min |
33.4% |
测试 |
5min |
5.6% |
分析总结 |
30min |
33.4% |
实验总结与收获
1.知道了TDD的一般步骤:明确当前要完成的功能,记录成一个测试列表,快速完成编写针对此功能的测试用例,测试代码编译不通过(没产品代码呢),编写产品代码,测试通过,对代码进行重构,并保证测试通过。
2.写程序先写出三种代码:伪代码、产品代码、测试代码,这样的程序才有实际意义。
遇到的问题及解决
Complex伪代码时不知道应该如何分类。查询复数类的构造方法,得知可以定义三类,对复数的加减乘除方法有些遗忘,后查询相关资料得知。
标签:
原文地址:http://www.cnblogs.com/20159202wh/p/4870579.html