20169219 实验三 敏捷开发与XP实践 报告
实验内容
1、求命令行传入整数参数的和。
package exp3;
public class TestArgs01 {
public static void main(String[] args) {
int sum = 0;
for(int i = 0; i < args.length; ++i) {
sum += Integer.parseInt(args[i]);
}
System.out.println(sum);
}
}
这个输入变量可以在run > Edit Configurations下面的Program arguments

运行结果如下

2、参考Integer类中的方法把字符串转为整数
补充代码以递归的方式求命令行参数的args中整数数据的和
package exp3;
import java.util.Arrays;
public class TestArgs02 {
public static void main(String[] args) {
boolean sum = false;
int[] a = new int[9];
for(int i = 0; i < args.length; ++i) {
a[i] = Integer.parseInt(args[i]);
}
int var4 = clSum(a);
System.out.println(var4);
}
public static int clSum(int[] arr) {
int j = arr.length;
if(j == 1) {
return arr[0];
} else {
int[] b = Arrays.copyOf(arr, arr.length - 1);
return clSum(b) + arr[j - 1];
}
}
}

3、格式化代码
之前格式化代码在IDEA下的快捷键是ctrl+alt+L.
Eclipse下的格式化代码快捷键是Ctrl+Shift+F,但是会出现一个问题:在win10上会出现字体的简繁转换,再重复按键一次就可以转换回来。
4、下载搭档的Complex代码,加入不少于三个JUnit单元测试用例,测试成功后git add .; git commit -m "自己学号 添加内容";git push;
上周自己做的时候已经测试过Complex代码了,这次看了搭档的代码和自己的代码有点差别,改了部分的函数和数据,测试通过。
5、重构
重构的代码更加易于阅读、易于维护和易于变更。
Refactor->Encapsulate Field...可以实现代码的封装
在IDEA中像是getId、 setId、 getAge、 setAge 这样的get和set方法可以通过提示直接生成相应的方法,实现快速、标准化编写代码,节省时间。
6、版本控制
这个真的真的很重要。
今天提交代码之后,我回退了一个版本,使用的方法是:
1 使用Git log命令查看所有的历史版本,获取某个历史版本的id,假设查到历史版本的id是139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96。
2
git reset --hard 139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96
3 把修改推到远程服务器
git push -f -u origin master
结果是成功了。。。。。
结果发现自己下午编写的新代码,本地文件夹的文件也被删除了。真的是好气啊!
可是还是不知道怎么回退回来,撤销版本回退。
自己又不得不重新写了代码。
遇到的问题
1、版本回退之后,想要撤销这次版本回退,不知道怎么撤销这样的结果。
2、忘记创建测试代码的过程,在这记录下。
- 右键单击项目,在弹出的菜单中选择
New->Directory新建一个目录:- 在命令行中我们知道要设置
SOURCEPATH环境变量,在IDEA中我们右键单击test目录,在弹出的菜单中选择Mark Directory as->Test Sources Root
PSP(Personal Software Process)时间
| 步骤 | 耗时 | 百分比 |
|---|---|---|
| 需求分析 | 20 | 12.5% |
| 设计 | 30 | 18.75% |
| 代码实现 | 60 | 37.5% |
| 测试 | 20 | 12.5% |
| 分析总结 | 30 | 18.75% |
参考资料
实验三 敏捷开发与XP实践
git回退到某个历史版本
20169219 实验三 敏捷开发与XP实践 报告的更多相关文章
- 20172328《程序设计与数据结构》实验三 敏捷开发与XP实践报告
20172328<程序设计与数据结构>实验三 敏捷开发与XP实践报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 李馨雨 学号:20172328 实验教师:王志强 ...
- 20169201 实验三 敏捷开发与XP实践报告
敏捷开发与XP介绍 敏捷开发(Agile Development)是一种以人为核心.迭代.循序渐进的开发方法."敏捷流程"是一系列价值观和方法论的集合.从2001年开始,一些软件界 ...
- 20172302《程序设计与数据结构》实验三 敏捷开发与XP实践报告
课程:<程序设计与数据结构> 班级: 1723 姓名: 侯泽洋 学号:20172302 实验教师:王志强老师 实验日期:2018年5月16日 必修/选修: 必修 1.实验内容 (1)代码规 ...
- 20145213《Java程序设计》实验三敏捷开发与XP实践
20145213<Java程序设计>实验三敏捷开发与XP实践 实验要求 1.XP基础 2.XP核心实践 3.相关工具 实验内容 1.敏捷开发与XP 软件工程是把系统的.有序的.可量化的方法 ...
- 20145308刘昊阳 《Java程序设计》实验三 敏捷开发与XP实践 实验报告
20145308刘昊阳 <Java程序设计>实验三 敏捷开发与XP实践 实验报告 实验名称 敏捷开发与XP实践 实验内容 XP基础 XP核心实践 相关工具 统计的PSP(Personal ...
- JAVA课程实验报告 实验三 敏捷开发与XP实践
北京电子科技学院(BESTI) 实 验 报 告 课程:Java程序设计 班级:1353 姓名:韩玉琪 学号:20135317 成绩: 指导教师:娄嘉 ...
- 20145225《Java程序设计》 实验三 "敏捷开发与XP实践"
20145225<Java程序设计> 实验三 "敏捷开发与XP实践" 实验报告 实验内容 使用 git 上传代码 使用 git 相互更改代码 实现代码的重载 git 上 ...
- 20145215实验三 敏捷开发与XP实践
20145215实验三 敏捷开发与XP实践 实验内容 XP基础 XP核心实践 相关工具 实验步骤 (一)敏捷开发与XP 软件工程是把系统的.有序的.可量化的方法应用到软件的开发.运营和维护上的过程.软 ...
- 20145325张梓靖 实验三 "敏捷开发与XP实践"
20145325张梓靖 实验三 "敏捷开发与XP实践" 程序设计过程 实验内容 使用 git 上传代码 git上传中遇到的问题 使用 git 相互更改代码 实现代码的重构 git ...
随机推荐
- Linux I2C设备驱动
i2c设备:ts.camera.audio.gsensor.e2prom I2C基本协议: 写:开始 -> 设备地址 -> 写标志 -> 应答 -> 内部地址 -> 应答 ...
- mysql + keepalived架构
mysql + keepalived架构 文档(这个文章共有三篇): http://blog.itpub.net/27000195/viewspace-1364706/
- 读取zip文件,不解压缩直接解析,支持文件名中文,解决内容乱码
使用ant.jar进行文件zip压缩 import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import j ...
- appstore 上传需要的icon
<key>CFBundleIconFiles</key><array> <string>icon@2x.png</string> <s ...
- 安装appium需要注意的事项
参考 虫师 的博客园 :http://www.cnblogs.com/fnng/p/4560298.html 1.其中第二篇中,打开命令行用的不是windows中的cmd打开的界面,而是用node. ...
- python开发面向对象基础:封装
一,封装 [封装] 隐藏对象的属性和实现细节,仅对外提供公共访问方式. [好处] 1. 将变化隔离: 2. 便于使用: 3. 提高复用性: 4. 提高安全性: [封装原则] 1. 将不需要对外提供的内 ...
- python学习(七) 更加抽象
python是面向对象的语言. 7.1 对象的魔力 7.1.1 多态 不管是字符串还是列表,count()函数都可以正常工作. >>> ['ab','b','c'].count('c ...
- MyEclipse10.6/Eclipse4.2 集成 flash builder 4.6
MyEclipse10.6/Eclipse4.2 集成 flash builder 4.61. 安装 Myeclipse10.6 或 Eclipse 4.2 以及 Flash builder 4.6 ...
- 学习 altera官网 之 timequest
1.如果启动沿(launch)和锁存沿(latch)是同一时钟域则,latch比launch晚一个时钟周期. 2.数据到达时间 3.时钟到达时间.如果启动沿(launch edge)和锁存沿(latc ...
- 取当前时间,格式为,yyyy-mm-dd hh:mm:ss
function CurentTime() { var now = new Date(); var year = now.getFullYear(); //年 var month = now.getM ...