第二次结对编程

作业要求及项目地址:

要求:https://www.cnblogs.com/xinz/archive/2011/11/27/2265000.html
项目地址:https://github.com/xyyimian/ase-pair-project-wf

合作方式及讨论:

本次项目我们主要采取pair programming的形式,即一人主要负责功能程序的编写,另一人主要负责代码复审以及单元测试程序的编写。并且在编码伊始确定了项目的整体框架是通过功能函数进行实现。如果出现意见分歧或者在后期提出了不同的想法,则以速度快者为准。

时间问题:

由于除了该项目外,平时还有别的事情需要处理,所以我们采取的是集中找一段较长的时间来将整个程序的框架搭建起来,然后利用平时晚上的时间进行优化修改和测试。目前并不是我们可以做到的最好情况,但是由于时间精力等条件的限制,在现有条件下我们已经尽力完成了。

评价队友:

对C++熟练,对细节十分重视,并且能够快速学习新知识,不过有时候性子比较慢,不着急。

测试分析:

我们的功能编写和单元测试的编写都采用Visual Studio,并且采用Performance Profiler进行效能分析及改进。在改进的过程中发现问题举例如下:库函数isalpha和isalnum鲁棒性较差,即会接受乱码字符,造成程序的正确性出现问题,因此我们手动实现了该函数。并且如果采用正则表达式来进行单词判断会占用较长时间,解决方法是专门写了一个判断函数,但是在写的过程中出现了情况漏判,说明还是有必要画一个状态机的,减少出错的可能性。同时用unordered_map代替List来提高速度。不过因为我们并没有截取优化前的效能分析图,所以下列图片皆为最终的程序分析结果。

posted @ 2018-11-03 15:12  moonlay  阅读(114)  评论(0编辑  收藏  举报