20155234 实验二 Java面向对象程序设计

时间:2023-03-08 22:49:22

实验二 Java面向对象程序设计

实验内容

  • 初步掌握单元测试和TDD
  • 理解并掌握面向对象三要素:封装、继承、多态
  • 初步掌握UML建模
  • 熟悉S.O.L.I.D原则
  • 了解设计模式

实验步骤

(一)单元测试

  • 伪代码

    与具体编程语言无关,不要写与具体编程语言语法相关的语句,伪代码从意图层面来解决问题,最终,伪代码是产品代码最自然的、最好的注
如果成绩小于60,转成“不及格”
如果成绩在60与70之间,转成“及格”
如果成绩在70与80之间,转成“中等”
如果成绩在80与90之间,转成“良好”
如果成绩在90与100之间,转成“优秀”
其他,转成“错误”
  • 产品代码
public class MyUtil{
public static String percentage2fivegrade(int grade){
//如果成绩小于60,转成“不及格”
if (grade < 60)
return "不及格";
//如果成绩在60与70之间,转成“及格”
else if (grade < 70)
return "及格";
//如果成绩在70与80之间,转成“中等”
else if (grade < 80)
return "中等";
//如果成绩在80与90之间,转成“良好”
else if (grade < 90)
return "良好";
//如果成绩在90与100之间,转成“优秀”
else if (grade < 100)
return "优秀";
//其他,转成“错误”
else
return "错误";
}
}

junit测试用例集合

20155234 实验二 Java面向对象程序设计

TDD的使用

TDD的一般步骤:

  • 明确当前要完成的功能,记录成一个测试列表
  • 快速完成编写针对此功能的测试用例
  • 测试代码编译不通过(没产品代码呢)
  • 编写产品代码
  • 测试通过
  • 对代码进行重构,并保证测试通过(重构下次实验练习)
  • 循环完成所有功能的开发

StringBuffer几个测试用例的检测

20155234 实验二 Java面向对象程序设计

对设计模式示例进行扩充,体会OCP原则和DIP原则的应用,初步理解设计模式

S.O.L.I.D原则

面向对象三要素是“封装、继承、多态”,任何面向对象编程语言都会在语法上支持这三要素。如何借助抽象思维用好三要素特别是多态还是非常困难的,S.O.L.I.D类设计原则是一个很好的指导:

SRP(Single Responsibility Principle,单一职责原则)

OCP(Open-Closed Principle,开放-封闭原则)

LSP(Liskov Substitusion Principle,Liskov替换原则)

ISP(Interface Segregation Principle,接口分离原则)

DIP(Dependency Inversion Principle,依赖倒置原则)

让系统支持Float类,并在MyDoc类中添加测试代码表明添加正确

20155234 实验二 Java面向对象程序设计

以TDD的方式开发一个复数类Complex

20155234 实验二 Java面向对象程序设计

使用StarUML对实验二中的代码进行建模

20155234 实验二 Java面向对象程序设计

实验体会

通过本次实验,我了解了三种代码的区别,并且在Idea中运用了Juint对测试代码进行了很好的运用,体会了OCP原则和DIP原则;用TDD实现了Complex,最后运用StarUML对面向对象三要素有了更深的理解。

实验分析

步骤 耗时 百分比
需求 20 12.1%
设计 30 18.1%
代码实现 75 45.5%
测试 25 15.1%
分析总结 15 9%