UML精粹

[美] 马丁·福勒

出版时间

2012-05-31

ISBN

9787121170492

评分

★★★★★

标签

设计

书籍介绍
这不是一本教你画出漂亮UML图形的工具书,而是一本教你如何「别被图形骗过」的书。福勒反复强调:UML只是草稿,是思考的草图,而非交付的成品——那一页页被反复涂抹、随时作废的图,恰恰是设计在脑中成形的痕迹。书中真正锋利处,藏在那些反直觉的判断里:把数据与操作它的方法绑在一起、用多态取代条件分支、让子类型无条件履行父类的契约。它不追求大而全,只讲最常被用到的那20%,并始终贯穿敏捷的迭代思想:计划是衡量「改变带来何种后果」的基线,而非对未来的预言。适合已能读图、却困于「为何画了却没改善设计」的开发者;入门者大概率会被它的密度劝退。唯一常被诟病的,是翻译与印刷——若啃英文版,体验会好得多。
AI导读
核心看点
  • 提炼UML核心图型,聚焦高频实用场景
  • 倡导敏捷思想,将UML视为沟通草稿
  • 详解类图与序列图,解析面向对象设计
读者共识
  • 内容精炼直击要害,极具参考价值
  • 中文版翻译质量参差不齐,需甄别
  • 大师之作,适合进阶提升而非初学
精彩摘录
  • "the plan is treated as a baseline to assess the consequences of change ranther than as a prediction of the future"
  • "把UML当做草稿(UML as sketch)"
  • "伪迭代的症状:1、我们正在做一个分析迭代,然后再做两个设计迭代;2、这个迭代的代码bug非常多,但最后我们会消除它"
  • "Barbara Liskov于1988年提出了著名的替换原则:"如果对于类型S的每个对象O1存在类型T的对象O2,那么对于所有定义了T的程序P来说,当用O1替换 O2并且S是T的子类型时,P的行为不会改变。"通俗地讲,就是子类型能够完全替换父类型,而不会让调用父类型的客户程序从行为上有任何改变。 Liskov替换原则 基于这样的一个事实,那就是客户程序在调用某一个类时,实际上是对该类的整个继承体系设定了一个契约,继承体系中的所有类必须遵循这一契约,即前置条件和 后置条件必须保持一致 。这就超越了继承中子类与父类之间形成的is-a关系,为对象继承加上了一把严格的枷锁。显然,Liskov替换原则对"
  • "好的设计的一个主要目标是把改变的影响局部化。数据和访问数据的行为经常一起改变,因此把数据和使用它的行为放在一个地方,是面向对象设计的第一原则。 使用分布控制,创造了更多使用多态而不是使用条件逻辑的机会。"
  • "If someone were to come up to you in a dark alley and say, "Psst, wanna see a UML diagram?" that diagram would probably be a dass diagram. The majority of UML diagrams I see are dass diagrams."
目录
第3版前言
第1版前言
序
为什么要花时间学UML
本书结构

显示全部
用户评论
内容有点旧了,可以作为入门
绝逼不能拿来当入门书籍,太虐了
老马写的书真的是删繁就简,直击要害
老师三四年前推荐的书我终于看了半本。看了类图、序列图的大致定义。反正看完也会忘,等到真的用到的时候,看更细致的书吧。
PM系Q1
Martin Fowler的经典之作,大师的深入浅出的UML的小册子,最受启发的是知道了UML的三种用法,以及作者推崇的把UML当成的草稿的做法,就是作者提到的其它的相关的书。最能看到智慧光芒的那种漫不经心的谦虚中藏着的骄傲。
简洁明快的有效工具书,书很清晰有逻辑,翻译一般
翻译质量一般,只是能看得下去。图片印刷非常糟糕,很多图完全是糊的。内容有一部分还是挺有价值的,但也有很多水分。
无功无过, 本书的内容可以给到 4 星, 但真正拉低均分的是 UML. 从工具的角度来看,这本书也算是提纲挈领了. OOAD 很重要, 但 UML 就有点高不成低不就, 最好的归处是 sketch - blueprint 的折中. 不论是架构还是销售, UML 都不是必需品, 简单的 process - condition - loop 是足够了.
求书
收藏