BJDP结对编程活动
1. 金锐分享单元测试的Mocking技术,20 mins
2. 伍斌分享代码内在质量分析工具SonarQube,20 mins
3. 运用TDD结对编程来解决八皇后问题,120 mins
Mocking技术方面,之前看测试驱动的IOS开发其中有介绍到一些Mock技术,Mock是在写单元测试时采用的一种模拟对象行为的方法。
我认为其实如果写测试,一定会制造一些假对象,或者假数据。
在测试驱动IOS开发这本书上作者就先自己实现了一些伪造对象。
与使用OcMock进行了一些对比。
JMock或者EasyMock提供了一种比较容易使用的Mock实现。程序员可以少花一些精力构造假对象。同行来的人对JUnit和JMock的异同有些搞不清楚。我觉得JUnit是测试框架,而JMock则是在JUnit框架下写测试用例时可以使用的工具类。这是个人看法。
另外就是也讲Stub(代码插桩)技术和Mock技术之间的区别。
我有一些个人理解,我认为代码插桩技术主要是通过在工作代码中插入了一些冗余的配合测试的代码。
而Mock技术则不需要与工作代码放在一起,它是独立于工作代码的。
后面的SonarQube则是代码质量分析的工具,我觉得比JLint这样的静态分析工具的区别主要在于能够提供分析报表。并且可以与持续集成环境整合。我觉得我们的项目也可以使用这样的代码分析工具。其中有其他参加者提到SonarQube实际上是基于FindBug的。下来也可以了解一下FindBug相关的内容。
最后进行了八皇后问题的编程实践。我和子豪兄一组。
我负责提供解题思路。子豪负责编程。报名活动的时候我已经简单构思了这个程序,但是没有去写代码。我发现虽然之前学过几天JS,回过头来再写JS程序还是想不起来它应该怎么用。所以学了一门语言还是要经常使用。后来听伍斌(本次活动的组织者)、还有金锐分享了还有另外一位参加者分享了他们的解题思路。都非常的好。
我的思路甚至都没有去考虑如何得到完全解。
然后在命名方面连斜线这个英文应该怎么写都不知道。
哈哈,不过没有关系,我本来就比较懒。
最后讲讲体会,参加了这次活动我觉得有不少收获,第一获得的新的知识,比如Mocking技术,又比如SonarQube这样的工具。其次是能够操练自己的编程技术。所谓刀不磨不快,我们天天都在用刀,但是却从来不磨刀。就我而言我是一个很懒的程序员,上班的时候写代码主要是完成任务为主,因此不会去考虑如何全面磨练自己的技术。下班之后,基本上就不会去摸代码了。通过活动的形式,能够给程序员一定的动力,提供一个共同进步的环境。不过我的想法是这样的活动如果能沟做到线上线下结合就更好了。像是编程练习题这样的部分,假设我是一个不能参加现场活动的程序员,自己对这这个题目写了一段程序,如果能与其他人探讨是非常好滴。
BJDP结对编程活动的更多相关文章
- 2017-2018-2 『Java程序设计』课程 结对编程练习_四则运算
相关测试过程截图(JUnit) JudgeTest:对计算及将整数化为分数的测试 SuffixExpressionTest:中缀转后缀的测试 RationalNumberTest:对RationalN ...
- 结对编程--基于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单机版
本小游戏场景来自邹欣老师的<移山之道>一书: "阿超的课都是下午两点钟,这时班上不少的同学都昏昏欲睡,为了让大家兴奋起来,阿超让同学玩一个叫"黄金点"的游戏: ...
- Week4 结对编程
1.照片 1.1 结对编程参与者:李文涛.黎柏文 1.2 展示照片 2.结对编程的优点&缺点 2.1 优点 2.1.1.两人分工合作,减少了工作量 2.1.2.结对编程的伙伴往往能提供不同 ...
- 结对编程——关于Fault、Error、Failure程序设计
一.问题描述: 构造程序,分别是: •不能触发Fault •触发Fault,但是不能触发Error •触发Error,但是不能产生Fai ...
- GUI、模块化与结对编程(homework-03)
摘要: 在本次作业博客里,我将主要阐述作业3的收获.作业3表面是将之前的程序转换为图形界面(之前程序见http://www.cnblogs.com/shone/p/3348372.html),然而本质 ...
随机推荐
- 对XML和YAML文件实现I/O操作
1.文件的打开关闭 XML\YAML文件在OpenCV中的数据结构为FileStorage,打开操作例如: string filename = "I.xml"; FileStora ...
- S2SH商用后台权限系统第二讲
各位博友: 您好!我们今天接着上一讲继续学习S2SH商用后台权限系统,本讲我们重点设计下整个系统所需要的表结构. 用户表:记录用户信息. 角色表:标记用户归属的角色信息. 菜单表:或者叫模块表,记录整 ...
- 生成N个不相等的随机数
近期项目中须要生成N个不相等的随机数.实现的时候.赶工期,又有项目中N非常小(0-100)直接谢了一个最直观的方法: public static List<Integer> randomS ...
- [转]非常好的vsftpd安装于配置
环境:CentOS 5.0 操作系统一.安装:1.安装Vsftpd服务相关部件:[root@KcentOS5 ~]# yum install vsftpd*Dependencies Resolved= ...
- JSON未定义解决办法
json官网:www.json.org json2.js地址:https://github.com/douglascrockford/JSON-js/blob/master/json2.js 引入解决 ...
- ASP.NET 未被授权访问所请求的资源。请考虑授予 ASP.NET 请求标识访问此资源的权限
开发了一个导入TXT文件的功能,执行过程中出错.提示:.....ASP.NET 未被授权访问所请求的资源.请考虑授予 ASP.NET 请求标识访问此资源的权限.ASP.NET 有一个在应用程序没有模拟 ...
- *.pro、*.pri、*.prf、*.prl等四种文件
尽管每次和cmake对比起来,我们总是说 qmake 简单.功能少.但是qmake仍然是一个非常复杂的东西,我想大多人应该和我一样吧: 不是太清楚CONFIG等变量到底如何起作用的 用过的qmak ...
- 编程以外积累: 如何给项目生成类似VS2008的说明文档
1:[下载] 目前微软提供的官方开源工具 Sandcastle结果跑到项目中一看,抬头就来了这么一段: The Sandcastle CodePlex project is no longer und ...
- C# 解决DrawImage绘制图片拉伸产生渐变
ImageAttributes ImgAtt = new ImageAttributes(); ; ImgAtt.SetWrapMode(System.Drawing. ...
- Pyhon之类学习1
#!/usr/bin/python # Filename: class.py __metaclass__=type class Person: def set_name(self,name): sel ...