2012年2月3日
摘要: 什么是Proof Build通常程序员在合并代码前,都会自己编译并测试一下。但是这样做有很多局限性: 1. 程序员自己做测试,往往只测试了自己认为需要测的用例,而不是所有可能相关的用例,这样有可能造成一些MR泄露。2. 一处代码修改可能需要在多个产品上验证,而程序员受研发环境或进度的影响,改动在某些产品上没有验证就认为通过了。为了解决这类问题,QuickBuild提供了一个新功能,即Proof Build。Proof Build允许程序员将电脑上还没有CheckIn的代码先Merge到QuickBuild Server上,之后运行编译和自动化测试。这样就可以更全面的验证代码的质量。ProofB 阅读全文
posted @ 2012-02-03 15:45 赵世鑫 阅读(1120) 评论(0) 推荐(0) 编辑
  2012年2月2日
摘要: TCP应该是以太网协议族中被应用最为广泛的协议之一,这里就聊一聊TCP协议中的TimeStamp选项。这个选项是由RFC 1323引入的,该C建议提交于1992年,到今天已经足足有20个年头。不过相信大部分程序猿对这个建议还是相当陌生。要理解为啥需要用TimeStamp选项,还需要从TCP协议的几个基本设计说起。TCP协议的几个设计初衷,以及引发的问题:1. 协议规定收端不需要响应每一个收到的数据报文,只需要收到N个报文后,向发端回复一个ack报文即可。 这样的规定是为了提高通讯的效率,但是也引入了几个问题: A. 发端发出报文后,到底多久能够收到ack是不确定的。 B. 万一ack报文丢失了 阅读全文
posted @ 2012-02-02 18:27 赵世鑫 阅读(4247) 评论(0) 推荐(0) 编辑
  2011年12月5日
摘要: 公司这阵子推出了一个“办公环境评比大赛”的活动,每个组给300块钱经费,在自己的工作场地上做一些装饰,评比“最佳办公环境奖”。中午征集了组内的意见,汇总如下:1. 添置水果,零食;2. 放置一些空气清新剂(非厕所类的),不但要美化视觉,还要美化嗅觉。3. 布置要吸引眼球, 显著增加知名度。4. 金额不超标。讨论出最终方案为:1. 格子间上空悬挂十幅IT伟人(Von Neuman,Tuning,Wybe Dijkstra,Dennis Ritchie,Steve Jobs等)之黑白大照。2. 桌上摆设各色果盘,零食若干。3. 布置香炉一架,终日焚香。4. 准备《送战友》,《运动员进行曲》等背景音 阅读全文
posted @ 2011-12-05 17:32 赵世鑫 阅读(236) 评论(0) 推荐(0) 编辑
  2011年12月2日
摘要: 常用的C/C++代码格式优化工具有两个,一是老牌的indent,再一个就是astyle了。astyle不但可以对C/C++进行格式优化,还可以处理Java和C#。版本一直在保持更新,很不容易,截止2011-12-02,已经升级到V2.02.1。通过命令““astyle -V”可以查询版本信息,最新版本的源代码和可执行文件可以在此处【下载】。网络上已经有很多博客介绍过astyle,如《在VS 2008中使用astyle代码格式化工具》。不过介绍中对astyle的参数存在些许偏差,可能是版本升级后参数发生了变化。通过命令“astyle --help”可以获取所有参数的介绍(帮助信息里还有错字呢,有 阅读全文
posted @ 2011-12-02 14:34 赵世鑫 阅读(9111) 评论(0) 推荐(3) 编辑
  2011年11月30日
摘要: QuickBuild V4.0版本,和V2.x版本比较,最大的变化是首页由“Configures”改成了“DashBoards”页面。V2.x版本的首页上只能显示配置的列表,以及一些简单状态。到了V4.0,不但允许用户创建多个“DashBoard” ,还支持在DashBoard的基础上,增加多个“Gadget”。这样只要打开首页,所有项目的持续集成情况都可以一目了然的显示出来。Gadget,可以理解为持续集成的组件,常用的有:1. Configuretion Tree: 所有参与持续集成的项目列表,集成次数,当前请求数和最近一次集成的状态。2. Build Stats: 关于某一个项目持... 阅读全文
posted @ 2011-11-30 15:02 赵世鑫 阅读(3439) 评论(0) 推荐(0) 编辑
  2011年11月29日
摘要: 之前一直使用的持续集成工具是LuntBuild和Bamboo。LuntBuild一直更新很慢,缺少很多特性;而Bamboo是商用软件,需要用License,升级比较麻烦。经过一段时间的研究,发现QuickBuild是一个比较适合的替代品。QuickBuild是LuntBuild的商用版,虽然是商用版,但是可以免费使用,且没有屏蔽任何功能,只是限制了同时只能管理16个项目,对于规模较小的软件公司,足够用了。关于如何选择持续集成软件,可以参考《持续集成工具的选择》。QuickBuild由PMEase Incorporated开发【官方网站】。官方的wiki中,对QuickBuild的用法有较为详细 阅读全文
posted @ 2011-11-29 16:33 赵世鑫 阅读(4493) 评论(0) 推荐(0) 编辑
摘要: 从第一天接触计算机到现在,已经有十几年时间。很惭愧的是,从来没有写过技术博客。最近几年,培训新员工的任务日益增多,越来越让我感到对知识的积累和记录是多么重要。好事不怕晚,坚持写才是最难的...... 阅读全文
posted @ 2011-11-29 16:00 赵世鑫 阅读(199) 评论(0) 推荐(0) 编辑