20172319 实验三 《敏捷开发与XP实践》 实验报告

20172319 2018.05.17-30

实验三 《敏捷开发与XP实践》 实验报告

课程名称:《程序设计与数据结构》  
学生班级:1723班  
学生姓名:唐才铭  
学生学号:20172319 
实验教师:王志强老师
课程助教:刘伟康、张旭升学长
实验时间:2018年5月17日——2018年5月30日
必修/选修:必修

目录


实验内容

  1. XP基础
  2. XP核心实践
  3. 相关工具

返回目录


实验要求

  1. 没有Linux基础的同学建议先学习《Linux基础入门(新版)》《Vim编辑器》课程
  2. 完成实验、撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用,程序的编辑,调试,运行等)、解决办法(空洞的方法如“查网络”、“问同学”、“看书”等一律得0分)以及分析(从中可以得到什么启示,有什么收获,教训等)。报告可以参考范飞龙老师的指导
  3. 严禁抄袭,有该行为者实验成绩归零,并附加其他惩罚措施。

返回目录


实验步骤

前期准备:

  1. 预先安装好IDEA
  2. 在IDEA中安装Alibaba插件

需求分析:

  1. 需要初步掌握单元测试和TDD;
  2. 需要理解并掌握Git的用法;
  3. 需要认识、了解IDEA中工具栏内的功能及相关用法;
  4. 需要认识、了解并掌握java密码学的相关知识。

返回目录


代码实现及解释

本次实验一共分为四个提交点:

  • 1.代码规范:
  • 参考实验三 敏捷开发与XP实践 ,Eclipse的内容替换成IDEA;
  • 参考Intellj IDEA 简易教程,安装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));
}
}

  • 格式化后的代码及截图
package exp3;
/**
 * Demo class
 *
 * @author 唐才铭
 * @date 2018/5/16
 */
public class CodeStandard {public static void main(String [] args){
    StringBuffer buffer = new StringBuffer();
    int length = 20;
    buffer.append('S');
    buffer.append("tringBuffer");
    System.out.println(buffer.charAt(1));
    System.out.println(buffer.capacity());
    System.out.println(buffer.indexOf("tring"));
    String output = "buffer = " + buffer.toString();
    System.out.println(output);
    if(buffer.capacity()<length) {
        buffer.append("1234567");
    }
    for(int i=0; i<buffer.length();i++) {
        System.out.println(buffer.charAt(i));
    }
}
}

  • 自己感觉好用的功能:折叠

  • 2.协同测试

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

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

  • 对搭档的实验二的Complex代码写JUnit单元测试代码

  • 相关截图:

  • 3.重构:

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

  • 相关截图:

  • 重构内容: 类名,封装变量,方法。


  • 4.密码学应用:
  • 参考Java 密码学算法 ,以结对的方式完成Java密码学相关内容的学习,结合重构,git,代码标准。
  • 提交学习成果码云链接和代表性成果截图,要有学号水印。
  • 相关截图:

返回目录


测试过程及遇到的问题

返回目录


分析总结

  • 密码这东西有点复杂,个人对于此类东西不感兴趣,但接触更有利于学习。

返回目录


参考资料

Intellj IDEA 简易教程
Java 密码学算法
实验三 敏捷开发与XP实践

返回目录

posted @ 2018-05-29 20:31  ⊙ω⊙  阅读(225)  评论(0编辑  收藏  举报