编辑推荐
适读人群 :程序员、动态语言编程爱好者 《Objective-C编程(第2版)》英文版自出版以来,一直蝉联美国Objective-C编程类图书榜首。
编辑推荐相关书籍《iOS编程(第4版)》《Web开发秘方》(华中科技大学出版社)
内容简介
《Objective-C编程(第2版)》讲述Objective-C编程语言和基本的iOS/Mac开发知识。作者首先从基本的编程概念讲起(变量、条件语句、循环结构等),接着用浅显易懂的语言讲解Objective-C和Foundation的知识,包括Objective-C的基本语法、Foundation常用类、内存管理、常用设计模式等,最后手把手教读者编写完整的、基于事件驱动的iOS/Mac应用。书中还介绍了Objetive-C的高级内容,包括属性、范畴和Block对象等知识。全书篇幅精炼,内容清晰,适合无编程经验的读者入门学习。
作者简介
Aaron Hillegass,曾就职于NeXT公司和Apple公司,他有近20年的Objective-C编程、Cocoa编程和iOS编程教学经验。Aaron与他人合著了《iOS编程》。
2001年,Aaron创办了Big Nerd Ranch公司,开始提供强化式编程课程,为学员提供集中的、没有干扰的学习环境。
Mikey Ward,是Big Nerd Ranch的资深培训师,他有着30多年的编程经验。他是CocoaHeads Atlanta的发起人,该团队致力于组织各种会议,帮助程序员运用Apple框架开发实用的MAC和iOS应用程序。
精彩书评
★好久没看到这么经典的书籍了,一晚上看了三分之一,夜里两点了,还按耐不住心中的兴奋打开电脑写评论。
这本书前面少许篇幅从最基本的C语言讲起来,算是简单回顾C语言知识。然后过渡到oc语言的基础和foundation框架。紧接着就开始介绍一个简单的应用来诠释要讲的概念,接下来就是更高级的block和内存管理之类的高级主题。书很薄,没有一句废话,短小精悍,内容清晰。整本书由浅入深,看着很舒服,比喻和例子都很恰当。确实是不可多得的好书。
最令我感到欣慰的是,这本书翻译的也很好,目前还没有发现很低级的错误,译者一定也很用心,在此谢过!
果断忍痛去京东花75块钱把The Big Nerd Ranch的另一本《iOS编程》也买了!值!
——网友,拉格朗不会日
目录
第1部分 入 门
第1章 读者与本书 3
1.1 C语言和Objective-C语言 3
1.2 如何阅读本书 4
1.3 程序员要走的道路 5
第2章 第一个程序 7
2.1 安装苹果开发者工具 7
2.2 Xcode入门 7
2.3 从哪里开始编写代码 10
2.4 如何运行程序 13
2.5 程序是如何产生的 15
2.6 不要半途而废 16
第2部分 如 何 编 程
第3章 变量与类型 21
3.1 类型 21
3.2 使用变量的程序 22
第4章 if和else 25
4.1 布尔变量 27
4.2 花括号的使用规则 27
4.3 else if 28
4.4 深入学习:条件运算符(三元运算符) 28
第5章 函数 31
5.1 应该在何时使用函数 31
5.2 如何编写并使用函数 31
5.3 函数间是如何协同工作的 33
5.4 标准库 34
5.5 局部变量、帧和栈 35
5.6 作用域 37
5.7 递归 38
5.8 通过调试器查看帧 40
5.9 返回 42
5.10 全局变量与静态变量 43
第6章 格式化字符串 45
6.1 使用格式说明符 46
6.2 转义字符 46
第7章 数字 49
7.1 整数 49
7.2 浮点数 54
7.3 练习 55
第8章 循环 57
8.1 while循环 58
8.2 for循环 59
8.3 break 60
8.4 continue 61
8.5 do-while循环 62
第9章 地址与指针 67
9.1 获取地址 67
9.2 用指针保存地址 68
9.3 通过地址访问数据 69
9.4 不同类型的数据所占用的字节大小 70
9.5 NULL 71
9.6 指针声明的代码规范 72
第10章 通过引用传递 73
10.1 编写通过引用传递参数的函数 74
10.2 不要对NULL取值 75
第11章 结构 77
第12章 堆 81
第3部分 Objective-C与Foundation
第13章 对象 87
13.1 对象 87
13.2 类 87
13.3 创建并使用对象 88
13.4 方法和消息 90
13.5 消息发送 90
13.6 详解消息 91
13.7 类方法与实例方法 92
13.8 发送错误消息 93
13.9 大小写很重要! 94
13.10 Objective-C语言命名习惯 95
13.11 术语小简介 96
第14章 再谈消息 97
14.1 传递实参的消息 97
14.2 多个实参 98
14.3 消息的嵌套发送 100
14.4 alloc和init 100
14.5 向nil发送消息 101
14.6 id 102
第15章 对象与内存 105
15.1 指针和指针的值 105
15.2 内存管理 107
15.3 ARC 108
第16章 NSString 111
16.1 创建NSString实例 111
16.2 NSString方法 112
16.3 类参考 113
16.4 文档的其他部分 117
16.5 练习:寻找更多的NSString方法 118
第17章 NSArray 119
17.1 创建数组 119
17.2 存取数组 120
17.3 遍历数组 123
17.4 NSMutableArray 124
17.5 旧式数组方法 125
第18章 第一个自定义类 129
18.1 存取方法 132
18.2 存取方法的命名规范 133
18.3 self 134
18.4 多个实现文件 134
18.5 类前缀 135
第19章 属性 137
19.1 声明属性 137
19.2 属性的特性 139
19.3 用点号调用存取方法 140
第20章 继承 141
20.1 覆盖方法 144
20.2 Super 145
20.3 继承层次 145
20.4 description方法和%@转换说明 148
第21章 对象实例变量及属性 151
21.1 对象所有权与ARC 153
21.2 创建BNRAsset类 154
21.3 为BNREmployee创建一对多关系 155
第22章 类扩展 161
22.1 隐藏可变属性 162
22.2 头文件与继承 163
22.3 头文件与生成的实例变量 164
第23章 避免内存泄露 165
23.1 强引用循环 167
23.2 弱引用 170
23.3 弱引用的自动置零特性 171
23.4 深入学习:手动引用计数和ARC历史 173
第24章 Collection类 177
24.1 NSSet/NSMutableSet 177
24.2 NSDictionary/NSMutableDictionary 180
24.3 不可修改对象 183
24.4 数组排序 184
24.5 过滤 185
24.6 Collection对象与所有权 186
24.7 C语言基本类型 187
24.8 Collection对象与nil 187
第25章 常量 189
25.1 预处理指令 190
25.2 #include与#import 191
25.3 #define 192
25.4 全局变量 192
25.5 enum 194
25.6 比较#define与全局变量 195
第26章 通过NSString和NSData将数据写入文件 197
26.1 将NSString对象写入文件 197
26.2 NSError 198
26.3 通过NSString读取文件 200
26.4 将NSData对象所保存的数据写入文件 201
26.5 从文件读取数据并存入NSData对象 202
26.6 寻找特别目录 203
第27章 回调 205
27.1 运行循环 206
27.2 目标-动作对 206
27.3 辅助对象 208
27.4 通知 212
27.5 如何选择 213
27.6 回调与对象所有权 214
27.7 深入学习:选择器的工作机制 215
第28章 Block对象 217
28.1 使用Block对象 218
28.2 Block对象 vs. 其他回调 223
28.3 深入学习Block对象 223
第29章 协议 229
调用可选方法 231
第30章 Property List格式 233
第4部分 由事件驱动的应用
第31章 第一个iOS应用 239
31.1 基于图形用户界面的应用 240
31.2 创建iTahDoodle 240
31.3 BNRAppDelegate 242
31.4 Model-View-Controller 243
31.5 应用委托对象 245
31.6 设置视图 246
31.7 在模拟器中运行程序 248
31.8 为按钮关联动作方法 249
31.9 为UITableView对象提供数据 252
31.10 保存并加载数组 255
31.11 深入学习:main()的作用 258
31.12 深入学习:在真机上运行iTahDoole 258
第32章 第一个Cocoa应用 259
32.1 开始开发TahDoodle 260
32.2 在Interface Builder中设置视图 262
32.3 创建关联 270
32.4 实现NSTableViewDataSource 275
32.5 保存并加载数据 276
第5部分 Objective-C高级主题
第33章 init 281
33.1 编写init方法 281
33.2 实现基本的init方法 282
33.3 instancetype类型 283
33.4 使用并检查父类的初始化方法 283
33.5 带实参的init方法 284
33.6 在init中使用存取方法 286
33.7 多个初始化方法 287
33.8 禁用init方法 290
第34章 再谈属性 291
34.1 再谈属性的特性 291
34.2 实现存取方法 294
第35章 KVC 297
第36章 KVO 301
36.1 在KVO中使用context 302
36.2 显式触发通知 303
36.3 独立的属性 303
第37章 范畴 305
第6部分 C语言高级主题
第38章 位运算 309
38.1 按位或 310
38.2 按位与 311
38.3 其他位运算符 313
38.4 用enum定义位掩码 315
38.5 占用更多字节的整数类型 316
第39章 C字符串 317
39.1 char 317
39.2 char * 318
39.3 string literal 321
39.4 C字符串和NSString对象的相互转换 322
39.5 练习 322
第40章 C数组 323
第41章 从命令行运行 329
41.1 命令行参数 330
41.2 命令行的简便方式 333
第42章 Switch语句 335
附录 Objective-C运行时 337
结束语 345
索引 347
前言/序言
Objective-C编程(第2版) 下载 mobi epub pdf txt 电子书 格式