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算法,最后进行了汇总。希望在之后的学习中能够更好的合作,学到更多知识。
2017-2018-2 20165202 实验三《敏捷开发与XP实践》实验报告的更多相关文章
- 20162311 实验三 敏捷开发与XP实践 实验报告
20162311 实验三 敏捷开发与XP实践 实验报告 实验内容 一.研究学习IDEA中的Code菜单 使用Code ->Reformate Code功能将以下代码格式化 public clas ...
- 20165230 《Java程序设计》实验三 敏捷开发与XP实践 实验报告
20165230 <Java程序设计>实验三 敏捷开发与XP实践 实验报告 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:田坤烨 学号:20165230 成绩: 指导教 ...
- 20145308刘昊阳 《Java程序设计》实验三 敏捷开发与XP实践 实验报告
20145308刘昊阳 <Java程序设计>实验三 敏捷开发与XP实践 实验报告 实验名称 敏捷开发与XP实践 实验内容 XP基础 XP核心实践 相关工具 统计的PSP(Personal ...
- 20165308实验三 敏捷开发与XP实践实验报告
实验三 敏捷开发与XP实践实验报告 实验目的 安装 alibaba 插件,解决代码中的规范问题.再研究一下Code菜单,找出一项让自己感觉最好用的功能. 在码云上把自己的学习搭档加入自己的项目中,确认 ...
- 20155207王雪纯 《Java程序设计》实验三 敏捷开发与XP实践 实验报告
20155207王雪纯 <Java程序设计>实验三 敏捷开发与XP实践 实验报告 实验名称 敏捷开发与XP实践 实验内容 XP基础 XP核心实践 相关工具 统计的PSP(Personal ...
- 20155220 实验三 敏捷开发与XP实践 实验报告
20155220 实验三 敏捷开发与XP实践 实验报告 实验内容 XP基础 XP核心实践 相关工具 实验要求 没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim ...
- # 20155224 实验三 敏捷开发与XP实践 实验报告
20155224 实验三 敏捷开发与XP实践 实验报告 实验内容 XP基础 XP核心实践 相关工具 实验要求 没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim ...
- 20155226 实验三 敏捷开发与XP实践 实验报告
20155226 实验三 敏捷开发与XP实践 实验报告 实验内容 XP基础 XP核心实践 相关工具 实验要求 没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim ...
- 20155311 实验三 敏捷开发与XP实践 实验报告
20155311 实验三 敏捷开发与XP实践 实验报告 实验内容 XP基础 xp核心工具 相关工具 实验要求 没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim ...
- 2016-2017-2 20155339 《Java面向对象程序设计》实验三敏捷开发与XP实践实验报告
2016-2017-2 20155339 <Java面向对象程序设计>实验三敏捷开发与XP实践实验报告 实验内容 XP基础 XP核心实践 相关工具 实验内容 一.在IDEA中使用工具(Co ...
随机推荐
- HBuilder 详细使用方法 -------------参考 :http://www.runoob.com/w3cnote/hbuilder-intro.html
HBuilder是DCloud(数字天堂)推出的一款支持HTML5的Web开发IDE.HBuilder的编写用到了Java.C.Web和Ruby.HBuilder本身主体是由Java编写,它基于Ecl ...
- Python中正则模块re.compile、re.match及re.search函数用法
import rehelp(re.compile)'''输出结果为:Help on function compile in module re: compile(pattern, flags=0) C ...
- ubuntu下 gedit中文乱码
Gedit 3.x 版本设置 (适用于Ubuntu 11.10及以后) 命令方式 gsettings set org.gnome.gedit.preferences.encodings auto-de ...
- MR案例:分区和排序
现有一学生成绩数据,格式如下:<学号,姓名,学院,成绩> //<id, name, institute, grade>. 需求描述:查询成绩大于等于60分的学生数据,按学院分 ...
- Base64编码原理
Base64编码之所以称为Base64,是因为其使用64个字符来对任意数据进行编码,同理有Base32.Base16编码.标准Base64编码使用的64个字符为: 这64个字符是各种字符编码(比如AS ...
- iOS开发进阶 - 项目的本地化处理(多语言开发)
移动端访问不佳,请访问我的个人博客 最近项目本地化,需要支持多国语言,下面将本地化的步骤记录下来,方便查找使用,步骤很简单,有些地方也有坑,希望大家看后少走弯路~~ 什么是本地化 本地化说直白点就是多 ...
- BZOJ 3192: [JLOI2013]删除物品 奇淫技巧&树状数组
点我看题 这题十分奇淫技巧...QAQ因为知道是树状数组的题QAQ刚开始以为维护两个数组的树状数组然后模拟从大到小,然后发现不会打QAQ 于是悄悄咪咪翻开题解了. 实际上两个数组可以看做一个数组 如 ...
- 爬虫之动态HTML处理(Selenium与PhantomJS )执行 JavaScript 语句
执行 JavaScript 语句 1.隐藏百度图片 from selenium import webdriverimport time driver = webdriver.PhantomJS()dr ...
- OKR学习总结
OKR学习总结 背景:因为公司最近采用OKR工作法,所以来了解一下. 简介 OKR ——Object Key Results 主要分为两部分:O 和 KR ,就是目标和关键结果. 将这个丰满点描述,就 ...
- Ubuntu16.04 anaconda3 opencv已经安装,但是无法import的问题
解决anaconda中已经安装了opencv3,但无法import的问题 你可能遇见的问题: ImportError: No module named cv2 ImportError: libz-a1 ...