zoukankan      html  css  js  c++  java
  • 结对编程1-模块化

    一、结对成员介绍及coding.net 地址:

    (本人)魏修祺 201421122008 coding.net地址:[https://coding.net/u/weixuiqi/p/Pair-programing-one/git];

    (成员)吴吉键 201421122007 博客地址:[http://www.cnblogs.com/blogWU/].

    演示视频(优酷网):[http://v.youku.com/v_show/id_XMzEwMDU5NDM0MA==.html?spm=a2h3j.8428770.3416059.1].

    二、题目描述:

    在个人作业1中,用各种语言实现了一个命令行的四则运算小程序。进一步,本次要求把这个程序做成GUI,成为一个有基本功能、一定价值的程序。在下面的功能需求中实现两个:

    • 记录用户的对错总数,程序退出再启动的时候,能把以前的对错数量保存并在此基础上增量计算。

    • 有计时功能,能显示用户开始答题后的消耗时间。

    • 界面支持中文简体/中文繁体/英语,用户可以选择一种;

    三、项目实现:

    1、需求分析

    结对项目,需求为我完成的功能。

    • 计时功能,实时显示用户答题时间

    • 记录用户的对错总数

    2、程序设计

    说明:四则远算主要功能分为,计算、语言选择、计时、记录。其中计算是最核心最重要的部分,但在个人作业1中已经有过详细说明,这里不再细说。语言选择提高三种语言选择,初始默认为简体中文。计时功能,记录用户在开始答题直到答题结束消耗时间。记录主要是对答题结束之后,将对错总数和错题写到文件里。

    3、代码展示

    //计时功能
        public void run() {
    		while (s) {
    			try {
    				this.sleep(1000);
    			} catch (InterruptedException e) {
    				e.printStackTrace();
    			}
    			//获取当前显示的时间并加1在输出
    			int n = Integer.parseInt(t.getText());
    			System.out.println(n++);
    			t.setText(String.valueOf(n));
    		}
    	}
    
            //记录用户的对错总数
            String filepath = "history.txt";
        	File history = new File(filepath);
    		BufferedWriter out = null;
    		if (history.exists()) {
    			try {
    				@SuppressWarnings("resource")
    				BufferedReader br = new BufferedReader(new FileReader(history));
    				String h_right = br.readLine();
    				String h_err = br.readLine();
    				int t_right = Integer.parseInt(h_right) + right;
    				int t_err = Integer.parseInt(h_err) + err;
    				out = new BufferedWriter(new OutputStreamWriter(
    						new FileOutputStream(history, false)));
    				out.write(String.valueOf(t_right));
    				out.newLine();
    				out.write(String.valueOf(t_err));
    				out.newLine();
    			} catch (IOException e) {
    				e.printStackTrace();
    			} finally {
    				try {
    					out.close();
    				} catch (IOException e) {
    					// TODO Auto-generated catch block
    					e.printStackTrace();
    				}
    			}
    		}
    

    4、程序运行

    运行截图在另一篇博客里结对编程1-模块化

    5、小结感受

    • 结对编程过程中的分工很明确,在功能分配上没有什么争议,总体过程中是很顺利的。

    • 在代码规范方面由于使用的是标准的java代码规范,在整合方面没有什么很大的问题,主要是相互理解对方的代码。

    四、运用“汉堡包”的方式,评价结对伙伴:

    优点:对开发过程中需要用到的新知识接受能力强

    缺点:函数与方法的封装还不是很好,部分class内代码很长

    希望他提高的地方:熟悉并很好的封装不同的代码,降低代码的篇幅。

    PSP与结对过程

    相同部分参考结对编程1-模块化

  • 相关阅读:
    计算机操作系统实验之_进程观测_实验报告
    KVO(NSKeyValueObserving 键 值编码)与KVC(NSKeyValueCoding 键值观察机制)详解
    用arrayWithObject:初始化,参数为空数组NSArray时出现的异常
    用QtCreator实现可扩展对话框实验
    xcode4 设置调试错误信息小结
    从“Qt信号槽机制”到”iOS(MVC)中的Target——Action机制”
    Qt源码分析之信号和槽机制
    objectivec 学习之NSMutableDictionary介绍
    iOS面试题汇总 (1)
    报告论文:关于一个小型学生信息管理系统研究
  • 原文地址:https://www.cnblogs.com/blogWU/p/7709813.html
Copyright © 2011-2022 走看看