201671030112 李晓雪 +《英文文本统计分析》结对项目报告

项目 内容
作业所属课程 http://www.cnblogs.com/nwnu-daizh/
作业要求 https://www.cnblogs.com/nwnu-daizh/p/10569690.html
课程学习目标 体验软件项目开发中的两人合作,练习结对编程(Pair programming)。掌握Github上增量发布软件的操作方法。
在哪个具体方面帮助我们实现目标 能够在同学之间更好的进行合作与交流
本次项目源代码 https://github.com/Lxiaoxue/Work

任务一

项目 内容
点评作业的博客 https://www.cnblogs.com/shl0/p/10556765.html
博文评论内容: 整体来说写的挺好,功能方面也都基本实现了。在按字典排序写入result.txt文件功能实现的不错,写入的很整齐。但是在查询单词这个功上还可以进行优化,连续输入不同的单词一次性查询。还有就是可以学习一下在博文中如何使用表格。继续努力!
点评心得: 在看了她的博文之后,相比与自己在有些方面还是很有学习的地方,比如在写入result文件中,写入的很整齐。应该学习。
github链接地址 https://github.com/SHL0/Word-Count
代码点评内容: 代码写的很规范,能容易理解,每个类和函数都有注释,是值得学习的地方。希望继续努力。
代码点评心得: 在看了她的代码之后,相比与自己 还有学习的地方,有些代码写注释很重要,方便以后的学习。

任务二

结对项目源代码

a.需求分析

(1)实验2要求的功能;

(2)单词频数可视化柱状图要求是以下样式:

(3)统计该文本行数及字符数;

(4)各种统计功能均提供计时功能,显示程序统计所消耗时间(单位:ms);

(5)可处理任意用户导入的任意英文文本;

(6)人机交互界面要求GUI界面(WEB页面、APP页面都可);

(7)附加分功能:统计文本中除冠词、代词、介词之外的高频词;

b.软件设计

  1.首先输入任意正确的文件名。进入功能选择,点击每个功能进行测试。

  2.本次项目需要用到图形用户界面。在Mianclass类中编写,设置面板,动作监听。

  3.在柱状图和排序编写到不同的类中进行调用。

c.核心功能代码展示

surebt.addActionListener(new ActionListener(){
        public void actionPerformed(ActionEvent event){
         if(event.getSource()==surebt){
        JOptionPane.showConfirmDialog(null, "是否退出程序?","查找结果",JOptionPane.DEFAULT_OPTION);
        frame1.dispose();//销毁当前界面
        }
     }
    });
   okbt.addActionListener(new ActionListener() {
   public void actionPerformed(ActionEvent e) {
              if(e.getSource()==okbt) {
             String src = t1.getText();
              File file =new File(src);
             FileReader reader = null;
             try {
                    reader = new FileReader(src);
                  } catch (FileNotFoundException e1) {
                     // TODO Auto-generated catch block
                     e1.printStackTrace();
                    }
                      if(!file.exists())
                        {
                          JOptionPane.showConfirmDialog(null, "请输入正确的文件名","查找结果",JOptionPane.DEFAULT_OPTION);
                        }
                      BufferedReader br = new BufferedReader(reader);
                      String readline = null;
                        int row=0;
                        int wordnumber=0;
                        long startTime = System.currentTimeMillis();    //获取开始时间    
                        ArrayList<String> lists = new ArrayList<String>(); 
                        try {
                            while ((readline = br.readLine()) != null)
                            {
                                String[] wordsArray=readline.split("[^a-zA-Z]");
                                for(String word :wordsArray) 
                                {
                                    if(word.length() != 0)
                                    {  
                                        word=word.toLowerCase();
                                        lists.add(word);  
                                    }
                                }
                                row++;  
                            }
                        } catch (IOException e1) {
                            // TODO Auto-generated catch block
                            e1.printStackTrace();
                        }
                          System.out.println(row); 
                        try {
                            br.close();
                        } catch (IOException e1) {
                            // TODO Auto-generated catch block
                            e1.printStackTrace();
                        }

d.程序运行

1.运行程序

2.输入任意文本

(若输入的文件名不正确)

(输入正确的文件名)

3.输入任意单词,查询词频。

4.查询高频词。

5.显示柱状图。

6.按字典排序写如result.txt中。

7.附加功能1,查询除代词介词冠词之外的单词词频。

8.退出。

e.结对过程描述

  在一起合作的时候也会有很多分歧,需要讨论和尝试很多时间。

f.PSP展示

任务内容 计划完成需要的时间(min) 实际完成需要的时间(main)
计划 30 25
估计这个任务需要多少时间,并规划大致工作步骤 40 30
开发 240 300
需求分析 30 25
生成设计文档 60 50
设计复审 (和同学审核设计文档) 20 25
代码规范 (为目前的开发制定合适的规范) 10 15
具体设计 30 30
具体编码 300 350
代码复审 20 25
测试(自我测试,修改代码,提交修改) 20 15
报告 30 45
测试报告 30 25
计算工作量 20 15
事后总结 ,并提出过程改进计划 60 45

g.总结

   本次项目的重难点就是图形用户界面,在功能部分我们实现的还算是顺利。但是到了做界面的时候就遇到了很大的困难,虽然之前学习过,大部分方法都忘记了,在编写代码的过程中查阅了书籍。希望可以将更进一步。

猜你喜欢

转载自www.cnblogs.com/LXxue/p/10575997.html