小夏今天也要加油!!!博客中有错误或者是不懂的欢迎联系qq:1347486073(*╹▽╹*)

第三次作业

github项目地址:https://github.com/AngelSum233/WordCount.git

作业地址:https://www.cnblogs.com/angelsum/p/10658390.html

 
 

合作:因为是室友直接结对成功,计划代码一人一半,然后我汇总,后边一个人做测试,一个人进行性能分析。

讨论过程(非摆拍)

一、实现基本功能

1. PSP表格

PSP2.1

Personal Software Process Stages

预估耗时(分钟)

实际耗时(分钟)

Planning

计划

 20    15

· Estimate

· 估计这个任务需要多少时间

 240  240

Development

开发

 200  200

· Analysis

· 需求分析 (包括学习新技术)

 60  60

· Design Spec

· 生成设计文档

 15  10

· Design Review

· 设计复审 (和同事审核设计文档)

 10  10

· Coding Standard

· 代码规范 (为目前的开发制定合适的规范)

 10  10

· Design

· 具体设计

 15  15

· Coding

· 具体编码

 60  60

· Code Review

· 代码复审

 15  15

· Test

· 测试(自我测试,修改代码,提交修改)

 15  30

Reporting

报告

 40  40

· Test Report

· 测试报告

 20  20

· Size Measurement

· 计算工作量

 10  10

· Postmortem & Process Improvement Plan

· 事后总结, 并提出过程改进计划

 10  10
 

合计

 260  265

 2.解题思路

先读取文件放在一个字符串里。其实这四个点最开始完成的是字符数和行数,都是用同一种思路完成的,注意换行符是两个字符,用正则表达式时应注意一下字符数以及行数之间的关系。后边比较难的是统计单词数和单词出现的频率最高的前十个单词。想到后边还要统计频率,所以这里也用了dictionary,在网上查询了其相关用法,这里我先是将满足条件的单词整理出来放在字典里,在加条件的同时就已经得到了单词数。然后遍历字典,按照题目所给的要求进行排序。

3.设计实现过程

设计大致如下图,编写几个类在里面装方法,然后在主函数里面进行调用

下面是我们主函数代码:

 

4.代码规范

这个是由我们俩分工合作得来的,为了汇总方便,我们按照书上P64的要求规范自己的代码。

在编写代码时,为了对方能看懂,我们会写时一起规定类的命名以及某些变量的命名。

出现的问题:即使我们在写的时候都在讨论,后边审查代码时,还是可读性比较差,对方不解释有的东西比较难懂,后边通过关键地方注释还是能简单明白。

5.上传代码

有了上次失败的经验,这一次贼快就传上去了,需要注意的是,一定要记住自己的密码

 二、性能分析

完成以上工作后开始进行性能分析,等待的时间还是挺长的,然后观察了一下,发现main函数被调用的次数最多,其次就是统计符号类的调用。

 

三、总结

两个人分工合作确实要容易的多,遇到不懂的时候也没有那么慌张。在写代码时遇到了很多新东西,一个巴掌的能力是有限的,但是加上同伴的就能够打响(害羞.jpg)

其实做这个非常吃力,在写代码的时候就遇到了很多问题,设计如何循环,如何把单词清理好,还有用字典来统计频率。真的尽力了,我感觉自己太差了,还是要多多去接待一些新的东西.......

 

posted @ 2019-04-05 20:49  AngelSum  阅读(148)  评论(1编辑  收藏  举报