作者:知乎用户
链接:https://www.zhihu.com/question/19679933/answer/15827131
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

我因为上《软件架构与设计模式》这门课,所以基本目前市面上比较主流的关于设计模式的书我都或多或少看过。我不知道你的水平如何,以及学习设计模式的目的(是仅仅是想做个入门先还是想直接在现有的工作中用上设计模式),所以无法直接推荐。现在我就简单评价一下我看过的书,由你自己选择。《设计模式》(GOF):不推荐初学者看。这四人都是Phd级别,就是他们最先提出了设计模式,理论水平高,虽然薄薄一本,但是文字相对晦涩,也缺乏容易理解的例子。等你到一定程度了,有兴趣的话可以看一下。《Head First设计模式》:好书,里面的例子生活化,而且非常贴切,读起来比较有乐趣,一步一步推进,逻辑上也很清晰。
书中语言采用的是Java。 如果你不被它的接近700页的厚度吓到的话,属于入门的好书。缺点是缺乏实际工程实践的例子,但是对于你入门,对各种设计模式有个初步的理解,是很有益处的。这本书是我向学生首推的一本关于设计模式的书。《大话设计模式》(程杰):在前几年我刚接手《软件架构与设计模式》这门课的时候,市面上关于设计模式的书还比较少,国内作者出品的同类书籍更少,这本书属于最出名的一本。
书中采用的语言是C#。 前几章介绍了一下OOP/OOD的几个基本原则,如果你对OOP/OOD中的接口,继承,多态这些概念不是很清楚(或者只是知道概念,不知道如何使用的话),可以选择这本书。个人感觉(不一定对),这本书在很大程度上模仿了《Head First》的写作风格,但是有点为了举例而举例的感觉,有些例子比较牵强,无助于理解,反而有可能造成误解。行文上某些时候为了幽默而幽默,效果也不好。另外也基本没有在工程实践中的应用。总体来说,不如《Head First》。《设计模式》(刘伟,清华大学出版社):这本书出来的比较新,说实话我都没读过。不过这本书的定位就是作为设计模式的入门教材,加上清华大学出版社的金字招牌,质量还是非常有保障的。通过我对此书配备的PPT,以及作者网站(刘伟技术博客 ,上面有很多非常好的内容,不仅限于设计模式)的了解,此书应该还是很适合初学者入门之用,里面也有不少实际工程中的例子可供参考。不过限于篇幅,书中的内容更偏重于对设计模式本身的讲解。作者还推出了其他几本书,如和此书配套的《设计模式实训教程》,不过我没读过,所以就不评价了。另外还有《C#设计模式》和《
设计模式的艺术——软件开发人员内功修炼之道 》(此书从书名来看,应该更贴近于工程实践中的应用)。《设计模式:基于C#的工程化实现及扩展》(王翔):如果你对设计模式有了一定的了解,而且想要在工作中使用设计模式的话,这本书是我最推荐的一本书。从书中就可以看出,作者具有相当丰富的工程实践经验,而且不像某些技术人员,他的文字功底也很好,逻辑思维非常清晰,如果放在高校软件学院里,上个相关的研究生课程应该不成问题。而且书中的内容不仅限于介绍GOF的经典设计模式,更强调它们之间的融合,并介绍了其他的一些设计模式,其中关于实践应用的各种案例非常非常非常有参考价值。《设计模式之禅》与《研磨设计模式》:这两本书都没有仔细通篇看过,而且风格与定位都类似,所以放在一起介绍了。这两本书的特点都是作者先在自己的博客上发表了一些关于设计模式的文章,然后再整理起来成为了一本书。如果一时半会找不到书或者不想买的话,可以到网上搜索他们的博客。就我读过的章节来说,我相对地更加推荐《研磨设计模式》这本书,每种设计模式都配有如何在工程中应用的非常详细的讲解,并会对经典的设计模式有一个扩展,找的例子也更加贴切一些。如果你已经对设计模式的基本概念有了了解,想要进一步深入的话,推荐《研磨设计模式》,如果你觉得还想更加扩展对于某个模式的了解,可以再配合着看一下《设计模式之禅》。总结:我的推荐列表如下:入门(《Head First设计模式》/《设计模式》(刘伟)+《设计模式实训教程》(刘伟))→进阶(《研磨设计模式》/《设计模式之禅》)→应用(《设计模式:基于C#的工程化实现及扩展》)→理论提高(GOF《设计模式》)2013-08-10修改======================================================建议每一位对设计模式有兴趣学习的人,先从刘伟的《 设计模式的艺术——软件开发人员内功修炼之道 》看起。这就是最近花时间读了以后的感受。

