《反模式》书评

当前位置:首页 > 网络编程 > > 反模式

出版社:人民邮电
出版日期:2008-1
ISBN:9787115162793
作者:布朗
页数:216页

貌似是面向过程转面向对象

看了下,有点看不下去不知道是不是翻译和文化的原因,本应该是比较有趣和顺畅的,中译本读起来有点晦涩。书的前三分之一都再说一些概念,无非就是“反模式”是开发中糟糕的模式,以及出现反模式的原因,也无非就是懒惰,无知,贪婪,匆忙... 然后就讲了一系列的反模式,其实就是对面向过程开发人员转到面向对象后可能会出现的一些列问题,但是他的每个模式讲的极其简单。其实说到底就是缺少面向对象的思想。

没有经验就不要浪费时间了

怎么说呢?书绝对是好书,可惜的是这真的不适合当作自学或教科书,无愧于它的生产效能大奖阿。如果你没有项目的经验,那么这本书真的不适合你,不要再浪费时间了。每一个反模式,作者都写的简短而有力,如果你有过实际的经验,我相信你读过之后都会有一拍脑袋,醍醐灌顶,恍然大悟的那种感觉。作者深厚的实践功底为这本书灌注了活力,尤其当你还在项目中时,仿佛你正对话于一个经验丰富的架构师,从中的获得可想而知。

值得一读

无论是普通开发人员,还是各级技术管理人员,都值得一读,并以此总结反省自己。唯一的缺点是那些模式的名字取得太晦涩。

李琨看《反模式》

《反模式》这本书终于出版了 1995年,GoF(以Erich Gamma为首的“四人帮”)所著的《设计模式——可复用面向对象软件的基础》(Design Patterns--Elements of Reusable Object Oriented Software)一书出版了。这本书在面向对象编程/设计领域具有划时代的意义。不夸张地说,这本书就是面向对象程序员的红宝书,对于面向对象程序员来说,应该人手一册。没有读过这本书,对于面向对象的理解还停留在很低的层次;读过了这本书,才算真正理解了一些面向对象的精华。很自然,这本书一时间洛阳纸贵,后来还陆续出现了很多以不同语言的实例来解释GoF设计模式的著作,例如《Java设计模式》、《C#设计模式》等等。但是物极必反,任何事情都不能走极端,否则就会造成不良后果。在项目开发不适当的时机使用设计模式,或者在不适当的场合使用设计模式,都会给项目开发带来很多不必要的复杂性,从而增加大量的沟通成本,甚至会严重影响开发效率。以前听说过一个笑话:一个程序员发邮件给Erich Gamma,说在他们最近的一个项目中,他尽力使用了23种GoF设计模式中的21种,还有两种怎么也找不到适用的场合。他感到很苦恼,希望能够得到 Erich的帮助。这个笑话说的当然是一种最极端的情况。尽管如此,大量的实践证明,不当使用(不适当的时机、不适当的场合)设计模式会给项目开发带来很大的麻烦。自己挖坑把自己埋进去,这是很多一知半解的面向对象架构师经常做的事情。言必称架构、言必称模式正是中毒很深的迹象。1998 年出版的《反模式——危机中软件、架构和项目的重构》(AntiPatterns——Refactoring Software, Architectures, and Projects in Crisis)这本书对于滥用设计模式的趋势来说可谓是一剂很及时的解毒良药。反模式其实也是一种模式(正如设计模式是一种模式一样),不过它主要考察的是这种模式所带来的不良后果。这本书系统地总结了很多种类的反模式,以及如何识别出这些反模式并且加以避免。这些反模式涵盖了软件开发、软件架构和项目管理等方面。虽然这本书并不是专门针对设计模式展开讨论的,但是不当使用设计模式很多时候都会导致出现反模式。平衡感是优秀的面向对象架构师应该拥有的素质,《反模式》这本书可以使架构师拥有更好的平衡感。1999年出版的Martin Fowler所著的《重构——改善既有代码的设计》(Refactoring: Improving the Design of Existing Code)这本书对于如何改善现有代码的设计提出了非常具体的解决办法。Martin Fowler在这本书中认为,不应该在最初编码时就使用设计模式,而应该将设计模式作为重构的目标。实际上,设计模式正是Erich等人在对一些开发框架进行重构的过程中总结出来的。后来2004年出版的Joshua Kerievsky所著的《重构与模式》(Refactoring to Patterns)在《重构》的基础上更加详细地探讨了重构与设计模式之间的关系,以及如何在重构的过程中逐渐引入设计模式。2000年出版的Kent Beck所著的《解析极限编程——拥抱变化》(Extreme Programming explained--Embrace change)响亮地提出了简单设计、不为明天而设计的口号,进一步为滥用设计模式的趋势消了毒。我并不将这些书看作是彼此独立的著作,而是把它们看作一个系列,因为它们的内容有很大的关联性。这几本书代表了一个伟大的时代。在这几本书中,国内最晚出版的就是《反模式》,现在它也终于出版了,补上了最后一块拼版。对于国内年轻的面向对象程序员来说,真是一种福气。虽然距离它的英文版出版已经过去了将近10年,现在读起来,其中的内容读起来仍然感觉非常亲切,书中所批判的那些问题在我们周围仍然经常发生。举个例子,尽管《反模式》这本书在1998年就已经指出了委员会设计的严重问题,但是2001年仍然出现了EJB 2这样典型的委员会设计的产品。EJB 2给JavaEE社区带来的危害一直到2005年之后才逐渐消除。为何那些早已指出的问题还会一再重复出现?很显然,这本书说出了一些在软件开发中存在的本质性问题。这是一本非常少见的读第二遍仍然感觉有新意,其价值不会随时间而消退,历久弥新的技术著作。书中的内容今后10年之内都不会过时,这是我的保守估计。

书是好书,但你要有经验

书确实是好书,能开阔眼界。翻译的也还不错,不过由于高级技术人员和普通程序员关注的焦点和领域不同,导致书中谈到的东西和某些术语显得有些陌生,可能这也是一部分读者抱怨翻译的不够好的原因吧。书买了一段时间了,一直没有看,其实我挺喜欢这种200多页的书的,可以速度读完有所收获。可惜的是,当我真的决定花时间来看的时候,由于自己的经验有限,共鸣的不多。这本书其实主要是写给有一定项目管理经验的技术人员的,主要介绍了开发,架构和管理方面的常见反模式和相应的解决方案。建议先阅读过重构一书以后再来看这本。看得吃力的我决定先囫囵吞枣了,然后将其放到已阅的类目中去,等我经验上了新的台阶后再来读,一定会更有收获。虽然物有所值,但相对页数来说,价格是有点贵。

反模式

本来是满心期待的。这本书也快绝版了,在亚马逊第三方“高价”买的。很失望。一个是空,第一部分典型的中国教科书风格。一个是老,软件开发性反模式很大部分聚焦于非面向对象程序员使用面向对象技术产生的问题。还有就是阅读体验非常差,这部分归咎于翻译的原因。比如可以把Architecture By Implication翻译成“实现主导架构”。最大的价值在于提出了这些模式术语,仅此而已。


 反模式下载 精选章节试读


 

农业基础科学,时尚,美术/书法,绘画,软件工程/开发项目管理,研究生/本专科,爱情/情感,动漫学堂PDF下载,。 PDF下载网 

PDF下载网 @ 2024