Objective-C 是创建 Mac OS X 应用和 iPhone 应用的主要语言,优雅的面向对象编程环境与快速而普及的 C 语言珠联璧合,造就了它的不俗表现。翻开本书你就能感到它的魅力扑面而来。
本书全面而系统地讲述 Objective-C 语言的基础知识和面向对象编程的重要概念,结合实例介绍了 Cocoa 工具包的优秀特性和其中的框架,以及继承、复合、源文件组织、内存管理、对象初始化和类别创建等众多重要的面向对象编程技术。书中还阐述了如何利用 Cocoa 进行数据的保存、检索和操作等。
如果你的 iPhone 开发经验不足,还可结合阅读《 iPhone 开发基础教程》、《 iPhone 开发秘籍》,定能收到意想不到的学习效果。祝你在 iPhone 开发进程中所向披靡!
第1章 启程 1.1 预备知识 1.2 历史背景 1.3 内容简介 1.4 小结第2章 对C的扩展 2.1 最简单的Objective-C程序 2.2 解构Hello Objective-C程序 2.2.1 #import 2.2.2 NSLog()和@“字符串” 2.3 布尔类型 2.3.1 BOOL强大的实用功能 2.3.2 比较 2.4 小结第3章 面向对象编程基础知识 3.1 间接 3.1.1 变量与间接 3.1.2 使用文件名的间接 3.2 在面向对象的编程中使用间接 3.2.1 过程式编程 3.2.2 实现面向对象编程 3.3 学习有关的术语 3.4 Objective-C中的OOP 3.4.1 @interface部分 3.4.2 @implementation部分 3.4.3 实例化对象 3.4.4 扩展Shapes-Object 3.5 小结第4章 继承 4.1 为何使用继承 4.2 继承语法 4.3 继承的工作机制 4.3.1 方法调度 4.3.2 实例变量 4.4 重写方法 4.5 小结第5章 复合 5.1 什么是复合 5.1.1 Car程序 5.1.2 自定义NSLog() 5.2 存取方法 5.2.1 设置发动机的属性 5.2.2 设置轮胎的属性 5.2.3 跟踪汽车的变化 5.3 扩展CarParts程序 5.4 复合还是继承 5.5 小结第6章 源文件组织 6.1 拆分接口和实现部分 6.2 拆分Car程序 6.3 使用跨文件依赖关系 6.3.1 重新编译须知 6.3.2 让汽车开动 6.3.3 导入和继承 6.4 小结第7章 深入了解Xcode 7.1 改变公司名称 7.2 使用编辑器的技巧与诀窍 7.3 在Xcode的帮助下编写代码 7.3.1 首行缩进 7.3.2 代码自动完成 7.3.3 括号匹配 7.3.4 批量编辑 7.3.5 代码导航 7.3.6 emacs不是Mac程序 7.3.7 任意搜索 7.3.8 芝麻开门 7.3.9 书签 7.3.10 集中注意力 7.3.11 开启导航条 7.4 获取信息 7.4.1 研究助手 7.4.2 文档管理程序 7.5 调试 7.5.1 暴力调试 7.5.2 Xcode的调试器 7.5.3 精巧的调试符号 7.5.4 开始调试 7.5.5 检查程序 7.5 备忘表 7.6 小结第8章 Foundation Kit快速教程 8.1 一些有用的数据类型 8.1.1 范围的作用 8.1.2 几何数据类型 8.2 字符串 8.2.1 创建字符串 8.2.2 类方法 8.2.3 关于大小 8.2.4 比较的策略 8.2.5 不区分大小写的比较 8.2.6 字符串内是否还包含别的字符串 8.3 可变性 8.4 集合家族 8.4.1 NSArray 8.4.2 可变数组 8.4.3 枚举“王国” 8.4.4 快速枚举 8.4.5 NSDictionary 8.4.6 使用,但不要扩展 8.5 各种数值 8.5.1 NSNumber 8.5.2 NSValue 8.5.3 NSNull 8.6 示例:查找文件 8.7 小结第9章 内存管理 9.1 对象生命周期 9.1.1 引用计数 9.1.2 对象所有权 9.1.3 访问方法中的保留和释放 9.2 自动释放 9.2.1 所有对象全部入池 9.2.2 自动释放池的销毁时间 9.2.3 自动释放池的工作过程 9.3 Cocoa内存管理规则 9.3.1 临时对象 9.3.2 拥有对象 9.3.3 垃圾回收 9.4 小结第10章 对象初始化 10.1 分配对象 10.2 初始化对象 10.2.1 编写初始化方法 10.2.2 初始化时做什么 10.3 便利初始化函数 10.4 更多部件改进 10.4.1 Tire类的初始化 10.4.2 更新main()函数 10.4.3 清理Car类 10.5 支持垃圾回收风格的Car类清理 10.6 指定初始化函数 10.6.1 子类化问题 10.6.2 改进Tire类的初始化函数 10.6.3 添加AllWeatherRadial类的初始化函数 10.7 初始化函数规则 10.8 小结第11章 特性 11.1 修改特性值 11.1.1 简化接口 11.1.2 简化实现 11.1.3 点表达式的妙用 11.2 特性扩展 11.2.1 名称的使用 11.2.2 只读特性 11.2.3 特性不是万能的 11.3 小结第12章 类别 12.1 创建类别 12.1.1 声明类别 12.1.2 实现类别 12.1.3 类别的局限性 12.1.4 类别的作用 12.2 利用类别分散实现 12.3 使用类别创建前向引用 12.4 非正式协议和委托类别 12.4.1 ITunesFinder项目 12.4.2 委托和类别 12.4.3 响应选择器 12.4.4 选择器的其他应用 12.5 小结第13章 协议 13.1 正式协议 13.1.1 声明协议 13.1.2 采用协议 13.1.3 实现协议 13.2 复制 13.2.1 复制Engine 13.2.2 复制Tire 13.2.3 复制Car 13.2.4 协议和数据类型 13.3 Objective-C 2.0的新特性 13.4 小结第14章 AppKit简介 14.1 构建项目 14.2 构建AppController @interface 14.3 Interface Builder 14.4 布局用户界面 14.5 连接 14.5.1 连接输出口 14.5.2 连接操作 14.6 AppController实现 14.7 小结第15章 文件加载与保存 15.1 属性列表 15.1.1 NSDate 15.1.2 NSData 15.1.3 写入和读取属性列表 15.2 编码对象 15.3 小结第16章 键/值编码 16.1 入门项目 16.2 KVC简介 16.3 路径 16.4 整体操作 16.4.1 中途小憩 16.4.2 流畅地运算 16.5 批处理 16.6 nil仍然可用 16.7 处理未定义的键 16.8 小结第17章 NSPredicate 17.1 创建谓词 17.2 燃料过滤器 17.3 格式说明符 17.4 运算符 17.4.1 比较和逻辑运算符 17.4.2 数组运算符 17.5 SELF足够了 17.6 字符串运算符 17.7 LIKE运算符 17.8 小结附录 从其他语言转向Objective-C
Flashisoneofthebestplatformsfordevelopinggameson.Whetheryouwanttodeployittoweb,d...
《多人在线游戏架构实战:基于C++的分布式游戏编程》内容简介:本书主要讲述大型多人在线游戏开发的框架与编程实践,以实际例子来介
《拉通》内容简介:怎样加快项目或订单的获取和交付,实现高效增长?怎样提高部门之间、员工之间的协作效率或人效?怎样判断并从根
网络伴随我们的时间不算很长,然而因特网的流行和商业化的普及速度却是惊人的,这促使人类活动和社会的每个领域都发生了改变。我
《Java Web程序设计》内容简介:本书以Web开发流程为主线,让读者了解真实的Web开发过程,体会规范化、标准化、专业化的软件开发流
《鲁迅自编文集:华盖集续编》内容简介:本书是鲁迅的一部杂文集,收录了鲁迅在1926年间所写的杂文三十二篇。包括《杂论管闲事·做
《赢家智慧》内容简介:本书是庄恩岳先生的最新力作。在本书中,作者结合亲身管理实践经验及大量鲜活的案例,将自己在工作与生活中
R语言与数据分析实战 本书特色 本书以R语言的“编程属性”为中心,内容涵盖R语言基础理论到实际数据分析,通过分析模型和算法等更实用的示例...
Recentyearshaveseenthedevelopmentofpowerfultoolsforverifyinghardwareandsoftwares...
InjustafewyearsPHPhasrapidlyevolvedfromasmallnichelanguagetoapowerfulwebdevelopm...
Python可以这样学 本书特色 全书共分16章,对Python内部工作原理进行了一定深度的剖析,99%以上的案例代码使用Python 3.5.1实现,也适用于...
多智能体系统及应用 本书特色多智能体和多智能体技术是人工智能领域活跃的研究分支。本书在2014年度“中国智能体及多智能体系统”研讨会的基础上结集而成,全书共分1...
《错觉》内容简介:在人工智能异常火热的今天,很多人认为我们生活在一个不可思议的历史时期,人工智能和大数据可能比工业革命更能
《中国原生文明启示录(上册):国家开端》内容简介:这是一本理清中国前3000年文明史的书。3000年,华夏族群历经了7大时代——五帝
本书为《计算机算法导引——设计与分析》的第2版。书中内容分3部分:第1部分是基本算法,按方法论区分,包含优先策略与分治策略、
WiththisdigitalEarlyReleaseeditionofHeadFirstAndroidDevelopment,yougettheentireb...
谭浩强教授,我国著名计算机教育专家。1934年生,广东台山人。1985年清华大学自动控制系毕业。学生时代曾担任清华大学学生会主席
版式设计的原理已经存在了几个世纪,除平面设计外,建筑设计、时装设计等很多领域都广泛地运用这些原理。本书通过挖掘日常生活中
《OpenCV项目开发实战(原书第2版)》内容简介:本书内容精练、重点突出、示例丰富。作者用幽默风趣、简洁生动的语言,通过实际的编
《新基建》内容简介:疫情全球大流行、世界经济危机和中美贸易摩擦,引发了宏观经济思想与政策的大论战、大变革。我们应该如何战胜