设计模式入门进阶深入书籍汇总相关推荐

  1. 推荐python入门进阶到大神的书籍

    最近看到好多回答求助一些入门进阶的书籍或者视频 第一部分:python基础的书籍 1)Python入门 <Python编程:从入门到实践> <从零开始学 Python>(第二版 ...

  2. 两万字长文总结,梳理 Java 入门进阶那些事

    两万字长文总结,梳理 Java 入门进阶那些事 先给大家看下完整的思维导图,也是这篇文章的主要脉络. Java从入门到进阶学习路线 主导三个项目,让我独当一面 能力提升你要怎么学 全篇总结 Java ...

  3. 两万字长文总结,梳理 Java 入门进阶哪些事(推荐收藏)

    两万字长文总结,梳理 Java 入门进阶哪些事(推荐收藏) 程序员小跃 2021-01-12 13:19:09  23  收藏 分类专栏: Java学习之路 文章标签: java 数据库 redis ...

  4. 程序员最爱的书籍汇总

    一:73 本免费的语言无关的优秀编程书籍汇总 http://www.iteye.com/news/25107 本文源自Stackoverflow中的一个帖子,汇总了73本免费的.语言无关的优秀的编程书 ...

  5. JAVA进阶学习书籍

    你要的java从入门SE到进阶EE2018书单 https://blog.csdn.net/hexo11/article/details/82807955 你要的python从入门到进阶2018书单 ...

  6. 【图灵】iOS技能书单——入门+进阶+精通

    小编最近在研究一份不错的技能图谱(https://github.com/TeamStuQ/skill-map),遵照图谱精神,小编先做了个iOS技能书单,分享给大家. 老样子,点击书名查看完整目录和试 ...

  7. python资料书-史上最全Python从入门到资深书籍资料分享!

    今天我来为大家分享十本不可错过的Python好书,分别适合入门.进阶到精深三个不同阶段的人来阅读. Python高性能编程 Amazon 五星畅销书. Python 入门进阶必读. Python代码仅 ...

  8. python基础教程书籍推荐-初学者python入门必看书籍推荐(上)

    随着最近Python的热度上涨,学习的人数也在增多,也因为Python这门语言的简短.易学.语言优美的优点,吸引了很多人来学习它.初学者想要入门,就必须先通过阅读,学习大量的理论知识对Python有一 ...

  9. 机器学习入门资源不完全汇总

    机器学习入门资源不完全汇总 基本概念|入门攻略|课程资源|论坛网站|东拉西扯 2014-10-14版, 好东西传送门编辑整理, 原文链接 http://ml.memect.com/article/ma ...

  10. layui入门基础:资源汇总

    layui入门基础:资源汇总 又到了开年会的时刻,过网今溪,很多技术都没来得及归纳和总结,零散的文档都丢在了硬盘和U盘里,今天暂且发一篇资源收纳,补个专栏0文章的空缺. 作为一个相对成熟的前端框架:l ...

最新文章

  1. 课堂练习---统计空格流程图、Jackson图
  2. Winform中实现根据配置文件重新加载ZedGraph属性的实现思路
  3. 初入c++(六)虚函数实现多态,虚析构函数,虚函数表和多态实现机制,纯虚函数。
  4. AMS1117-3.3电源芯片损坏分析
  5. 【z变换】2. z变换的性质
  6. HTML测试报告模板
  7. r语言做绘制精美pcoa图_pca , nmds , pcoa 图添加分组的椭圆
  8. microsoft store 微软应用商店打不开?所有教程都尝试了一遍,居然是因为这个
  9. UI设计师常用工具软件都有哪些,UI设计工具盘点
  10. Linux 磁盘满了如何扩容
  11. Tomcat 的部署+虚拟主机的配置
  12. svd在matlab中的使用,matlab - 使用SVD在MATLAB中压缩图像 - 堆栈内存溢出
  13. 使用 NodeBB 搭建的中文社区索引
  14. 2020年10月份电脑选购计划
  15. PHP微信公众平台开发高级篇--群发接口
  16. 8c sql手册 五
  17. 全面了解三极管——三极管基本参数总结
  18. 青山不语,碧海无痕,数字山河间的中国脊梁
  19. 如何学习——让你的学习高效率
  20. linux db2扩展表空间,Linux/ext3:DB2扩展表空间导致的Latch等待现象1

热门文章

  1. 虚拟机修改默认SSH端口号为10022
  2. 宝塔面板安装和使用教程(详细)
  3. 数值分析--第二章--追赶法
  4. 数值分析·学习 | 平方根法和追赶法matlab实现
  5. python:库文件整理
  6. 毕业学生,C语言面试十大常见问题,提升面试分数
  7. 多智能体强化学习(一) IQL、VDN、QMIX、QTRAN算法详解
  8. EMC之 “不整改好别回来了”
  9. 有限元计算软件Fenics安装使用笔记(1)
  10. [Visio 2007]解决 “类图”调整宽度后,换行的文字溢出的问题(如何调整“类图”的高度?)