zoukankan      html  css  js  c++  java
  • java第三次实验

    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

  • 相关阅读:
    RecyclerView 数据刷新的几种方式 局部刷新 notify MD
    【图片】批量获取几万张图片
    RV BaseRecyclerViewAdapterHelper 总结 MD
    RecyclerView.ItemDecoration 间隔线
    Kotlin【简介】Android开发 配置 扩展
    Kotlin 特性 语法糖 优势 扩展 高阶 MD
    一个十分简洁实用的MD风格的UI主框架
    折叠伸缩工具栏 CollapsingToolbarLayout
    FloatingActionButton FAB 悬浮按钮
    Glide Picasso Fresco UIL 图片框架 缓存 MD
  • 原文地址:https://www.cnblogs.com/20145336yang/p/5428898.html
Copyright © 2011-2022 走看看