码迷,mamicode.com
首页 > 其他好文 > 详细

第三周学习总结

时间:2016-04-25 00:20:53      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:

20145336第三周JAVA实验报告

20145336 《Java程序设计》第三次实验实验报告

北京电子科技学院(BESTI)实验报告

课程:Java程序设计

班级:1453

姓名:张子扬

指导教师:娄嘉鹏

实验日期:2016.04.22

实验名称:Java开发环境的熟悉(Linux + Eclipse)

实验内容:

  1. XP基础

  2. XP核心实践

  3. 相关工具

实验目的与要求:

  1. 没有Linux基础的同学建议先学习《Linux基础入门(新版)》《Vim编辑器》 课程

  2. 完成实验、撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用,程序的编辑,调试,运行等)、解决办法(空洞的方法如“查网络”、“问同学”、“看书”等一律得0分)以及分析(从中可以得到什么启示,有什么收获,教训等)。报告可以参考范飞龙老师的指导

  3. 严禁抄袭,有该行为者实验成绩归零,并附加其他惩罚措施。

实验步骤

敏捷开发与XP

两个公式:软件=程序+软件工程和软件企业=软件+商业模式

敏捷开发(Agile Development)是一种以人为核心、迭代、循序渐进的开发方法。

XP团队使用现场客户、特殊计划方法和持续测试来提供快速的反馈和全面的交流:

  • XP是以开发符合客户需要的软件为目标而产生的一种方法论
  • XP是一种以实践为基础的软件工程过程和思想
  • XP认为代码质量的重要程度超出人们一般所认为的程度
  • XP特别适合于小型的有责任心的、自觉自励的团队开发需求不确定或者迅速变化的软件

XP准则:沟通、简单、反馈、勇气

XP法则:快速反馈、假设简单性、递增更改、提倡更改、优质工作

XP活动:编码、测试、倾听、设计

XP实践:编码标准、结对编程、代码集体所有、测试、重构等实践

编码标准

编写代码一个重要的认识是“程序大多时候是给人看的”,编程标准使代码更容易阅读和理解,甚至可以保证其中的错误更少。编程标准包含:具有说明性的名字、清晰的表达式、直截了当的控制流、可读的代码和注释,以及在追求这些内容时一致地使用某些规则和惯用法的重要性。

程序的缩进方法:我们单击Eclipse菜单中的source->Format 或用快捷键Ctrl+Shift+F就可以按Eclipse规定的规范缩进。

结对编程

结对编程中有两个角色:

  • 驾驶员(Driver)是控制键盘输入的人。写设计文档,进行编码和单元测试等XP开发流程。
  • 领航员(Navigator)起到领航、提醒的作用。审阅驾驶员的文档、驾驶员对编码等开发流程的执行;考虑单元测试的覆盖率;思考是否需要和如何重构;帮助驾驶员解决具体的技术问题。

git的配置

首先需要安装git

技术分享

设置账号和邮箱

技术分享

 

git的使用

要先下载同组成员的java文件,然后修改之后再上传。

我们先打开同组成员的项目,复制其网址:

技术分享

在桌面右键,点git bash here ,输入git clone +项目组地址:

技术分享

此时,桌面会出现项目组文件夹:

技术分享

打开文件夹,把要修改的java文件修改之后,放入该项目组文件夹:

技术分享

在该文件夹中右键,点击git bash here,开始将修改后的java文件传上去:

技术分享

技术分享

技术分享

技术分享

技术分享

这时,git@osc中对应的项目组中也就多了一个文件,上传成功:
技术分享

eclipse的重构过程

源代码:
import java.util.Scanner;
public class MyUtil {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
String write="";
char[] mid=new char[100];
int[] code=new int[100];
int time=0;
int i=0;
System.out.println("请输入明文");
write=scanner.nextLine();
time=write.length();
for( i=0;i<time;i++){
mid[i]=write.charAt(i);
code[i]=((int)mid[i]-‘a‘+3)%26+‘a‘;
}
System.out.println("密文为:");
for( i=0;i<time;i++){
System.out.printf("%c",(char)code[i]);
}
}
}

重构后的代码:

 class Caesar{
public static char[] mid=new char[100];
public static int[] code=new int[100];
public static int time=0;
public static int i=0;
public static void EncryptWrite(String write){
time=write.length();
for( i=0;i<time;i++){
mid[i]=write.charAt(i);
code[i]=((int)mid[i]-‘a‘+3)%26+‘a‘;
}
System.out.println("密文为:");
for( i=0;i<time;i++){
System.out.printf("%c",(char)code[i]);
}
}
}
public class MyUtil {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
String write="";
System.out.println("请输入明文");
write=scanner.nextLine();
Caesar.EncryptWrite(write);
}
}

实验伙伴

20144303石宇森  http://www.cnblogs.com/20144303sys

 

第三周学习总结

标签:

原文地址:http://www.cnblogs.com/20145336yang/p/5428898.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!