结对编程—WordsCount

Part1 Github项目地址

Fork仓库的Github项目地址该邮件地址已受到反垃圾邮件插件保护。要显示它需要在浏览器中启用 JavaScript。:JusticeXu/WordCount.git
结对伙伴GIthub地址npc1158947015

Part2 PSP表格

PSP2.1Personal Software Process Stages预估耗时(分钟)实际耗时(分钟)
Planning计划2018
· Estimate· 估计这个任务需要多少时间900903
Development开发600633
· Analysis· 需求分析 (包括学习新技术)6053
· Design Spec· 生成设计文档2017
· Design Review· 设计复审 (和同事审核设计文档)1513
· Coding Standard代码规范 (为目前的开发制定合适的规范)3030
· Design· 具体设计3030
· Coding· 具体编码360400
· Code Review· 代码复审4040
· Test· 测试(自我测试,修改代码,提交修改)6060
Reporting报告6060
· Test Report· 测试报告2020
· Size Measurement· 计算工作量2020
· Postmortem & Process Improvement Plan· 事后总结, 并提出过程改进计划2020
合计870903

Part3 需求分析

文件统计软件wordCount功能如下:

Core计算模块

​ 1.统计文件的字符数函数

​ 2.统计文件的单词总数函数

​ 3.统计文件的有效行数函数

​ 4.统计文件中单词出现的次数,按字典序输出频率最高的10个单词或者词组函数

个性输出模块

​ 1.自定义输出:能输入用户指定的前n多的单词与其数量

最终实际的软件,除了核心的计算模块以外,还要让这个Core模块和使用它的其他模块之间要有一定的API交流

通过设计GUI界面进行实现

思维导图:

Part 4 代码框架与接口

代码规范

参考资料:Google C++代码规范

本来觉得自己写的代码其实算是足够规范的,但是在比较分析了结对伙伴的代码后,觉得人和人的代码风格还是存在让人诧异的差异的,因此找到了目前最为规范的Google C++代码规范(李开复鼎力推荐)拿来阅读。整体阅读下来大概花了一个小时左右。给我最大的感觉是,像Google,Tencent这样的技术公司,对于整体框架安全性的追求远远超过对技术中淫技巧术的追求,还有就是对可读性的要求也非常高,下面是一些例子:

1.在任何能够使用const的情况下,都用使用const。

2.

计算机