20175328 2018-2019-2 实验三 敏捷开发与XP实践 实验报告
一、实验要求
1.没有Linux基础的同学建议先学习《Linux基础入门(新版)》《Vim编辑器》 课程
2.完成实验、撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用,程序的编辑,调试,运行等)、解决办法(空洞的方法如“查网络”、“问同学”、“看书”等一律得0分)以及分析(从中可以得到什么启示,有什么收获,教训等)。报告可以参考范飞龙老师的指导
3. 严禁抄袭,有该行为者实验成绩归零,并附加其他惩罚措施。
二、实验内容
(一)敏捷开发与XP实践-1
初始代码:
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));
}
}
编码规约扫描结果:
代码标准中很重要的一项是如何给包、类、变量、方法等标识符命名,Java中的一般的命名规则有:
- 要体现各自的含义
- 包、类、变量用名词
- 方法名用动宾
- 包名全部小写,如:io,awt
- 类名第一个字母要大写,如:HelloWorldApp
- 变量名第一个字母要小写,如:userName
- 方法名第一个字母要小写:setName
规范后代码:
/**
* CodeStandard
* @author 20175328lxy
* @date 2019/4/29
*/
public class CodeStandard {
public CodeStandard() {
super();
}
public static void main(String[] args) {
StringBuffer buffer = new StringBuffer();
int a = 20;
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() < a) {
buffer.append("1234567");
}
for (int i = 0; i < buffer.length(); i++) {
System.out.println(buffer.charAt(i));
}
}
}
Code菜单具备的一些功能:
Override Methods
/Ctrl + O
( 重写覆盖方法 )Implements Methods
/Ctrl + I
( 实现接口方法 )Comment with Line Comment
/Ctrl + /
( 行注释 )Comment with Block Comment
/Ctrl + Shift + /
( 块注释 )Reformat Code
/Ctrl + Alt + L
( 格式化代码 )
(二)敏捷开发与XP实践-2
在码云上把自己的学习搭档加入自己的项目中,确认搭档的项目加入自己后,下载搭档实验二的Complex代码,加入不少于三个JUnit单元测试用例
仓库添加成员:
测试用例:
(三)敏捷开发与XP实践-3
完成重构练习
重构前:
重构后:
(四)敏捷开发与XP实践-4
Java与密码学——体验加解密---凯撒密码