摘要:接上篇Guava之Joiner和Splitter,本篇将介绍Guava的另外一个有用的对象Optional,这在Java中Google Guava首先给我们提出可空对象模型的。在其他语言如c#这是已经存在很久的模式,并包含在.net类库中Nullable(Int?也是一个可空类型)。Null suc... 阅读全文
guava之Joiner 和 Splitter
2015-01-10 13:10 by 破狼, 34336 阅读, 4 推荐, 收藏, 编辑
摘要:最近在给客户准备一个Guava的分享,所以会陆续的更新关于Guava更多的细节分享。本文将记录Guava中得字符串处理Joiner(连接)和Splitter(分割)处理。Joiner首先我们来看看下面我们经常遇见的一个案例:题目:对于一个如下定义List List list = new Arra... 阅读全文
TDD(测试驱动开发)培训录
2015-01-06 12:20 by 破狼, 6337 阅读, 4 推荐, 收藏, 编辑
摘要:2014年我一直从事在敏捷实践咨询项目,这也是我颇有收获的一年,特别是咨询项目的每一点改变,不管是代码质量的提高,还是自组织团队的建设,都能让我们感到欣慰。涉及人的问题都是复杂问题,改变人,改变一个组织是个更复杂问题,这里可能涉及很多的非技术,非能力问题。在2014年12月我在某企业内部推行TDD(... 阅读全文
java轻量级IOC框架Guice
2014-12-26 00:28 by 破狼, 31582 阅读, 1 推荐, 收藏, 编辑
摘要:Guice是由Google大牛Bob lee开发的一款绝对轻量级的java IoC容器。其优势在于:速度快,号称比spring快100倍。无外部配置(如需要使用外部可以可以选用Guice的扩展包),完全基于annotation特性,支持重构,代码静态检查。简单,快速,基本没有学习成本。Guice和s... 阅读全文
Guava - EventBus(事件总线)
2014-11-30 10:45 by 破狼, 32188 阅读, 3 推荐, 收藏, 编辑
摘要:Guava在guava-libraries中为我们提供了事件总线EventBus库,它是事件发布订阅模式的实现,让我们能在领域驱动设计(DDD)中以事件的弱引用本质对我们的模块和领域边界很好的解耦设计。不再多的废话,直奔Guava EventBus主题。首先Guava为我们提供了同步事件EventB... 阅读全文
Guava - 并行编程Futures
2014-11-21 21:02 by 破狼, 21620 阅读, 0 推荐, 收藏, 编辑
摘要:Guava为Java并行编程Future提供了很多有用扩展,其主要接口为ListenableFuture,并借助于Futures静态扩展。继承至Future的ListenableFuture,允许我们添加回调函数在线程运算完成时返回值或者方法执行完成立即返回。对ListenableFuture添加回... 阅读全文
Nightmare基于phantomjs的自动化测试套件
2014-11-20 19:28 by 破狼, 5932 阅读, 0 推荐, 收藏, 编辑
摘要:今天将介绍一款自动化测试套件名叫nightmare,他是一个基于phantomjs的测试框架,一个基于phantomjs之上为测试应用封装的一套high level API。其API以goto, refresh, click, type…等简单的常用e2e测试动作封装,使得其语义清晰,简洁。其官方在... 阅读全文
TypeScript - Classes
2014-11-19 13:43 by 破狼, 34636 阅读, 6 推荐, 收藏, 编辑
摘要:简介JavaScript语言基于函数和原型链继承机制的方式构建可重用的组件。这对于OO方面编程来说显得比较笨拙。在下一代的JavaScript标准ECMAScript 6为我们提供了基于class base的OO设计方式。在TypeScript中我们也允许使用这种方式,TypeScript将编译为目... 阅读全文
TypeScript - Interfaces
2014-11-17 12:58 by 破狼, 21292 阅读, 5 推荐, 收藏, 编辑
摘要:简介关注于数据值的 ‘shape’的类型检查是TypeScript核心设计原则。这种模式有时被称为‘鸭子类型’或者‘结构子类型化’。。 在TypeScript中接口interfaces的责任就是命名这些类型,而且还是你的代码之间或者是与外部项目代码的契约。初见Interface理解interface... 阅读全文
TypeScript - 基本类型系统
2014-11-13 21:56 by 破狼, 30096 阅读, 3 推荐, 收藏, 编辑
摘要:对于程序来说我们需要基本的数据单元,如:numbers, strings, structures, boolean 等数据结构。在TypeScript中我们支持很多你所期望在JavaScript中所拥有的数据类型系统。Boolean在JavaScript和TypeScript中也具有最基本的逻辑断言... 阅读全文