[书籍推荐]《软件设计精要与模式(第2版)》-张逸——提高设计模式及软件设计的方法
《软件设计精要与模式(第2版)》是园子里张逸大大今年4月出版的关于软件设计及设计模式方面的书,我是5月下旬到手,每天晚上看一章,断断续续的到昨天晚上总算把全书28章看完了,感受很深,以往在设计模式以及一些有关软件设计方面很模糊的知识,读完这本书后有了比较清晰的了解。
下面来说下我对这本书的感受吧:
一、书的质量
有关书的封面等信息可以点击文章顶部的书名链接查看,书的纸张是有点黄(保护视力),而且纸张手感也不错,厚度适中,不会出现看书的时候因为书太薄一下子翻2页的情况。
二、书的内容
这本书不同于许多学习相关技术的书,比如:ASP.NET技术内幕、C#高级编程等(这类书主要是讲解技术,介绍技术的知识点),软件设计这本书还是介绍的是一种软件设计及程序设计的一种思想,所以没有那么多术语技术点或者其他东西,看这本书主要还是了解其思想,了解为什么要这么设计,这么设计有什么好处。
同时书的语句读起来很流畅,因为是国人自己写的书,不会出现像翻译的书那样有些语句难以理解的问题,不过也是张逸大大的文笔很牛X,读起来相当舒服,不会有什么理解上的困难。
简单介绍下这本书的一些相关内容(都是我个人的理解可能有些不对,请见谅!),这本书分为5大章:设计之要、.NET框架与设计模式、媒体播放器的设计之旅、设计模式应用实践和.NET体系架构
第一章:详细介绍了软件设计方面的各方面知识点,这一章主要是对软件设计的各种理论介绍,虽然是理论但是却包含了许多作者对软件设计的见解,比那些课本书籍中的大段大段的理论好多了。如果你对软件设计的许多知识没有什么概念的话可以重点看下
第二章:介绍了在.NET框架中,哪些组件或模块使用了设计模式,并对这些设计模式进行讲解,通过介绍.NET框架中的设计模式让读者了解设计模式
第三章:通过编写一个播放器案例来讲解设计模式如何中运用,从开头的简单的功能单一的播放器不断通过使用设计模式来进行重构,将播放器修改成了一个可扩展的功能强大的播放器
第四章:这一章主要是根据一个个项目的实际需求如何使用设计模式进行介绍,同时在这一大章的的最后一小章将几种设计模式进行综合应用
第五章:通过对PetShop进行整体分析,从底层到表示层进行每一层进行讲解,同时还对一些相关知识点进行讲解,比如:ORM、ASP.NET缓存、MSMQ和MVC等,如果对三层架构和工厂模式理解模糊的朋友可以重点看下这一大章,这一大章将三层很好的进行了讲解。
在第二~第四大章的讲解各种设计模式的章节中,有一点很让我感觉这本书很有价值,就是在这本书的每个小章节都是主要介绍一个设计模式,在每小章的开头都会将我们在实际开发中编写的错误代码贴出来,指出这段代码的不足,然后再使用设计模式、各种用例图、类图、时序图等如何一步一步重构这段代码或者模块,这样的好处能更好理解设计模式如何运用。
还有两点我觉得比较好的就是:
1、每章都控制在10-20页内,这样不会因为每章的内容太多看完后无法效果,这样每章10-20页基本上1小时内肯定能看完,看完后花点时间把这章消化掉,后面的可以继续看或者明天再看。
2、每章基本上都是独立的,不会因为前面的章节没看过导致后面的无法看,这样参考起来很方便。
这本书我觉得还可以做为一本有关软件设计方面的参考书:
1、如果对软件设计不了解的可以参考第一大章
2、想对各个设计模式有所了解,或者对某个设计模式不清楚的可以看第二~第四大章
3、对项目分层不了解,或者对项目开发框架不了解的可以看第五大章
总的来说,这本书还是以循序渐进、由浅入深的方式进行讲解,所以不会因为难度太高而难以阅读。
三、书的性价比
这本书的定价为55元RMB,在几大图书购物网上基本可以在4X元买到,如果你肯淘书的话(淘书可以看看我的这篇文章:[书籍推荐]为了自己的钱包,为了自己的时间——分享一下自己的淘书经验)基本上在3X的情况下就能买到,相比国外的引进的书动辄三位数的价格这本书还是很吸引人的。
同时作为国内知名的架构师、微软最有价值专家和InfoQ.NET社区常务编辑……的张逸大大写书还是很有质量保证的,从书名中第二版中也可以看出,这本书的质量也是可以保证的(如果不好也不会出第2版了)
总的来说,我个人认为如果你想对设计模式进行深入理解、对项目结构进行理解、对软件设计有所深入都可以看看这本书,再引用下书中的原话:
本书适用于所有希望提高软件设计水平的程序员、软件工程师,同时,对于软件设计师与系统架构师也具有一定的参考价值。
PS:有关书籍的更详细信息可以点击此处:《软件设计精要与模式(第2版)》(包括目录,序言,推荐及网友评价等)
出处:http://kyo-yo.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。