Cocoa设计模式

Cocoa设计模式
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] , [美] ,
2010-10
版次: 1
ISBN: 9787111317401
定价: 59.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 336页
原版书名: Cocoa Design Patterns
33人买过
  • 《Cocoa设计模式》介绍了Cocoa框架中用到的面向对象的设计模式。Cocoa框架是Apple的面向对象开发环境,用来开发:MacOSX的应用程序。主要的开发语言为Objective-C,它是Mac下进行开发必不可少的开发环境。
    《Cocoa设计模式》共分为5个部分,按照由浅入深、循序渐进的原则详细介绍各种设计模式在Cocoa中的应用,并且提供了丰富的代码示例,方便读者学习《Cocoa设计模式》内容。《Cocoa设计模式》最后还包含一个附录,提供了使用和理解Cocoa与设计模式的其他参考资料。
    《Cocoa设计模式》适合于正在使用或者考虑使用MacOSx上的AppleCocoa框架或者iPhone和iPodtouch上的CocoaTouch框架的读者阅读。《Cocoa设计模式》中的许多信息同样也适用于Linux和Windows上的开源项目GNUStep。另外,Objective.C、C语言、C++和Java程序员都可以从《Cocoa设计模式》中获益。 ErikM.Buck于1993年成立EMB&Associates公司,并利用NeXT/Apple的软件技术逐渐成长为航空和娱乐软件领域的领导者,该技术已演变为苹果公司的Cocoa框架。他对Cocoa的邮件列表和技术论坛均有很多贡献,同时还参与编写了《CocoaProgramming》。
    DonaldA.Yacktman自1991年已开始专门使用Cocoa及其前身技术OpenStep和NextStep。他参与编写了《CocoaProgramming》,是Stepwise网站的作者和编辑。目前他是一位独立的咨询师,协助C0coa和iPhone应用程序的设计和实施工作。 译者序

    前言
    作者简介
    第一部分一种可控制一切的模式
    第1章模型-视图-控制器
    1.1Cocoa中的MVC
    1.1.1模型子系统的核心数据支持
    1.1.2视图子系统的应用程序工具箱支持
    1.1.3控制器子系统的应用程序工具箱支持
    1.1.4Cocoa的文本架构
    1.1.5Cocoa的文档架构
    1.1.6Cocoa编写脚本的能力
    1.1.7Cocoa的偏好窗格架构
    1.1.8Quart2Composei。的架构
    1.1.9QTKit的架构
    1.2小结

    第2章分析和应用MVC
    2.1非MVC设计
    2.2MVC设计
    2.3小结

    第二部分基础模式
    第3章两阶段创建
    3.1动机
    3.2解决方案
    3.2.1分区
    3.2.2初始化已分配的内存
    3.2.3实现指定的初始化方法
    3.2.4在初始化方法中使用分区
    3.2.5创建临时实例
    3.3Cocoa中的示例
    3.4后果

    第4章模板方法
    4.1动机
    4.2解决方案
    4.2.1默认模板方法
    4.2.2利用模板方法进行设计
    4.3Cocoa中的示例
    4.3.1使用-drawRect:模板方法
    4.3.2其他Cocoa模板方法
    4.4后果

    第5章动态创建
    5.1动机
    5.2解决方案
    5.2.1使用动态创建
    5.2.2用动态创建实现插件架构
    5.3Cocoa中的示例
    5.4后果

    第6章类别
    6.1动机
    6.2解决方案
    6.2.1非正式协议
    6.2.2匿名类别
    6.2.3代码组织
    6.2.4何时使用类别与子类化
    6.3Cocoa中的示例
    6.3.1把类别用于组织
    6.3.2把类别用于非IE式协议
    6.3.3把类别用于框架划分
    6.4后果
    6.4.1方法冲突
    6.4.2替换方法
    6.4.3软件维护

    第7章匿名类型和异类容器
    7.1动机
    7.2解决方案
    7.2.1匿名类型
    7.2.2赋值
    7.2.3异类容器
    7.3Cocoa中的示例
    7.4后果

    第8章枚举器
    8.1动机
    8.2解决方案
    8.2.1使用枚举器对象
    8.2.2使用快速枚举
    8.2.3创建自定义的枚举器
    8.2.4实现快速枚举
    8.2.5内部枚举
    8.3Cocoa中的示例
    8.4后果

    第9章执行选择器和延迟执行
    9.1动机
    9.2解决方案
    9.2.1延迟执行
    9.2.2Objective-C消息发送的实现
    9.3Cocoa中的示例
    9.4后果

    第10章访问器
    10.1动机
    10.2解决方案
    10.2.1引用计数的内存管理
    10.2.2管理保留计数的访问器
    10.2.3将内存管理限制在访问器中
    10.2.4可变性
    10.2.5NSKeyValueCoding
    10.2.6InterfaceBuilder插座变量
    10.2.7Obiective-C2.0的属性
    10.3Cocoa中的示例
    10.4后果

    第11章归档和解档
    11.1动机
    11.2解决方案
    11.3Cocoa中的示例
    11.3.1实现NSCoding协议
    11.3.2编码和解码非对象类型
    11.3.3对象替换
    11.3.4nib意识
    11.4后果

    第12章复制
    12.1动机
    12.2解决方案
    12.3Cocoa中的示例
    12.3.1实现NSCopying
    12.3.2实现深复制
    12.3.3实现NSMutableCopying
    12.3.4必需的复制
    12.3.5复制Objective-C2.0的属性
    12.3.6避免使用NSCopyObject()
    12.4后果

    第三部分主要通过解耦来变得更强大的模式
    第13章单例
    13.1动机
    13.2解决方案
    13.2.1封装共享资源
    13.2.2创建和访问共享实例
    13.2.3控制实例化
    13.2.4取消分配
    13.2.5确定是否创建了单例
    13.2.6线程安全
    13.2.7与InterfaceBuilder协作
    13.3Cocoa中的示例
    13.4后果

    第14章通知
    14.1动机
    14.2解决方案
    14.2.1MYNotification类
    14.2.2MYNotificationCenter类
    14.2.3联合存储
    14.3Cocoa中的示例
    14.3.1全局通知名称
    14.3.2“Will”和“Did”通知
    14.3.3同步通知与异步通知
    14.3.4分布式通知
    14.4后果

    第15章委托
    15.1动机
    15.2解决方案
    15.2.1实现委托支持
    15.2.2实现委托
    15.2.3数据源
    15.3Cocoa中的示例
    15.4后果

    第16章层次结构
    16.1动机
    16.2解决方案
    16.2.1实现层次结构
    16.2.2Cocoa视图层次结构
    16.2.3视图层次结构中的坐标系统
    16.2.4浏览视图层次结构
    16.3Cocoa中的示例
    16.4后果

    第17章插座变量、目标和动作
    17.1动机
    17.2解决方案
    17.2.1插座变量
    17.2.2目标
    17.2.3动作
    17.2.4动作和响应者链
    17.3Cocoa中的示例
    17.4后果

    第18章响应者链
    18.1动机
    18.2解决方案
    18.2.1术语
    18.2.2响应者链
    18.2.3扩展的响应者链
    18.2.4遍历扩展的响应者链
    18.2.5插入对象到响应者链中
    18.2.6利用响应者链
    18.3Cocoa中的示例
    18.4后果

    第19章联合存储
    19.1动机
    19.2解决方案
    19.3Cocoa中的示例
    19.3.1引用计数的内存管理
    19.3.2键值编码
    19.4后果

    第20章调用
    20.1动机
    20.2解决方案
    20.2.1方法签名
    20.2.2使用NSInvocation对象
    20.2.3使用计时器
    20.2.4延迟的消息发送
    20.3Cocoa中的示例
    20.4后果

    第21章原型
    21.1动机
    21.2解决方案
    21.3Cocoa中的示例
    21.3.1使用MYLabeledBarCell实例作为原型
    21.3.2使用MYColorLabeledBarCell实例作为原型
    21.4后果

    第22章享元
    22.1动机
    22.2解决方案
    22.3Cocoa中的示例
    22.3.1封装非对象值
    22.3.2减少存储需求
    22.3.3替代其他对象
    22.4后果

    第23章装饰器
    23.1动机
    23.2解决方案
    23.3Cocoa的示例
    23.4后果

    第四部分主要用于隐藏复杂性的模式
    第24章包
    24.1动机
    24.2解决方案
    24.3Cocoa中的示例
    24.4后果

    第25章类簇
    25.1动机
    25.2解决方案
    25.3Cocoa中的示例
    25.3.1子类化类簇的公共接口类
    25.3.2NSString的MYShortStrhag子类
    25.3.3从MYShortstring获得的经验教训
    25.4后果

    第26章外观
    26.1动机
    26.2解决方案
    26.3Cocoa中的示例
    26.3.1文本外观
    26.3.2图像外观
    26.3.3持久存储外观
    26.3.4用户交互外观
    26.4后果

    第27章代理和转发
    27.1动机
    27.2解决方案
    27.2.1实现转发
    27.2.2代理
    27.2.3高阶消息
    27.3Cocoa中的示例
    27.4后果

    第28章管理者
    28.1动机
    28.2解决方案
    28.2.1扩展单例模式
    28.2.2添加其他管理者特性
    28.3Cocoa中的示例
    28.4后果

    第29章控制器
    29.1动机
    29.2解决方案
    29.2.1MYShapeDraw模型子系统
    29.2.2MYShapeDraw视图子系统
    29.2.3MYShapeEditor控制器子系统
    29.2.4扩展MYShapeDraw视图子系统以进行编辑
    29.2.5重新设计和泛化解决方案
    29.3Cocoa中的示例
    29.4后果

    第五部分模式应用的实用工具
    第30章核心数据模型
    30.1模型子系统的角色
    30.2核心数据的术语
    30.2.1实体
    30.2.2特性
    30.2.3关系
    30.2.4属性
    30.3核心数据内模式之间的协作
    ……
    附录资源
  • 内容简介:
    《Cocoa设计模式》介绍了Cocoa框架中用到的面向对象的设计模式。Cocoa框架是Apple的面向对象开发环境,用来开发:MacOSX的应用程序。主要的开发语言为Objective-C,它是Mac下进行开发必不可少的开发环境。
    《Cocoa设计模式》共分为5个部分,按照由浅入深、循序渐进的原则详细介绍各种设计模式在Cocoa中的应用,并且提供了丰富的代码示例,方便读者学习《Cocoa设计模式》内容。《Cocoa设计模式》最后还包含一个附录,提供了使用和理解Cocoa与设计模式的其他参考资料。
    《Cocoa设计模式》适合于正在使用或者考虑使用MacOSx上的AppleCocoa框架或者iPhone和iPodtouch上的CocoaTouch框架的读者阅读。《Cocoa设计模式》中的许多信息同样也适用于Linux和Windows上的开源项目GNUStep。另外,Objective.C、C语言、C++和Java程序员都可以从《Cocoa设计模式》中获益。
  • 作者简介:
    ErikM.Buck于1993年成立EMB&Associates公司,并利用NeXT/Apple的软件技术逐渐成长为航空和娱乐软件领域的领导者,该技术已演变为苹果公司的Cocoa框架。他对Cocoa的邮件列表和技术论坛均有很多贡献,同时还参与编写了《CocoaProgramming》。
    DonaldA.Yacktman自1991年已开始专门使用Cocoa及其前身技术OpenStep和NextStep。他参与编写了《CocoaProgramming》,是Stepwise网站的作者和编辑。目前他是一位独立的咨询师,协助C0coa和iPhone应用程序的设计和实施工作。
  • 目录:
    译者序

    前言
    作者简介
    第一部分一种可控制一切的模式
    第1章模型-视图-控制器
    1.1Cocoa中的MVC
    1.1.1模型子系统的核心数据支持
    1.1.2视图子系统的应用程序工具箱支持
    1.1.3控制器子系统的应用程序工具箱支持
    1.1.4Cocoa的文本架构
    1.1.5Cocoa的文档架构
    1.1.6Cocoa编写脚本的能力
    1.1.7Cocoa的偏好窗格架构
    1.1.8Quart2Composei。的架构
    1.1.9QTKit的架构
    1.2小结

    第2章分析和应用MVC
    2.1非MVC设计
    2.2MVC设计
    2.3小结

    第二部分基础模式
    第3章两阶段创建
    3.1动机
    3.2解决方案
    3.2.1分区
    3.2.2初始化已分配的内存
    3.2.3实现指定的初始化方法
    3.2.4在初始化方法中使用分区
    3.2.5创建临时实例
    3.3Cocoa中的示例
    3.4后果

    第4章模板方法
    4.1动机
    4.2解决方案
    4.2.1默认模板方法
    4.2.2利用模板方法进行设计
    4.3Cocoa中的示例
    4.3.1使用-drawRect:模板方法
    4.3.2其他Cocoa模板方法
    4.4后果

    第5章动态创建
    5.1动机
    5.2解决方案
    5.2.1使用动态创建
    5.2.2用动态创建实现插件架构
    5.3Cocoa中的示例
    5.4后果

    第6章类别
    6.1动机
    6.2解决方案
    6.2.1非正式协议
    6.2.2匿名类别
    6.2.3代码组织
    6.2.4何时使用类别与子类化
    6.3Cocoa中的示例
    6.3.1把类别用于组织
    6.3.2把类别用于非IE式协议
    6.3.3把类别用于框架划分
    6.4后果
    6.4.1方法冲突
    6.4.2替换方法
    6.4.3软件维护

    第7章匿名类型和异类容器
    7.1动机
    7.2解决方案
    7.2.1匿名类型
    7.2.2赋值
    7.2.3异类容器
    7.3Cocoa中的示例
    7.4后果

    第8章枚举器
    8.1动机
    8.2解决方案
    8.2.1使用枚举器对象
    8.2.2使用快速枚举
    8.2.3创建自定义的枚举器
    8.2.4实现快速枚举
    8.2.5内部枚举
    8.3Cocoa中的示例
    8.4后果

    第9章执行选择器和延迟执行
    9.1动机
    9.2解决方案
    9.2.1延迟执行
    9.2.2Objective-C消息发送的实现
    9.3Cocoa中的示例
    9.4后果

    第10章访问器
    10.1动机
    10.2解决方案
    10.2.1引用计数的内存管理
    10.2.2管理保留计数的访问器
    10.2.3将内存管理限制在访问器中
    10.2.4可变性
    10.2.5NSKeyValueCoding
    10.2.6InterfaceBuilder插座变量
    10.2.7Obiective-C2.0的属性
    10.3Cocoa中的示例
    10.4后果

    第11章归档和解档
    11.1动机
    11.2解决方案
    11.3Cocoa中的示例
    11.3.1实现NSCoding协议
    11.3.2编码和解码非对象类型
    11.3.3对象替换
    11.3.4nib意识
    11.4后果

    第12章复制
    12.1动机
    12.2解决方案
    12.3Cocoa中的示例
    12.3.1实现NSCopying
    12.3.2实现深复制
    12.3.3实现NSMutableCopying
    12.3.4必需的复制
    12.3.5复制Objective-C2.0的属性
    12.3.6避免使用NSCopyObject()
    12.4后果

    第三部分主要通过解耦来变得更强大的模式
    第13章单例
    13.1动机
    13.2解决方案
    13.2.1封装共享资源
    13.2.2创建和访问共享实例
    13.2.3控制实例化
    13.2.4取消分配
    13.2.5确定是否创建了单例
    13.2.6线程安全
    13.2.7与InterfaceBuilder协作
    13.3Cocoa中的示例
    13.4后果

    第14章通知
    14.1动机
    14.2解决方案
    14.2.1MYNotification类
    14.2.2MYNotificationCenter类
    14.2.3联合存储
    14.3Cocoa中的示例
    14.3.1全局通知名称
    14.3.2“Will”和“Did”通知
    14.3.3同步通知与异步通知
    14.3.4分布式通知
    14.4后果

    第15章委托
    15.1动机
    15.2解决方案
    15.2.1实现委托支持
    15.2.2实现委托
    15.2.3数据源
    15.3Cocoa中的示例
    15.4后果

    第16章层次结构
    16.1动机
    16.2解决方案
    16.2.1实现层次结构
    16.2.2Cocoa视图层次结构
    16.2.3视图层次结构中的坐标系统
    16.2.4浏览视图层次结构
    16.3Cocoa中的示例
    16.4后果

    第17章插座变量、目标和动作
    17.1动机
    17.2解决方案
    17.2.1插座变量
    17.2.2目标
    17.2.3动作
    17.2.4动作和响应者链
    17.3Cocoa中的示例
    17.4后果

    第18章响应者链
    18.1动机
    18.2解决方案
    18.2.1术语
    18.2.2响应者链
    18.2.3扩展的响应者链
    18.2.4遍历扩展的响应者链
    18.2.5插入对象到响应者链中
    18.2.6利用响应者链
    18.3Cocoa中的示例
    18.4后果

    第19章联合存储
    19.1动机
    19.2解决方案
    19.3Cocoa中的示例
    19.3.1引用计数的内存管理
    19.3.2键值编码
    19.4后果

    第20章调用
    20.1动机
    20.2解决方案
    20.2.1方法签名
    20.2.2使用NSInvocation对象
    20.2.3使用计时器
    20.2.4延迟的消息发送
    20.3Cocoa中的示例
    20.4后果

    第21章原型
    21.1动机
    21.2解决方案
    21.3Cocoa中的示例
    21.3.1使用MYLabeledBarCell实例作为原型
    21.3.2使用MYColorLabeledBarCell实例作为原型
    21.4后果

    第22章享元
    22.1动机
    22.2解决方案
    22.3Cocoa中的示例
    22.3.1封装非对象值
    22.3.2减少存储需求
    22.3.3替代其他对象
    22.4后果

    第23章装饰器
    23.1动机
    23.2解决方案
    23.3Cocoa的示例
    23.4后果

    第四部分主要用于隐藏复杂性的模式
    第24章包
    24.1动机
    24.2解决方案
    24.3Cocoa中的示例
    24.4后果

    第25章类簇
    25.1动机
    25.2解决方案
    25.3Cocoa中的示例
    25.3.1子类化类簇的公共接口类
    25.3.2NSString的MYShortStrhag子类
    25.3.3从MYShortstring获得的经验教训
    25.4后果

    第26章外观
    26.1动机
    26.2解决方案
    26.3Cocoa中的示例
    26.3.1文本外观
    26.3.2图像外观
    26.3.3持久存储外观
    26.3.4用户交互外观
    26.4后果

    第27章代理和转发
    27.1动机
    27.2解决方案
    27.2.1实现转发
    27.2.2代理
    27.2.3高阶消息
    27.3Cocoa中的示例
    27.4后果

    第28章管理者
    28.1动机
    28.2解决方案
    28.2.1扩展单例模式
    28.2.2添加其他管理者特性
    28.3Cocoa中的示例
    28.4后果

    第29章控制器
    29.1动机
    29.2解决方案
    29.2.1MYShapeDraw模型子系统
    29.2.2MYShapeDraw视图子系统
    29.2.3MYShapeEditor控制器子系统
    29.2.4扩展MYShapeDraw视图子系统以进行编辑
    29.2.5重新设计和泛化解决方案
    29.3Cocoa中的示例
    29.4后果

    第五部分模式应用的实用工具
    第30章核心数据模型
    30.1模型子系统的角色
    30.2核心数据的术语
    30.2.1实体
    30.2.2特性
    30.2.3关系
    30.2.4属性
    30.3核心数据内模式之间的协作
    ……
    附录资源
