班纳睿

翻译交流QQ群377567540,欢迎加入

所在地区 : 中国-北京-海淀
加入时间 : 2016-11-21
最近登录 : 2017-11-20 下午 19:20
我的母语 : 中文
第一外语 : 英文 ( A5 级)
资格证书 : 大学英语六级

关注的频道

翻译 66 段
翻译 1 段
翻译 838 段
翻译 20 段
翻译 2 段
翻译 4 段
翻译 8 段
翻译 11 段
翻译 6 段
翻译 16 段
翻译 1 段
翻译 60 段

最新动态

班纳睿 翻译了《代码异味:深度嵌套代码》的第 10 段
21小时前
最后一步(与这个代码异味无关) 当我在寻找适合返回  返回类型的方法时,我无意中看到了原始代码。在storedName没有匹配任何它返回了null,这看起来像是一个不错的候选方案。现在我们使用Java 8语法,那么我们使用:
编写干净的测试代码 牢记干净代码的原则,编写可以作为故事阅读的代码。首先,抽取代码到一个子方法里,取个好名字。其次,保持方法简短。这样可以使得你的测试可读性强且易于维护。 经验法则:每当你在一个方法里使用空行隔开、加以注释来编写一段代...
Java 8 Streams。 我们可以这样做: 同时,Java 8改造: getMappedField方法也可以转换成使用Java 8 Streams
…而且这个包含 可选的额外步骤: Java 8 如果你愿意的话,这两个方法都可以使用Java 8的语法。对于它标明我们只关心是否有任何名字匹配给定的名字。
抽取出来的方法没法通过编译,不过这没关系,因为我还要修改方法签名的 – 我想让这个方法当这个名字与 修改方法签名,返回布尔类型值 这样我在原来的方法里可以使用这个返回值 使用返回的布尔值 代码现在通过编译了,并且和原来的代码行为一致。...
另外一个遍历名字的for循环被移到了让我们浏览下实现这种重构的一种方法。当然不止这一种方式,这只是一个例子。 首先,抽取这个内部循环成一个单独的方法。在这个例子中,我们叫它 抽取方法 hasName
使用AssertJ的 你会经常想要检查检索到的bean对象是否和你要创建的bean是否相等。使用普通的让AssertJ在equals检查过程中忽略某些字段。这样你就不必手动检查每一个字段了。 另外,也可以看看这个方法
使用AssertJ来检查返回的POJO对象 AssertJ是一个非常棒的类库,可以用来编写流畅、易读且类型安全的测试断言。相比于Hamcrest来说,我更喜欢它,因为AssertJ会引导你找到适合现有类型的匹配器。 你可以使用Asse...
有了Kotlin,我们可以很明显的减少代码量。定义好的数据类   和 此外,Kotlin还支持命名参数,这样使得构造器的调用可读性很强。这样,我们就完全不需要流畅的setter方法了。 如果你想学习更多关于Kotlin的东西,可以查看...
由于rest-assured支持对象映射,因此我们就只用将对象传给rest-assured即可。Rest-assured会将该对象序列化并将JSON结果放到请求体内。 考虑使用Kotlin替代Java 作为JVM语言的Kotlin可以...
IntelliJ IDEA 可以为你生成这些setter方法。此外,还有一个很方便的快捷键。你只需要写好所需字段(比如 ),然后按 组合键,以及向下箭头,移至“Getter and Setter”,回车,再选择 “Builder”里的...
为POJO使用流畅的Setter方法 不要使用普通的setter方法(有些冗余)或者带有大量参数列表的构造器(难于阅读且容易出错)来创建测试请求。相反的,应该使用流畅的setter方法。
使用POJO类和对象映射 不要滥用字符串拼接或者麻烦的JsonObject来创建JSON作为请求,或者去检查响应的JSON。这样很繁琐,而且还非类型安全且容易出错的。 相反的,创建一个单独的POJO类,让像Jackson一样的Obje...
创建一个RequestSpecification来重用你想用于所有请求的请求配置(包括基础URL,参数,内容类型,调试日志记录等)。
实现测试 开始编码吧!假定,我们要测试一个提供关于博客信息的RESTful服务。该服务提供以下待测资源: 使用Rest-Assured Rest-Assured 提供了一个优秀且流畅的API,可以用来创建针对REST资源的可读性比较强...
呃,有点讨厌。 解决方案2:更好的封装 这里真正的问题是什么? 原先的代码看起来深入到另一个对象的内部,快速浏览,然后只关心顶层对象。移除掉循环语法之后,我们会看到更清晰的内容: 迪米特法则不鼓励我们这样做,因此我们需要考虑一种“命令...
其实这样不好。我想要返回包含该名字的 我能做的最好的就是: 1 2 3 4 5 6 7 8 9 10  
解决方案1:使用Java 8来帮忙 这里箭头形状部分的代码 看起来有点可疑。我已经在之前的博文和谈话中提到过,嵌套的for或者if语句通常都可以用Java的Streams替换掉,而且这样通常能带来更好的可读性。 以前我还一直纳闷,为什...
异味:深层嵌套代码 这段别扭的代码是在一个双重for循环中使用了一个内部的if语句。 这段代码有什么问题?如果我们可以将就其使用单字符来命名的变量的话,读起来倒也没什么问题,而且我们也已经习惯了使用程序化的方式工作 – 我们遍历所有的...
班纳睿 翻译了《代码异味:If语句》的第 3 段
1周前
Java
显示更多