目录
Part1 Github项目地址
Fork仓库的Github项目地址 | 该邮件地址已受到反垃圾邮件插件保护。要显示它需要在浏览器中启用 JavaScript。:JusticeXu/WordCount.git |
---|---|
结对伙伴GIthub地址 | npc1158947015 |
Part2 PSP表格
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 20 | 18 |
· Estimate | · 估计这个任务需要多少时间 | 900 | 903 |
Development | 开发 | 600 | 633 |
· Analysis | · 需求分析 (包括学习新技术) | 60 | 53 |
· Design Spec | · 生成设计文档 | 20 | 17 |
· Design Review | · 设计复审 (和同事审核设计文档) | 15 | 13 |
· Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 30 | 30 |
· Design | · 具体设计 | 30 | 30 |
· Coding | · 具体编码 | 360 | 400 |
· Code Review | · 代码复审 | 40 | 40 |
· Test | · 测试(自我测试,修改代码,提交修改) | 60 | 60 |
Reporting | 报告 | 60 | 60 |
· Test Report | · 测试报告 | 20 | 20 |
· Size Measurement | · 计算工作量 | 20 | 20 |
· Postmortem & Process Improvement Plan | · 事后总结, 并提出过程改进计划 | 20 | 20 |
合计 | 870 | 903 |
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.