查看详情
相关图书 / 更多
Cocoa设计模式
Consciousness: Confessions of a Romantic Reductionist
Koch;Christof
Cocoa设计模式
CorelDRAW童装款式绘制
贺小红;曾四英;文观秀;陈满红
Cocoa设计模式
Convey指引导管的操作及冠脉介入治疗病例解析
李永乐,吴成程,孟新民
Cocoa设计模式
Coding with Basher: Code Your Own Website
The Coder School
Cocoa设计模式
CorelDRAW平面广告设计(第2版职业教育校企合作新形态富资源教材)
杨雪飞、张秀生 编
Cocoa设计模式
ComputerCodingScratchMadeEasy进口儿童绘本
Carol Vorderman
Cocoa设计模式
Conversations with Cezanne
Doran;Michael;Cochran;Julie Lawrence;Shiff;Richard
Cocoa设计模式
Collected Poems
Achebe;Chinua
Cocoa设计模式
Cool Panda少儿汉语教学资源·K级·水果沙拉
Cool Panda 编写组
Cocoa设计模式
Collins法英汉会话轻松学
英国柯林斯出版社 编
Cocoa设计模式
CorelDRAW 2022案例实战全视频教程
王红卫
Cocoa设计模式
Colors versus Shapes
Boldt;Mike;Boldt;Mike
您可能感兴趣 / 更多
Cocoa设计模式
归属感:如何通过社群获得商业竞争优势
[美]大卫·斯平克斯(David Spinks) 著;颉腾文化 出品
Cocoa设计模式
雪花的故事(用照片展示雪花的秘密,为你揭开冬日奇景的奥秘)
[美]马克·卡西诺[美]乔恩·尼尔森
Cocoa设计模式
进阶书系-国际史的技艺
[美] 马克·特拉亨伯格
Cocoa设计模式
杜甫传
[美]弗洛伦斯.艾思柯
Cocoa设计模式
神奇的数字零:从数字0开始的极简数学史和人类发展史
[美]查尔斯·塞弗(Charles Seife)著 杨杨立汝 译
Cocoa设计模式
爵士乐史(精装本)
[美]泰德·乔亚 著
Cocoa设计模式
环境的科学 (平装版)
[美]威廉·坎宁安 后浪
Cocoa设计模式
美利坚在燃烧:20世纪60年代以来的警察暴力与黑人反抗
[美]伊丽莎白·欣顿 著 胡位钧 译
Cocoa设计模式
数学侦探 游乐园里的古怪笑脸
[美]丹尼尔·肯尼 艾米丽·博艾尔 著 刘玙婧、王婧 译;小博集出品
Cocoa设计模式
读懂经济学:提升“财商”、塑造价值观念的经济学读本,一本书参破瞬息万变的经济世界底层逻辑!
[美]霍华德·亚鲁斯 著;赵善江 译;斯坦威 出品
Cocoa设计模式
儒教中国及其现代命运(三部曲)
[美]列文森 作者;[中]季剑青 译者
Cocoa设计模式
逃家小兔成长绘本系列
[美]玛格丽特.怀兹.布朗