实验内容

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

实验要求

  1. 没有Linux基础的同学建议先学习《Linux基础入门(新版)》《Vim编辑器》 课程
  2. 完成实验、撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题、解决办法以及分析。

实验步骤

  1. 在IDEA中使用工具Code->Reformate Code将代码重新格式化(如下图),并研究一下Code菜单,找出一项让自己感觉最好用的功能。
菜单项目 功能 快捷键
Override Methods 重载基本类的方法 Ctrl+O
Implement Methods 完成当前类implements的接口的方法 Ctrl+I
Generate 创建类里面任何字段的 gettersetter方法 Alt+Insert
Surround With 使用if-else try-catch do-while等包装代码段 Ctrl+Alt+T
Insert Live Template 执行一些记不起来的Live Template缩写 Ctrl-J
Reformat Code 将代码按标准格式缩进 Ctrl+Alt+L

在实际的使用过程中Reformate Code是一项非常重要的功能,它能够使得代码快速的按照标准格式去表示,进而方便编程人员的去阅读、理解、修改。这在团队合作中异常重要。

  1. - 将搭档的码云项目clone到本地



- 下载搭档实验二的Complex代码,加入不少于三个JUnit单元测试用例,测试成功后git add . git commit -m "自己学号 添加内容" git push;提交搭档项目git log的截图,包含上面git commit的信息,并加上自己的学号水印信息。

  1. 下载搭档的代码,至少进行三项重构,提交重构后代码的截图,加上自己的学号水印。提交搭档的码云项目链接。
重构(Refactor),就是在不改变软件外部行为的基础上,改变软件内部的结构,使其更加易于阅读、易于维护和易于变更 。

修改软件代码的四种动机:

  1. 增加新功能;
  2. 原有功能有BUG;
  3. 改善原有程序的结构;
  4. 优化原有系统的性能。

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

收获和感想

转眼之间JAVA程序设计的课程接近了结束,回过头发现还是有许许多多不懂得地方。最大感触在于老师并没有教给我们多少的课本知识,更多的则在于Java编程的各种方法,各种手段。

这次的实验看似容易,但很多点都需要注意,比如开源中国的代码管理权限设置等等,而且下载伙伴的代码也有clone和pull两种办法,具体可以看自己喜好。

之前一直没有调remote地址,每次git都到自己的项目,失败了好几次才意识要remote add伙伴的项目地址。

同时也明白了项目成员用户成功执行XP活动的技术通过XP实践来呈现,包括编程、团队、过程相关的12条实践:

总之,这次实验花费了不少心血,甚至因为和同学交流时言语不当导致了和同学的一些冲突,弄得很不开心,好在最后对git有了很深入的理解。

PSP(Personal Software Process)时间

步骤 耗时 百分比
需求分析 20min 12.5
设计 30min 18.75
代码实现 60min 37.5
测试 20min 12.5
分析总结 30min 18.75

