全书总评
- 书本印刷质量 : 4 星。纸张稍有点薄,当然印刷清楚,文字排版合适,基本没有排版过程中引入的错误,阅读不累眼睛。
- 著作编写质量 : 4 星。各位大牛应编书的需要,针对“软件开发与创新”这个方向,写了点自己的总结。主要包括 : 软件开发的语言、软件开发过程中的测试、软件开发中遇到的其他问题以及如何进行数据可视化。
- 著作翻译质量 : 4 星。都是行内人翻译的作品,本身又都是独立文集,因此翻译的工作量不算太大,因此质量还是可以保证的。
- 代码质量 : 4 星。其实里面没多少代码,只有些代码片断,也是用来说明文章的内容的。对那个语言的熟悉的同学,阅读起来没压力,不熟悉的话就只有跳过了。
读书笔记
C3. 面向对象程序设计 : 对象优于类
- 类关注 : 驱动力是以业务可识别的方式对领域进行建模。就是关注角色 : 人事经理、财务经理等等。
- 对象关注 : 运行时和对象之间的关联与交互将成为设计背后的运动驱动力。就是关注责任 : 人事管理、财务管理等等。
- 对象关注促使设计人员更主动地思考责任的归属是类还是对象,方便将不同的责任赋予同一个对象,例如 : 小的公司人事和财务管理都是一个人。
- 对象关注驱动着对代码的测试。通过不断考虑运行时的场景,从而渐进地构建领域模型,实现领域驱动设计。
- 对象关注使接口得到广泛应用,通过使用 Mock 框架可以实现角色分离的测试。参考 (Mock Roles, Not Objects[^FPMW,04])
- 对象关注促使考虑系统中是否多个对象彼此交互,确保每个对象都有活干,从而构建出一个健康的系统。 ( 不要忙的忙死,闲的闲死 )
程序设计中典型安全就是 Java 的 Calendar API,过多关注类导致笨重;大家喜欢 Joda Time,更加简洁,更加面向对象。