WordCount by C# 结对编程
合作者:201631062210,201631062110
Gitee项目地址:https://gitee.com/zhouyue98/learngit
本次作业的链接地址:https://edu.cnblogs.com/campus/xnsy/2018softwaretest2398/homework/2187
一·代码互审情况
1.C#编程避免使用大文件,如果一个文件里的代码超过300-400行,必须考虑将代码分开到不同的类中,同伴写的太长,所以将代码分成了一个WC类。
2.有些变量命名格式错误,将其改正成了c#规范格式。
二·静态代码检查情况
采用的静态代码检查工具是StyleCop,StyleCop是一个分析C# 源代码的程序,它执行一套统一风格和一致性规则,可以运行在Visual Studio或集成到MSBuild项目。
StyleCop也被集成到许多第三方开发工具中,应用范围适中。 报出一个错误,和一些提示。
错误的原因是在单元测试中把原先控制台输出的部分暂时改成了函数返回,后面改回来之后,单元测试无法得到方法的返回值。改进方法,自己重新定义一个值。
三·单元测试情况
本次功能的拓展,增加了SuperCount方法(统计高级信息:空行数 代码行数 注释行数),ReadStopList方法(读取停用词表),Traverse方法(遍历所有符合条件的文件),
我主要测试了SuperCount方法,使用VS2015生成的单元测试框架,为了方便测试,我对其中代码输出的部分进行了修改,将原先控制台输出的部分暂时改成了函数返回。该模块的所有语句和分支都已覆盖。
这是运行的单元测试,遇到问题
之前文件名因为缺少转义字符“@”,而且应该给出完整路径,所以出错。修改之后
一些测试用例
写入文件
测试的.c文件中的代码使用的是本wc程序的代码
四·性能测试和优化
本次性能测试用VS2015进行性能分析
测试结果
可以从图中看出,Console.ReadLine()占据了99.8%时间,这主要与用户的输入时间有关,所以本软件的性能可以算优秀,暂时不用优化。
五·收获和感悟
此次结队编程初体验理解到了结队编程很多好的方面,比如和两位程序员各自独立工作相比,结对编程能编写出质量更高的代码;可以更高效率的完成任务;
结队编程还可以互相学习,以及发现很多自己身上的弊端。是一次不错的体验。
六·参考文献链接
此次作业中,静态代码检查参考doris_d的这篇博客:https://blog.csdn.net/doris_d/article/details/51323049,性能测试参考taxuezcy的这篇博客https://blog.csdn.net/taxuezcy/article/details/79315401;有关博客的使用和排版,参考范飞龙老师的这篇博客:http://www.cnblogs.com/math/p/se-tools-001.html;有关Git的使用,参考廖雪峰的官方网站https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/,在此表示感谢。此外,单元测试与性能测试与同伴一样。
WordCount by C# 结对编程的更多相关文章
- 第三次作业-结对编程(wordcount)
GIT地址 https://github.com/gentlemanzq/WordCount.git GIT用户名 gentlemanzq 结对伙伴博客地址 https://home.cnblogs ...
- WordCount结对编程
合作者:201631062602,201631062114 代码地址:https://gitee.com/Changyu-Guo/pairing_project 作业链接:https://www.cn ...
- 结对编程项目——C语言实现WordCount Web化
结对编程项目 代码地址 201631062219,201631011410 gitee项目地址:https://gitee.com/xxlznb/pair_programming 作业地址:https ...
- Jason Wang: 结对编程 CountWord(第三次作业)
本次作业地址: https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass1/homework/2882 学号: 201731072323 ...
- 结对编程--基于android平台的黄金点游戏
游戏内容: 阿超的课都是下午两点钟,这时班上不少的同学都昏昏欲睡,为了让大家兴奋起来,阿超让同学玩一个叫“黄金点”的游戏: N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或1 ...
- 结对编程-地铁续(有种上个学期OO的既视感)
我们组比较特殊..三人结对 github:https://github.com/qingchanghan/WPFUI_Metro po一张照片: 石浩然,韩青长.陈彦吉 (台式机真的很高端,分屏贼帅) ...
- 结对编程项目——四则运算vs版
结对编程项目--四则运算vs版 1)小伙伴信息: 学号:130201238 赵莹 博客地址:点我进入 小伙伴的博客 2)实现的功能: 实现带有用户界面的四则运算:将原只能在 ...
- 关于软件工程结对编程作业 PairProject : Elevator Scheduler(电梯调度算法的实现与测试)的总结
1)结对编程队友 1106xxxx 张扬 1106xxxx 杨军 其中,此项目的编程实现主要由前者完成. 2)关于结对编程 结对编程的优点: 最直接的一点:在结对编程中,由于有另一个人在你身边和你配合 ...
- 结对编程—黄金点游戏WinForm单机版
本小游戏场景来自邹欣老师的<移山之道>一书: "阿超的课都是下午两点钟,这时班上不少的同学都昏昏欲睡,为了让大家兴奋起来,阿超让同学玩一个叫"黄金点"的游戏: ...
随机推荐
- Android中m、mm、mmm、mma、mmma的区别
m:编译整个安卓系统 makes from the top of the tree mm:编译当前目录下的模块,当前目录下需要有Android.mk这个makefile文件,否则就往上找最近的Andr ...
- Eclipse for PHP Developers使用笔记
1 修改字体样式:Window-->Preference-->General-->Appearance-->Basic-->text font-->edit
- easyui datagrid行合并
easyui datagrid行合并 合并方法 /** * EasyUI DataGrid根据字段动态合并单元格 * 参数 tableID 要合并table的id * 参数 colList 要合并的列 ...
- SpringBoot2.0之整合ActiveMQ(发布订阅模式)
发布订阅模式与前面的点对点模式很类似,简直一毛一样 注意:发布订阅模式 先启动消费者 公用pom: <project xmlns="http://maven.apache.org/PO ...
- c 获取 域名ip
#include <stdio.h> #include <netdb.h> int main(int argc, char *argv[]) { ) { printf(]); ...
- BZOJ 1605 [Usaco2008 Open]Crisis on the Farm 牧场危机:dp【找转移路径】
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1605 题意: 平面直角坐标系中,有n个点,m个标记(坐标范围1~1000). 你可以发出口 ...
- 分享知识-快乐自己:intellij Idea报错Could not autowire. No beans of...
intellig idea 使用@Resource或者@Autowire报错,出现红色波浪线: 虽然不影响使用,但是看着很不爽,所以还是解决了下: 报错提示: Could not autowire. ...
- NASNet学习笔记—— 核心一:延续NAS论文的核心机制使得能够自动产生网络结构; 核心二:采用resnet和Inception重复使用block结构思想; 核心三:利用迁移学习将生成的网络迁移到大数据集上提出一个new search space。
from:https://blog.csdn.net/xjz18298268521/article/details/79079008 NASNet总结 论文:<Learning Transfer ...
- tcpdump抓包工具用法说明
tcpdump采用命令行方式对接口的数据包进行筛选抓取,其丰富特性表现在灵活的表达式上. 不带任何选项的tcpdump,默认会抓取第一个网络接口,且只有将tcpdump进程终止才会停止抓包. 例如: ...
- JZOJ 1667【AHOI2009】中国象棋——dp
题目:https://jzoj.net/senior/#main/show/1667 只注重0.1.2的列有多少个,不注重它们的位置,就能记录了. #include<iostream> # ...