20155334 实验三 敏捷开发与XP实践的更多相关文章

  1. 20145213《Java程序设计》实验三敏捷开发与XP实践

    20145213<Java程序设计>实验三敏捷开发与XP实践 实验要求 1.XP基础 2.XP核心实践 3.相关工具 实验内容 1.敏捷开发与XP 软件工程是把系统的.有序的.可量化的方法 ...

  2. 20145308刘昊阳 《Java程序设计》实验三 敏捷开发与XP实践 实验报告

    20145308刘昊阳 <Java程序设计>实验三 敏捷开发与XP实践 实验报告 实验名称 敏捷开发与XP实践 实验内容 XP基础 XP核心实践 相关工具 统计的PSP(Personal ...

  3. JAVA课程实验报告 实验三 敏捷开发与XP实践

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计  班级:1353  姓名:韩玉琪  学号:20135317 成绩:             指导教师:娄嘉 ...

  4. 20145225《Java程序设计》 实验三 "敏捷开发与XP实践"

    20145225<Java程序设计> 实验三 "敏捷开发与XP实践" 实验报告 实验内容 使用 git 上传代码 使用 git 相互更改代码 实现代码的重载 git 上 ...

  5. 20145215实验三 敏捷开发与XP实践

    20145215实验三 敏捷开发与XP实践 实验内容 XP基础 XP核心实践 相关工具 实验步骤 (一)敏捷开发与XP 软件工程是把系统的.有序的.可量化的方法应用到软件的开发.运营和维护上的过程.软 ...

  6. 20145325张梓靖 实验三 "敏捷开发与XP实践"

    20145325张梓靖 实验三 "敏捷开发与XP实践" 程序设计过程 实验内容 使用 git 上传代码 git上传中遇到的问题 使用 git 相互更改代码 实现代码的重构 git ...

  7. 20162311 实验三 敏捷开发与XP实践 实验报告

    20162311 实验三 敏捷开发与XP实践 实验报告 实验内容 一.研究学习IDEA中的Code菜单 使用Code ->Reformate Code功能将以下代码格式化 public clas ...

  8. 2018-2019-20175205 实验三敏捷开发与XP实践《Java开发环境的熟悉》实验报告

    2018-2019-20175205 实验三敏捷开发与XP实践<Java开发环境的熟悉>实验报告 实验要求 没有Linux基础的同学建议先学习<Linux基础入门(新版)>&l ...

  9. 20175314 实验三 敏捷开发与XP实践

    20175314 实验二 Java面向对象程序设计 一.实验内容 XP基础 XP核心实践 相关工具 二.实验步骤 (一)代码格式化 创建"175314.exp3"项目,在该项目下创 ...

随机推荐

  1. C++计算器项目的初始部分

    作业代码 https://github.com/How-Come/object-oriented/tree/master/Calculator 一.解题思路 1.Scan类 这次题目的难点在于如何将输 ...

  2. Discuz的一处越权操作,强制回复无权限帖子

    合购vip  等教程论坛  都用的是Discuz 看操作步骤: 随便找一处vip教程 接下来 我们审查元素 找到这段代码 然后修改 <a href="http://xxx.xxx.xx ...

  3. PHP_GET后门,躲避任何安全软件

    经常拿到一些比较好的php站想要留住.插入菜刀一句话,很容易被管理发现,不管是eval还是assert,就是管理发现不了,有时连接也会被各种的安全软件拦截.现在教大家一个简单的技巧.本人一直在用,留的 ...

  4. linux性能系列--cpu

    一.先看看什么是CPU? 回答:中央处理器(Central Processing Unit)的缩写,即CPU,CPU是电脑中的核心配件,只有火柴盒那么大,几十张纸那么厚,但它却是一台计算机的运算核心和 ...

  5. 用valgrind检测php扩展内存泄露

    原文:https://bugs.php.net/bugs-getting-valgrind-log.php 前提 1,编译php的时候,必须要带上--enable-debug选项. 2,禁用php的内 ...

  6. IOS 缓存思路

    为了提高程序的响应速度,可以考虑使用缓存(内存缓存\硬盘缓存) 第一次请求数据时内存缓存中没有数据硬盘缓存中没有数据 当服务器返回数据时,需要做以下步骤 使用服务器的数据(比如解析.显示) 将服务器的 ...

  7. myeclipse run按钮不见了

    window-->new window,打开新窗口,按钮出现了.关闭老窗口,再关闭新窗口.再次打开MyEclipse,妥妥的了.

  8. 【OpenCV】【MFC】图片、视频、摄像头输入响应【详细图解】

    记住新建项目后,要配置OpenCV环境!参考链接http://blog.csdn.net/zy122121cs/article/details/49180541 做工程搭建框架什么的,基本的要熟练啊. ...

  9. bzoj4037 [HAOI2015]数字串拆分

    Description 你有一个长度为n的数字串.定义f(S)为将S拆分成若干个1~m的数的和的方案数,比如m=2时,f(4)=5,分别为4=1+1+1+1你可以将这个数字串分割成若干个数字(允许前导 ...

  10. CATransition:视图替换动画:子视图的增删查改

    CATransition通常用于通过CALayer控制UIView内子控件的过渡动画,比如删除子控件,添加子控件,切换两个子控件等. 用于子视图的增删查改: