编辑推荐

适读人群:程序员、动态语言编程爱好者
  《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对象等知识。《Objective-C编程(第2版)》篇幅精炼,内容清晰,适合无编程经验的读者入门学习。

作者简介

  AaronHillegass,曾就职于NeXT公司和Apple公司,他有近20年的Objective-C编程、Cocoa编程和iOS编程教学经验。Aaron与他人合著了《iOS编程》。
  2001年,Aaron创办了BigNerdRanch公司,开始提供强化式编程课程,为学员提供集中的、没有干扰的学习环境。

  MikeyWard,是BigNerdRanch的资深培训师,他有着30多年的编程经验。他是CocoaHeadsAtlanta的发起人,该团队致力于组织各种会议,帮助程序员运用Apple框架开发实用的MAC和iOS应用程序。

精彩书评

  ★好久没看到这么经典的书籍了,一晚上看了三分之一,夜里两点了,还按耐不住心中的兴奋打开电脑写评论。
  这《Objective-C编程(第2版)》前面少许篇幅从最基本的C语言讲起来,算是简单回顾C语言知识。然后过渡到oc语言的基础和foundation框架。紧接着就开始介绍一个简单的应用来诠释要讲的概念,接下来就是更高级的block和内存管理之类的高级主题。书很薄,没有一句废话,短小精悍,内容清晰。整《Objective-C编程(第2版)》由浅入深,看着很舒服,比喻和例子都很恰当。确实是不可多得的好书。
  最令我感到欣慰的是,这《Objective-C编程(第2版)》翻译的也很好,目前还没有发现很低级的错误,译者一定也很用心,在此谢过!
  果断忍痛去京东花75块钱把TheBigNerdRanch的另一本《iOS编程》也买了!值!
  ——网友,拉格朗不会日

目录

第1部分入门
第1章读者与《Objective-C编程(第2版)》3
1.1C语言和Objective-C语言3
1.2如何阅读《Objective-C编程(第2版)》4
1.3程序员要走的道路5
第2章第一个程序7
2.1安装苹果开发者工具7
2.2Xcode入门7
2.3从哪里开始编写代码10
2.4如何运行程序13
2.5程序是如何产生的15
2.6不要半途而废16
第2部分如何编程
第3章变量与类型21
3.1类型21
3.2使用变量的程序22
第4章if和else25
4.1布尔变量27
4.2花括号的使用规则27
4.3elseif28
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.1while循环58
8.2for循环59
8.3break60
8.4continue61
8.5do-while循环62
第9章地址与指针67
9.1获取地址67
9.2用指针保存地址68
9.3通过地址访问数据69
9.4不同类型的数据所占用的字节大小70
9.5NULL71
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.10Objective-C语言命名习惯95
13.11术语小简介96
第14章再谈消息97
14.1传递实参的消息97
14.2多个实参98
14.3消息的嵌套发送100
14.4alloc和init100
14.5向nil发送消息101
14.6id102
第15章对象与内存105
15.1指针和指针的值105
15.2内存管理107
15.3ARC108
第16章NSString111
16.1创建NSString实例111
16.2NSString方法112
16.3类参考113
16.4文档的其他部分117
16.5练习:寻找更多的NSString方法118
第17章NSArray119
17.1创建数组119
17.2存取数组120
17.3遍历数组123
17.4NSMutableArray124
17.5旧式数组方法125
第18章第一个自定义类129
18.1存取方法132
18.2存取方法的命名规范133
18.3self134
18.4多个实现文件134
18.5类前缀135
第19章属性137
19.1声明属性137
19.2属性的特性139
19.3用点号调用存取方法140
第20章继承141
20.1覆盖方法144
20.2Super145
20.3继承层次145
20.4description方法和%@转换说明148
第21章对象实例变量及属性151
21.1对象所有权与ARC153
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.1NSSet/NSMutableSet177
24.2NSDictionary/NSMutableDictionary180
24.3不可修改对象183
24.4数组排序184
24.5过滤185
24.6Collection对象与所有权186
24.7C语言基本类型187
24.8Collection对象与nil187
第25章常量189
25.1预处理指令190
25.2#include与#import191
25.3#define192
25.4全局变量192
25.5enum194
25.6比较#define与全局变量195
第26章通过NSString和NSData将数据写入文件197
26.1将NSString对象写入文件197
26.2NSError198
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.2Block对象vs.其他回调223
28.3深入学习Block对象223
第29章协议229
调用可选方法231
第30章PropertyList格式233
第4部分由事件驱动的应用
第31章第一个iOS应用239
31.1基于图形用户界面的应用240
31.2创建iTahDoodle240
31.3BNRAppDelegate242
31.4Model-View-Controller243
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深入学习:在真机上运行iTahDoole258
第32章第一个Cocoa应用259
32.1开始开发TahDoodle260
32.2在InterfaceBuilder中设置视图262
32.3创建关联270
32.4实现NSTableViewDataSource275
32.5保存并加载数据276
第5部分Objective-C高级主题
第33章init281
33.1编写init方法281
33.2实现基本的init方法282
33.3instancetype类型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章KVC297
第36章KVO301
36.1在KVO中使用context302
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.1char317
39.2char*318
39.3stringliteral321
39.4C字符串和NSString对象的相互转换322
39.5练习322
第40章C数组323
第41章从命令行运行329
41.1命令行参数330
41.2命令行的简便方式333
第42章Switch语句335
附录Objective-C运行时337
结束语345
索引347

其他推荐