![]()
编辑推荐 从本书第1版出版到现在已经过去十几年了,它定义了关键的实践准则,已经成为全世界网站和交互设计师工作时的重要参考。新版中,作者进一步细化了他对于产品设计的思考。 同时,这些思考并不仅仅局限于桌面软件上,而是已经扩展到包括移动终端在内的多种应用及其分支中。 成功的交互产品设计比创建条理清晰的代码和鲜明的图形要复杂得多。你在满足企业战略目标的同时,还要满足用户的需求。如果没有一个“有凝聚力、统一的用户体验”来支撑的话,即使是好的内容和精密的技术也不能帮助你平衡这些目标。 创建用户体验看上去极其复杂,有很多方面(可用性、品牌识别、信息架构、交互设计)都需要考虑。本书用清晰的说明和生动的图形分析了其复杂内涵,并着重于工作思路而不是工具或技术。作者给了读者一个关于用户体验开发的总体概念——从企业战略到信息架构需求再到视觉设计。 内容推荐 本书是AJAX之父的经典之作。本书用简洁的语言系统化地诠释了设计、技术和商业融合是最重要的发展趋势。全书共8章,包括关于用户体验以及为什么它如此重要、认识这些要素、战略层、范围层、结构层、框架层、表现层以及要素的应用。 目录 赞誉<br />序言<br />前言<br />读者指南<br />第1章?引言?┊1<br />1.1 什么是设计模式?┊3<br />1.2 Smalltalk MVC中的设计模式?┊4<br />1.3 描述设计模式?┊6<br />1.4 设计模式的编目?┊7<br />1.5 组织编目?┊8<br />1.6 设计模式怎样解决设计问题?┊10<br />1.6.1 寻找合适的对象?┊10<br />1.6.2 决定对象的粒度?┊11<br />1.6.3 指定对象接口?┊11<br />1.6.4 描述对象的实现?┊12<br />1.6.5 运用复用机制?┊15<br />1.6.6 关联运行时和编译时的结构?┊18<br />1.6.7 设计应支持变化?┊19<br />1.7 怎样选择设计模式?┊22<br />1.8 怎样使用设计模式?┊24<br />第2章?实例研究:设计一个文档<br />?编辑器?┊25<br />2.1 设计问题?┊27<br />2.2 文档结构?┊27<br />2.2.1 递归组合?┊28<br />2.2.2 图元?┊29<br />2.2.3 组合模式?┊31<br />2.3 格式化?┊31<br />2.3.1 封装格式化算法?┊31<br />2.3.2 Compositor和Composition?┊32<br />2.3.3 策略模式?┊33<br />2.4 修饰用户界面?┊34<br />2.4.1 透明围栏?┊34<br />2.4.2 MonoGlyph?┊35<br />2.4.3 Decorator模式?┊36<br />2.5 支持多种视感标准?┊37<br />2.5.1 对象创建的抽象?┊37<br />2.5.2 工厂类和产品类?┊38<br />2.5.3 Abstract Factory 模式?┊40<br />2.6 支持多种窗口系统?┊40<br />2.6.1 是否可以使用Abstract Factory<br />模式?┊40<br />2.6.2 封装实现依赖关系?┊41<br />2.6.3 Window和WindowImp?┊43<br />2.6.4 Bridge模式?┊46<br />2.7 用户操作?┊46<br />2.7.1 封装一个请求?┊47<br />2.7.2 Command类及其子类?┊47<br />2.7.3 撤销和重做?┊48<br />2.7.4 命令历史记录?┊49<br />2.7.5 Command模式?┊50<br />2.8 拼写检查和断字处理?┊50<br />2.8.1 访问分散的信息?┊51<br />2.8.2 封装访问和遍历?┊51<br />2.8.3 Iterator类及其子类?┊52<br />2.8.4 Iterator模式?┊55<br />2.8.5 遍历和遍历过程中的动作?┊55<br />2.8.6 封装分析?┊56<br />2.8.7 Visitor类及其子类?┊59<br />2.8.8 Visitor模式?┊60<br />2.9 小结?┊60<br />第3章?创建型模式?┊62<br />3.1 Abstract Factory(抽象工厂)—对象<br />创建型模式?┊66<br />3.2 Builder(生成器)—对象创建型<br />模式?┊74<br />3.3 Factory Method(工厂方法)—对象<br />创建型模式?┊81<br />3.4 Prototype(原型)—对象创建型<br />模式?┊89<br />3.5 Singleton(单件)—对象创建型<br />模式?┊96<br />3.6 创建型模式的讨论?┊102<br />第4章?结构型模式?┊104<br />4.1 Adapter(适配器)—类对象结构型<br />模式?┊106<br />4.2 Bridge(桥接)—对象结构型<br />模式?┊115<br />4.3 Composite(组合)—对象结构型模式?┊123<br />4.4 Decorator(装饰)—对象结构型<br />模式?┊132<br />4.5 Facade(外观)—对象结构型<br />模式?┊139<br />4.6 Flyweight(享元)—对象结构型<br />模式?┊146<br />4.7 Proxy(代理)—对象结构型<br />模式?┊155<br />4.8 结构型模式的讨论 ?┊164<br />4.8.1 Adapter与Bridge?┊164<br />4.8.2 Composite、Decorator与Proxy?┊164<br />第5章?行为型模式?┊166<br />5.1 Chain of Responsibility(职责链)—<br />对象行为型模式?┊167<br />5.2 Command(命令)—对象行为型<br />模式?┊175<br />5.3 Interpreter(解释器)—类行为型<br />模式?┊183<br />5.4 Iterator(迭代器)—对象行为型<br />模式?┊193<br />5.5 Mediator(中介者)—对象行为型<br />模式?┊205<br />5.6 Memento(备忘录)—对象行为型<br />模式?┊212<br />5.7 Observer(观察者)—对象行为型<br />模式?┊219<br />5.8 State(状态)—对象行为型模式?┊227<br />5.9 Strategy(策略)—对象行为型<br />模式?┊234<br />5.10 Template Method(模板方法)—<br /> 类行为型模式?┊242<br />5.11 Visitor(访问者)—对象行为型<br /> 模式?┊246<br />5.12 行为型模式的讨论?┊256<br />5.12.1 封装变化?┊256<br />5.12.2 对象作为参数?┊257<br />5.12.3 通信应该被封装还是被<br />分布?┊257<br />5.12.4 对发送者和接收者解耦?┊258<br />5.12.5 总结?┊260<br />第6章?结论?┊261<br />6.1 设计模式将带来什么?┊262<br />6.1.1 一套通用的设计词汇?┊262<br />6.1.2 书写文档和学习的辅助<br />手段?┊263<br />6.1.3 现有方法的一种补充?┊263<br />6.1.4 重构的目标?┊264<br />6.2 本书简史?┊265<br />6.3 模式界?┊266<br />6.3.1 Alexander的模式语言?┊266<br />6.3.2 软件中的模式?┊267<br />6.4 邀请参与?┊267<br />6.5 临别感想?┊268<br />附录A?词汇表?┊269<br />附录B?图示符号指南?┊273<br />附录 C?基本类?┊277<br />参考文献?┊284 |