2017-2018-2 20165202 实验三《敏捷开发与XP实践》实验报告
一、实验报告封面
二、实验内容
- XP基础
- XP核心实践
- 相关工具
三、实验步骤
(一)格式化代码
实验要求:
在IDEA中使用工具(Code->Reformate Code)把下面代码重新格式化,再研究一下Code菜单,找出一项让自己感觉最好用的功能。
步骤:
1.打开 Settings
->Plugins
-> Browse repositories...
在搜索框输入alibaba
即可看到Alibaba Java Code Guidelines
插件,点击Install
进行安装
然后重启IDE生效:
2.输入原始代码
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));
}
}
3.右键点击类名,再点击编码规约扫描
4.发现问题
5.点击Code
下的Reformate Code
格式化代码:
6.我觉得最好用的功能是Reformate Code
,它可以快速规范代码格式,方便观察及编写。
(二)搭档代码修改
步骤:
- 在码云上把自己的学习搭档加入自己的项目中,确认搭档的项目加入自己
2.下载搭档实验二的Complex代码,加入不少于三个JUnit单元测试用
3.测试成功后git add .; git commit -m "自己学号 添加内容";git push;
4.提交搭档项目git log的截图,包含上面git commit的信息,并加上自己的学号水印信息。
(三)完成重构内容的练习
步骤:
1.下载搭档的代码
2.至少进行三项重构,提交重构后代码的截图,加上自己的学号水印。
经过检查发现如下三处问题:
- 注释格式不规范
- String名不符合要求 改为name、district
- if语句冗杂,本可放在同一if下
3.提交搭档的码云项目链接
(四)结对完成Java密码学相关内容的学习
1.学习娄老师的博客Java 密码学算法
2.运行娄老师的DES算法程序,截图如下
3.运行娄老师的RSA算法程序,截图如下
4.代码链接
5.PSP时间:
步骤 | 耗时 | 百分比 |
---|---|---|
需求分析 | 5min | 7% |
设计 | 15min | 21% |
代码实现 | 30min | 42% |
测试 | 10min | 15% |
分析总结 | 7min | 11% |
四、遇到的问题及解决
- 安装alibaba插件后无法使用
- 解决方法:未仔细阅读教程,安装插件后重启才可以使用
五、实验体会
本次实验主要涉及代码格式化、代码重构等内容,更重要的是在检查点4中涉及了密码学相关内容,可以说和我们的专业知识是紧密相关的。通过Java实现密码学算法充分体现了Java的实用性,在进行理论知识学习后,实际的应用是十分必要的,可以说实验给了我们这个机会。在密码学内容学习过程中我和搭档分别负责RSA和DES算法,最后进行了汇总。希望在之后的学习中能够更好的合作,学到更多知识。