首页 > 技术文章 > 个人作业2——WordCount

jiahaitao 2018-09-17 19:02 原文

1. 地址

  • 博客地址https://www.cnblogs.com/jiahaitao/
  • git地址https://gitee.com/qq_connect-0530DB813827D953C002/events

2.个人的PSP表格。

PSP2.1 个人开发流程 预估耗费时间(分钟) 实际耗费时间(分钟)
Planning 计划 30 60
Estimate 明确需求和其他相关因素,估计每个阶段的时间成本 20 15
Development 开发 120 180
Analysis 需求分析 (包括学习新技术) 20 20
Design Spec 生成设计文档 10 40
Design Review 设计复审 10 25
Coding Standard 代码规范 20 30
Design 具体设计 30 40
Coding 具体编码 120 120
Code Review 代码复审 20 15
Test 测试(自我测试,修改代码,提交修改) 20 20
Reporting 报告 60 60
. 测试报告 30 30
. 计算工作量 30 25
. 并提出过程改进计划 30 20

3.解题思路描述。即刚开始拿到题目后,如何思考,如何找资料的过程。

  1. 统计字符。
    只统计字母与数字,利用ASCII码值范围(32-126)进行判定;设置计数器,输入流从文件中读取单个字符进行循环,满足条件(ASII码值在指定范围),计数器加1。
  2. 统计有效行数
    设置计数器,输入流从文件中读取整行进行循环,若非空行,则计数器加1。
  3. 统计单词数
    同2,然后再利用split对每行数据进行分割,统计非空单位数目
  4. 统计词频并输出前十个单词
    利用map,同3分割单词,判断该词是否已存入map键值,有则将该单词对应的value加1,没有就将该单词存为新键值并设置其value为1。最后按照顺序输出结果。

4、设计实现过程

  • 统计字符数函数

  • 统计非空行数

  • 统计单词数

  • 统计词频

5、代码测试

C盘根目录下建立测试文件,随机放入一篇英文文章

进行测试

部分核对

代码覆盖率(不懂,而且一直显示loading)

使用Junit测试(不懂原理,也只是按部就班截了个图)

实验小结

“纸上得来终觉浅,绝知此事要躬行!”在完成这一小个项目的过程,让我深深的感觉到自己在实际应用中所学来专业知识的匮乏。虽然倍感折磨,但是收获却是很大的,比如说一定程度上重温巩固了java编程;发现了整体规划和统筹的重要性;知道了一个完整的项目,一定要先整体思考,再动手行动,并且代码流程一定要规范。
同时我更认识到了自己的不足,就单元测试这些方面来讲,我真的是一窍不通。实验进行起来很难受效率很低。对此我想出的办法是提高理论知识水平,同时进行一些相应实战训练来巩固练习。
下次我会做得更好!

推荐阅读