自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

翻译 84. 在状态中思考

在状态中思考现实世界中的人们对和状态有一种奇怪的关系。今天早上我在本地一家商店停下来准备将咖啡因转换为代码。由于我喜欢的方式是喝拿铁,然而我又找不到牛奶了,于是向店员询问。“抱歉,我们超级没有牛奶了。”对于程序员来说,这是个奇怪的表述。你要么就是有牛奶,要么就是没有。没有牛奶是没有尺度衡量的。也许她是想告诉我他们可能几个星期都没有牛奶了,但结果是一样的:今天只能喝浓咖啡了。

2014-01-29 23:35:34 636

翻译 83. 测试是软件开发的工程严谨度

测试是软件开发的工程严谨度        当软件开发人员尝试向他们的家人、配偶或者其他不懂技术的人解释自己做什么时,喜欢用一些令人痛苦的比喻。我们经常尝试用桥梁建造或者其它的“硬”工程学科。然而,如果我们过度使用这些比喻,它们很快就就一沓糊涂了。结果是软件开发在很多很重要的方面与其它的“硬”工程学科并不相同。        与“硬”工程相比,软件开发对于桥梁建造者来说,就像是建一座桥,然后

2014-01-28 15:35:03 3588

翻译 82. 在睡觉时(或者周末)测试

在睡觉时(或者周末)测试        放松。我不是指海外那些研发中心,在周末加班或者是夜晚换班,而是想让你注意到我们有多少可以使用的计算能力。特别是,有多少我们可以控制来让自己的程序员生活更容易一些。你是不是一直感觉到在工作时间难以得到足够多的计算能力?如果是的话,你的测试服务器在工作时间之外在干什么?很可能的情况是,测试服务器在夜里和周末都是空闲的。你可以利用这一点。        你

2014-01-19 15:07:17 525

翻译 81. 精密地、具体地测试

精密地、具体地测试       测试代码单元所需的、基本的行为而不是测试特定实现的附加的行为是很重要的,但这不应该将其错误地用来作为含糊不清的测试的借口。测试既需要准确,又需要精密。        排序是一个测试很有说明性的例子。实现一个排序算法不是程序员的日常工作中所必需的,但这是一个很为人熟知的概念,而且大多数人知道结果是什么。然而这种漫不经心的熟悉,会让人更难看到若干假定。   

2014-01-14 19:32:27 618

翻译 80. 测试所需行为,而不是附带行为

测试所需行为,而不是附带行为        通常在测试过程中易犯的一个错误是,假定实现方法与你想要测试的完全相同。乍一看这似乎更是美德而不是错误。然而,换种说法问题就更明显了:测试中一个常见的错误是将测试硬绑定到特定的实现方法,而这些实现方法只不过是附带的、与所需的功能无关。        当测试绑定到特定的实现时,对实现做出能兼容所需行为的修改可能导致测试不通过,产生误报。程序员一般是要

2014-01-11 10:55:18 543

翻译 79. 利用代码分析工具

利用代码分析工具        自从走上编程之路,测试的价值就深深地灌入软件开发人员的脑海中了。近年来,单元测试、测试驱动开发、敏捷方法的崛起见证了对在所有开发阶段进行测试的兴趣的激增。然而,测试只是改进代码质量的诸多方法中的一种。        穿越时间的迷雾,追溯到C语言还是新事物的年代,CPU时间和任何种类的存储都很昂贵。考虑到此,第一代的C语言编译器通过移除一些语法分析进行了代码的

2014-01-06 20:20:00 564

翻译 78. 后退一步,自动化,自动化,再自动化

后退一步,自动化,自动化,再自动化        我曾和一些程序员一起工作,他们被要求生成某个模块中代码的行数,于是将文件复制到一个文本处理器中并使用它的“行数统计”的功能。接下来的一周他们也是这样干的。再后面的一周还是这样干的。这很不好。        我曾经工作的项目有一个冗长的部署过程,包括代码签名以及将结果移动到服务器,需要点很多次的鼠标。有人将其自动化了,那个脚本在最终的测试中运

2014-01-05 19:26:26 534

翻译 77. 从说“是”开始

从说“是”开始        最近,我在一家超市到处找一种叫“毛豆”的东西,我只大概知道那是一种蔬菜。但我不确定我应该是蔬菜区、冷藏区还是罐头区找到它。最后我放弃了,找到一名超市的雇员帮我。她也不知道!        那位雇员可以有很多种回答的方式。她可以让我因为不知道在哪里寻找而觉得很无知,或者告诉我一个大概可能的位置,或者干脆告诉我他们没有。但她却将此作为了一个找到答案并获得一名客户的

2014-01-02 22:51:02 531

翻译 76. 单一职责原则

单一职责原则        好的设计的一个最基本的原则就是:        把因相同原因变化的东西聚合到一起,把因不同原因变化的东西分离开来。        这个原则就是“单一职责原则”或者SRP。简短地说,即一个子系统、模块、类甚至是一个函数,就应该因多于一个的原则而变化。一个有着处理业务规则、报告和数据库的方法的类是经典的例子:public class Employee {

2014-01-01 17:17:32 534

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除