《Java与模式》

为什么看这本书?

原因很简单,因为它是一本专门用 Java 编程语言讲设计模式的书。

 

书的整体情况

书比较厚,1000 多页,很全面,也不那么啰嗦,零零碎碎花了 10 个小时的时间看完的。讲了很多基础的概念,适合入门。

 

书提到了这些知识模块:

  • 设计模式的历史

  • UML 的介绍

  • 可维护性与复用性的关系

  • 6 大设计原则,以及之间的关系

  • Java 中与设计模式相关的接口与类的概念

  • 6 种创建型设计模式,及相关专题示例

  • 8 种行为型设计模式,及相关专题示例

  • 12 种结构型设计模式,及相关专题示例

ps:为啥这里是 26 种设计模式?因为它的划分比 GoF 的《设计模式》粒度讲得更细。简单工厂单独一节、多了缺省适配器、不可变模式。


适合阅读人群

已入门 Java,结合 Java 学习设计原则、设计模式。


最大的感触

这是我看过的第一本软件开发与哲学理论挂钩的,用中国古代哲学的一些理论去对比软件开发的一些原理,虽然看上去有点扯,但也耳目一新。

 

书中也指出了 JDK 里的一些违反设计原则的反例,Stack 和 Properites 就违反了里氏替换原则。Stack 不当地被设计为 Vector 的子类,一个 Stack 不是一个 Vector;Properties 不当地被设计为 HashTable 的子类,Properties 的 getProperties (key) 和 get(key) 会给不同的结果,而且绕过 Properties 接口用 HashTable 加入任意类型的键值对,会导致 Properties 内部矛盾与崩溃。

 

将本书与 GoF 的《设计模式》进行对比。此书更适合入门,可以清楚地理解各种概念与对应的示例;《设计模式》相对晦涩,适合挖掘设计模式这套理论的部分起源(再往上挖,就要到亚历山大的建筑学中的设计模式了)。

 

此书还有两个特点:在大的分类中,穿插了一些专题,辅助理解;把设计原则与设计模式之间的关系既纵向分类了,也横向联系与对比,组成了网状的知识结构,而非按照目录的树状结构,加深理解。

 


【Java学习资源】整理推荐

 

 


【Java面试题与答案】整理推荐

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值