2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告

2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告

实验报告表头:

2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告

知识点:

1、XP团队使用现场客户、特殊计划方法和持续测试来提供快速的反馈和全面的交流:

  • XP是以开发符合客户需要的软件为目标而产生的一种方法论
  • XP是一种以实践为基础的软件工程过程和思想
  • XP认为代码质量的重要程度超出人们一般所认为的程度
  • XP特别适合于小型的有责任心的、自觉自励的团队开发需求不确定或者迅速变化的软件。

2、我们要修改软件,万变不离其宗,无非就是四种动机:

  • 增加新功能;
  • 原有功能有BUG;
  • 改善原有程序的结构;
  • 优化原有系统的性能 。

3、一个完整的重构流程包括:

  • 从版本控制系统代码库中Check out code
  • 读懂代码(包括测试代码)
  • 发现bad smell
  • Refactoring
  • 运行所有的Unit Tests
  • 往代码库中Check in code

4、Eclipse中Refactor菜单中的重构手法的应用时机如下图所示:
2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告


No.1

实验要求:

  • 参考http://www.cnblogs.com/rocedu/p/4795776.html, Eclipse的内容替换成IDEA

  • 参考 http://www.cnblogs.com/rocedu/p/6371315.html#SECCODESTANDARD 安装alibaba 插件,解决代码中的规范问题。

  • 在IDEA中使用工具(Code->Reformate Code)把下面代码重新格式化,再研究一下Code菜单,找出一项让自己感觉最好用的功能。提交截图,加上自己学号水印。

public class CodeStandard {
public static void main(String [] args){
StringBuffer buffer = new StringBuffer();
buffer.append('S');
buffer.append("tringBuffer");
System.out.println(buffer.charAt(1));
System.out.println(buffer.capacity());
System.out.println(buffer.indexOf("tring"));
System.out.println("buffer = " + buffer.toString());
if(buffer.capacity()<20)
buffer.append("1234567");
for(int i=0; i<buffer.length();i++)
System.out.println(buffer.charAt(i));
}
}

实验截图

2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告

代码链接:

  • CodeStandard.java;

No.2

实验要求:

  • 在码云上把自己的学习搭档加入自己的项目中,确认搭档的项目加入自己后,下载搭档实验二的Complex代码,加入不少于三个JUnit单元测试用例,测试成功后git add .; git commit -m "自己学号 添加内容";git push;

  • 提交搭档项目git log的截图,包含上面git commit的信息,并加上自己的学号水印信息。

实验截图

2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告

代码链接:

  • Complex.java;

  • ComplexTest.java


No.3

实验要求:

  • http://www.cnblogs.com/rocedu/p/4795776.html, Eclipse的内容替换成IDEA

  • 完成重构内容的练习,下载搭档的代码,至少进行三项重构,提交重构后代码的截图,加上自己的学号水印。提交搭档的码云项目链接。

实验截图

2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告

No.4

实验要求:

  • 参考 http://www.cnblogs.com/rocedu/p/6683948.html,以结对的方式完成Java密码学相关内容的学习,结合重构,git,代码标准。

  • 提交学习成果码云链接和代表性成果截图,要有学号水印。

实验截图

2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告

代码链接:

  • Exp3;

过程中遇到的问题

2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告
解决办法:

Run->Edit Configurations
2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告
将Working Directory中删除或者选中下拉箭头选择其他可执行词。
2017-2018-2 20165237 实验三《 敏捷开发与XP实践》实验报告


实验总结

这次实验中,学到了IDEA中重构的用法,我认为将代码更好的完成是一个比较有成就感的任务。如何有效、美观、易懂也是对自己代码的负责。在以后的程序设计中,要尽量保持这种对代码负责的状态,提高对代码的认知度。


PSP(Personal Software Process)时间

步骤耗时百分比
需求分析30min20%
设计30min20%
代码实现50min33.3%
测试20min13.3%
分析总结20min13.3%

相关推荐