《Objective-C编程》讲述Objective-C编程语言和基本的iOS/Mac开发知识。作者首先从基本的编程概念讲起(变量、条件语句、循环结构等),接着用浅显易懂的语言讲解Objective-C和Foundation的知识,包括Objective-C的基本语法、 Foundation常用类 、内存管理、常用设计模式等,最后手把手教读者编写完整的、基于事件驱动的iOS/Mac应用。作者还穿插介绍了Objetive-C的高级内容,包括属性、范畴和Block对象等知识。全书篇幅精炼,内容清晰,适合无编程经验的读者入门学习。
Big Nerd Ranch培训系列中文图书网站:http://www.iosprogrammingbook.com/
第1部分 入门 1
第1章 读者与本书 3
1.1 C与Objective-C 3
1.2 主要内容及阅读方式 4
1.3 程序员要走的道路 4
第2章 第一个程序 7
2.1 安装Apple开发工具软件 7
2.2 Xcode入门 7
2.3 从哪里开始编写代码 9
2.4 如何运行程序 13
2.5 程序是如何产生的 14
2.6 不要半途而废 15
第2部分 如何编程 17
第3章 变量与类型 19
3.1 类型 19
3.2 使用变量的程序 20
3.3 练习 22
第4章 if和else 23
4.1 布尔变量 24
4.2 else if 25
4.3 深入学习:条件运算符(三元运算符) 25
4.4 练习 26
第5章 函数 27
5.1 应该在何时使用函数 27
5.2 如何编写并使用函数 27
5.3 函数间是如何协同工作的 30
5.4 局部变量、帧和栈 32
5.5 递归 34
5.6 通过调试器查看帧 35
5.7 return 37
5.8 全局变量与静态变量 39
5.9 练习 40
第6章 数字 41
6.1 printf() 41
6.2 整数 42
6.3 浮点数 46
6.4 练习 47
第7章 循环 49
7.1 while循环 49
7.2 for循环 50
7.3 break 51
7.4 continue 52
7.5 do-while循环 53
7.6 练习 54
第8章 地址与指针 55
8.1 获取地址 55
8.2 用指针保存地址 56
8.3 通过地址访问数据 57
8.4 不同类型的数据所占用的字节大小 57
8.5 NULL 58
8.6 指针声明的代码规范 59
8.7 练习 59
第9章 通过引用传递 61
9.1 编写通过引用传递参数的函数 62
9.2 不要对NULL取值 64
第10章 结构 65
10.1 练习 66
第11章 堆 69
第3部分 Objective-C与Foundation 73
第12章 对象 75
12.1 创建并使用对象 75
12.2 消息详解 77
12.3 内存中的对象 79
12.4 id 79
12.5 练习 80
第13章 再谈消息 81
13.1 消息的嵌套发送 81
13.2 多个实参 82
13.3 向nil发送消息 82
13.4 练习 83
第14章 NSString 85
14.1 练习 86
第15章 NSArray 87
15.1 NSMutableArray 89
15.2 练习 90
第16章 开发文档 93
16.1 参考页 94
16.2 快速帮助 96
16.3 其他文档功能和开发资源 98
第17章 第一个自定义类 101
17.1 存取方法 103
17.2 用点号调用存取方法 104
17.2 属性 105
17.4 self 106
17.5 多个实现文件 106
17.6 练习 106
第18章 继承 109
18.1 覆盖方法 112
18.2 super 113
18.3 练习 113
第19章 对象实例变量 115
19.1 对象所有权与ARC 117
19.2 练习 123
第20章 避免内存泄露 125
20.1 Retain循环 127
20.2 弱引用 129
20.3 弱引用的自动置零特性 130
20.4 深入学习:手动引用计数和ARC历史 131
第21章 Collection类 135
21.1 NSArray/NSMutableArray 135
21.2 NSSet/NSMutableSet 138
21.3 NSDictionary/NSMutableDictionary 140
21.4 C语言基本类型 142
21.5 Collection对象与nil 142
21.6 练习 143
第22章 常量 145
22.1 预处理指令 145
22.2 #include与#import 146
22.3 #define 146
22.4 全局变量 147
22.5 比较#define与全局变量 149
第23章 通过NSString和NSData将数据写入文件 151
23.1 将NSString对象写入文件 151
23.2 NSError 152
23.3 通过NSString读取文件 153
23.4 将NSData对象所保存的数据写入文件 154
23.5 从文件读取数据并存入NSData对象 155
第24章 回调 157
24.1 目标-动作对 157
24.2 辅助对象 160
24.3 通告 163
24.4 如何选择 164
24.5 回调与对象所有权 164
第25章 协议 167
第26章 Property List格式 171
26.1 练习 173
第4部分 由事件驱动的应用 175
第27章 第一个iOS应用 177
27.1 创建iTahDoodle 177
27.2 BNRAppDelegate 179
27.3 添加C语言辅助函数 180
27.4 iTahDoodle中的对象 181
27.5 Model-View-Controller 182
27.6 应用委托对象 183
27.7 设置视图 184
27.8 为UITableView对象提供数据 186
27.9 添加新任务 189
27.10 深入学习:main()的作用 190
第28章 第一个Cocoa应用 191
28.1 编辑BNRDocument.h 192
28.2 Interface Builder初探 193
28.3 编辑BNRDocument.xib 194
28.4 创建关联 198
28.5 再探MVC 202
28.6 编辑BNRDocument.m 202
28.7 练习 204
第5部分 Objective-C高级主题 205
第29章 init 207
29.1 编写init方法 207
29.2 实现基本的init方法 208
29.3 在init中使用存取方法 209
29.4 带实参的init方法 210
29.5 禁用init方法 215
第30章 属性 217
30.1 属性的特性 218
30.2 KVC 221
第31章 范畴 225
第32章 Block对象 227
32.1 定义Block对象 227
32.2 使用Block对象 228
32.3 typedef 233
32.4 返回值 233
32.5 内存管理 234
32.6 基于Block的编程是大势所趋 235
32.7 练习 235
第6部分 C语言高级主题 237
第33章 位运算 239
33.1 按位或 240
33.2 按位与 241
33.3 其他位运算符 242
33.4 用enum定义位掩码 245
33.5 占用更多字节的整数类型 245
33.6 练习 245
第34章 C字符串 247
34.1 char 247
34.2 char * 248
34.3 string literal 250
34.4 C字符串和NSString对象的相互转换 251
34.5 练习 252
第35章 C数组 253
第36章 命令行参数 257
第37章 switch语句 261
结束语 263
索引 265
《激活免疫力》内容简介:本书作者倡导“知行合一”的健康生活方式,坚持2800天亲自实践“早睡早起+合理饮食+科学运动”的健康生活
ActionScript3.0是Flash编程语言的一次重大升级,它更加高效、清晰和完善。《ActionScript3.0基础教程》详细地介绍了ActionSc...
因特网奥秘:第6版 本书特色 本书以插图引人入胜,语言准确达意地揭示了因特网——这一改变了整个世界的神奇技术背后隐藏的奥秘。作者是Preston Gralla美...
《时尚秀场:时装画手绘技法攻略》内容简介:绘制时装效果图是时装设计过程中的一个重要环节,掌握它是从事时装设计应具备的专业素
计算机网络 本书特色 《计算机网络(普通高等教育计算机类特色专业系列规划教材)》(作者程莉、刘建毅、王枞)具有三个特点:**,知识结构完整,综合iso/...
《智能物联网》内容简介:本书探讨了物联网的现状和未来发展趋势,以及所面临的相关安全问题。作者艾哈迈德·巴纳法(Ahmed Banafa
《西方女装百年图鉴》内容简介:时尚从来就如同俄狄浦斯轮回一般。上世纪30年代的妖艳迷人到80年代的过度膨胀,从美好年代的紧身
《纳税会计与纳税申报实训操作(第三版)》内容简介:本书以国家最新税收法规和会计准则为依据,介绍了增值税、消费税、城镇土地使
YouvelearnedthebasicsofPython,buthowdoyoutakeyourskillstothenextstage?Evenifyouk...
MATLAB金融算法分析实战-基于机器学习的股票量化分析 本书特色 本书全面系统地讲解了MATLAB金融算法设计应用,以及金融数据挖掘中趋向和发展趋势指标,并结...
《书海思问录(精)》内容简介:本书为作者读书期间及工作以来的作品选集,作者自书店门市店员干起,扎根图书发行行业三十年,参与
简言之,是一个人和一本杂志的传奇……放在大环境中,是一个时代的跌宕起伏……一直大力地向所有人推荐这本书,只是因为,故事真
《深入理解计算机网络》是计算机网络领域的扛鼎之作,由有20余年从业经验的优秀网络技术工程师兼全国网管技能水平开始认证专家王
《计算物理学》比较系统、详细地讲述了计算物理领域涉及的重要基本概念、数学基础与方法。书中不仅较多地讲述了在传统物理课题中
IfyouareadesignerwhoknowsHTML,CSS,andJavaScript,youcaneasilylearnhowtomakenative...
Oracle达人修炼秘籍-Oracle 11g数据库管理与开发指南 本书特色 ·宏观上清晰呈现oracle数据库的知识体系和总体框架,微观上系统讲解oracle...
书由浅入深,全面、系统地介绍了Node.js开发技术。书中提供了大量有针对性的实例,供读者实践学习,同时提供了大量的实践练习题及
《劳动法和社会保障法(第二版)》内容简介:本书自出版以来,已经印刷多次,获得了教师和学生的好评,有多所大学的法律院系将其列
本书从ExtJS实现的基本功能开始讲解RIAWeb开发,详细讲解ExtJS的基本功能、常用的表单、面板和布局、常见的工具类与函数,以及Ex
多源运动图像的跨尺度融合研究/杜军平 内容简介 《多源运动图像的跨尺度融合研究/“十三五”科学技术专著丛书》主要研究了多源运动图像的跨尺度分析、配准、拼接、融合...