20165326 java实验二
2017-2018-2 20165326实验二《Java面向对象程序设计》实验报告
课程:Java程序设计 班级:1653班 姓名:陈卓 学号:20165326
成绩:指导教师:娄嘉鹏 实验日期:2018年4月16日
实验时间:15:35 - 17:15
实验序号:二 实验名称:Java面向对象程序设计
实验内容:
1 初步掌握单元测试和TDD
2 理解并掌握面向对象三要素:封装、继承、多态
3 初步掌握UML建模
4 熟悉S.O.L.I.D原则
5 了解设计模式
实验要求:
1 没有Linux基础的同学建议先学习《Linux基础入门(新版)》《Vim编辑器》 课程;
2 完成实验、撰写实验报告,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用,程序的编辑,调试,运行等)、解决办法(空洞的方法如“查网络”、“问同学”、“看书”等一律得0分)以及分析(从中可以得到什么启示,有什么收获,教训等);
3 实验报告中统计自己的PSP(Personal Software Process)时间;
4 严禁抄袭。
实验内容
Example1
一开始打开老师给的用例时,我先看到了单元测试中对于Test类的创建,没有结合TDD进行下面的学习,导致我的Test类运行与用例不同,经过调整配置我的Junit3
和jar
包之后,运行成功
Example2
经过对示例的调试,基本上了解了产品代码和测试代码之间的关系。
TDD编写模式:
- 增加测试代码,JUnit出现红条
- 修改产品代码
- JUnit出现绿条,任务完成
Example3
体会OCP原则和DIP原则的应用。
任务:让系统支持Boolean类,并在MyDoc类中添加测试代码表明添加正确
Example4
任务:以TDD的方式开发一个复数类Complex
Example5
任务:使用StarUML对实验二中的代码进行建模
参照了实验说明和StarUML使用手册,截图如下:
感想与体会
JUnit和TDD确实给代码的查错带来了很大的便利,我觉得我还是有很多不熟练的地方,如果能娴熟地运用,一定能大大提高代码的效率和质量。
PSP
步骤 | 耗时 | 百分比 |
---|---|---|
学习并设计 | 2h | 50% |
代码实现 | 1h | 25% |
截图、上传、博客 | 1h | 25% |
参考资料
20165326 java实验二的更多相关文章
- 20175212童皓桢 Java实验二-面向对象程序设计实验报告
20175212童皓桢 Java实验二-面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设 ...
- Java实验二实验报告:java面向对象程序设计
java实验二实验报告 实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计模式 实验 ...
- Java实验二20135104
课程:Java程序设计 班级: 1351 姓名:刘帅 学号:20135104 成绩: 指导教师:娄嘉鹏 实验日期:2 ...
- java实验二——输出一个指定整数的所有质因数
import java.util.Scanner; public class 实验二 { /** * @param args */ public static void main(String[] a ...
- 20145106 java实验二
1)复数类ComplexNumber的属性 m_dRealPart: 实部,代表复数的实数部分 m_dImaginPart: 虚部,代表复数的虚数部分 public class ComplexNumb ...
- 20145324 Java实验二
实验1: 先建立.java 在建立test 测试正常情况 测试出错情况 错误 修改后的代码 正确 测试边界情况 100时出错 修改后的代码 测试 实验2: 先建test在写,java 实验3:建模 练 ...
- 20165326 java实验四
20165326实验四-Android程序设计 一:Android Stuidio的安装测试 1.安装Android Stuidio 具体跟着教程走就行主要是配置的时候要选择下载SDK或手动配置,详细 ...
- 20165326 java实验一
<Java程序设计>Java开发环境的熟悉 实验报告 课程:Java程序设计 班级:1653班 姓名:陈卓 学号:20165326 指导教师:娄嘉鹏 实验日期:2018年4月2日 实验时间 ...
- Java实验二
北京电子科技学院(BESTI) 实 验 报 告 课程:Java程序设计 班级:1351 姓名:黄君如 学号:20135117 成绩: 指导教师:娄 ...
随机推荐
- Spring Batch 背景
在开源项目及其相关社区把大部分注意力集中在基于 web 和 SOA 基于消息机制的框架中时,基于 Java 的批处理框架却无人问津,尽管在企业 T 环境中一直都有这种批处理的需求.但因为缺乏一个标准的 ...
- Vue音乐项目笔记(三)
1. 音乐播放前进后退的实现 https://blog.csdn.net/weixin_40814356/article/details/80379606 2. 音乐进度条实现(单独一个组件) h ...
- mysql知识点总结
一.mysql_connect(),在php7已移除,有mysqli_connect(),pdo,代替. <?php header("Content-type:text/html;ch ...
- 3.numpy_array数组
官方文档:www.numpy.org.cn Numpy 数组及其索引 先导入numpy: from numpy import * 产生数组 从列表产生数组: lst = [0, 1, 2, 3] a ...
- gitlab 集成Jenkins
项目:使用git+jenkins实现持续集成 开始构建 General 源码管理 我们安装的是Git插件,还可以安装svn插件 我们将git路径存在这里还需要权限认证,否则会出现error 我 ...
- Django中CBV及其源码解释
FBV(function base views) 就是在视图里使用函数处理请求. CBV(class base views) 就是在视图里使用类处理请求. Python是一个面向对象的编程语言,如果只 ...
- 【Oracle】【1】查询N分钟之前的数据
--查询距离现在N分钟前的数据 1440:表示一天有1440分钟 SYSDATE - 10 :表示10天前 参考博客: 1,oracle 查询十分钟之前的数据 - 胡金水的博客 - CSDN博客 ht ...
- [java]转:String Date Calendar之间的转换
String Date Calendar之间的转换 String Date Calendar 1.Calendar 转化 String Calendar calendat = Calendar.ge ...
- WDA基础八:ROWREPEATER的使用
这玩意不知道什么时候用^_^ 组件:Row-Repeater 1.新建WDA程序并激活 ZLYWDA02 2.进入VIEW,创建CONTEXT: 表:0..n 选择行:单选 初始化选择行 3.创建循 ...
- 基于spring的PropertySource类实现配置的动态替换
public class ConfigPropertySource extends PropertySource<Properties> implements PriorityOrdere ...