当前位置:首页 > 工业技术
深入浅出Objective-C
深入浅出Objective-C

深入浅出Objective-CPDF电子书下载

工业技术

  • 电子书积分:18 积分如何计算积分?
  • 作 者:钱成编著
  • 出 版 社:北京:中国铁道出版社
  • 出版年份:2013
  • ISBN:9787113166694
  • 页数:620 页
图书介绍:本书围绕着苹果平台的软件开发语言Objective—C展开,由历史到发展,由基础到原理,由领会到技巧,由新兵到大师,由浅入深地层层讲解。在整个学习过程中,读者会不断汲取由简至难的知识点,并通过具体的开发实例能够很轻松地将新知识掌握自用。
《深入浅出Objective-C》目录
标签:编著 深入

第一篇 苹果开发初窥门径 2

第1章 邀请函——来自Objective-C 2

1.1概述 2

1.2苹果开发简介 2

1.3 Objective-C的个人简历 4

1.4本书的扼要提纲 5

1.5成为伟大的苹果开发者 6

第2章 搭建开发环境——让我们穿戴整齐去参加热闹的派对吧 7

2.1 IDE的准备 7

2.1.1 Xcode不同版本的下载 8

2.1.2 Xcode不同版本的共存 10

2.2 IDE的熟悉 11

2.2.1 Xcode的代码撰写界面 12

2.2.2 Xcode的界面文件 14

2.2.3工程管理的注意事项 15

2.2.4 Xcode的使用注意事项 16

2.3本章小结 19

第二篇 扎实功底略有所成 22

第3章 创建应用程序——自家的孩子自家疼 22

3.1 iOS应用程序的创建 22

3.2 iOS工程结构分析 24

3.3 MacOSX应用程序的创建和程序启动 27

3.4本章小结 28

第4章 开始开发——和Objective-C交个朋友 29

4.1语法——打铁势必从姿势学起 29

4.2消息 31

4.3类的创建 32

4.4继承和重写(override) 37

4.5分类(Category) 41

4.6协议(Protocols)和代理(Delegation) 42

4.7本章小结 45

第5章 打印日志——维持秩序的摄像头 46

5.1简单使用示例 46

5.2进阶使用示例 48

5.2.1使NSLog的打印结果更详细 48

5.2.2 NSLog原理详解 49

5.3日志描述 50

5.4本章小结 52

第6章 基本数据类型,表达式和语句——锅碗瓢盆一个都不少 53

6.1概述 53

6.2基本数据类型 53

6.3命名规则 54

6.3.1命名错误 55

6.3.2命名规范 55

6.3.3命名空间 56

6.4表达式 56

6.5语句 60

6.5.1 if/else 60

6.5.2 switch 61

6.5.3 for循环 63

6.5.4 for循环的in语法 64

6.5.5 while循环 65

6.5.6跳出当前回合循环 66

6.6本章小结 70

第7章 内存管理——打理情程序的超级拖把 71

7.1内存管理机制——出色程序的重要资本 71

7.1.1内存的创建和释放 71

7.1.2自动释放池和使用 73

7.1.3实例方法和类方法 74

7.1.4保留(retain)对象 74

7.1.5复制(copy)对象 75

7.1.6浅拷贝和深拷贝 76

7.1.7自动保留(retain) 78

7.1.8其他创建和释放对象的方式 78

7.2单例模式 79

7.3取值方法(getter)和赋值方法(setter) 81

7.3.1取值方法和赋值方法 82

7.3.2属性关键字 83

7.3.3 synthesize和dynamic的区别 85

7.4自动拖把ARC 86

7.4.1 ARC的使用方法 86

7.4.2 ARC新增关键字 87

7.4.3 ARC机制的使用规则 89

7.4.4 ARC机制的注意事项 90

7.4.5迁移程序到ARC的做法 91

7.5本章小结 92

第8章 Foundation Kit——巧妇可为有米之效 93

8.1字符串(NSString) 93

8.1.1简单的字符串使用 93

8.1.2可变字符串使用 96

8.1.3字符串的路径相关使用 97

8.2数组(NSArray)和集合(NSSet) 98

8.2.1数组和集合的简单使用 98

8.2.2可变数组和可变集合的使用 101

8.3字典(NSDictionary) 104

8.3.1简单的字典使用方法 105

8.3.2可变字典 107

8.4数据(NSData) 107

8.5数字(NSNumber) 108

8.5.1 NSNumber的使用 108

8.5.2简单的数学运算 109

8.5.3数字格式 109

8.6配置文件 111

8.7本章小结 112

第9章 KVC机制——让生活过得更好 113

9.1 KVC的使用和举例 113

9.1.1 KVC机制 113

9.1.2 KVC的取值 114

9.1.3 KVC的存值 117

9.1.4 KVC协议的实现 118

9.1.5一对多关系适用的运算符 120

9.2 KVO的使用和举例 121

9.3绑定的使用和示例 127

9.3.1绑定的简单使用 127

9.3.2绑定的高级使用 130

9.4本章小结 136

第10章 错误处理——知错能改善莫大焉 137

10.1概述 137

10.2 Objective-C的错误处理机制 137

10.3友善的抓虫好友——NSError 138

10.4铁血无情的判官——NSException 141

10.5黑白两道通吃——Signal 144

10.6本章小节 145

第11章 block——大块头有大智慧 146

11.1概述 146

11.2 block的基本使用示例 146

11.2.1简单的block 146

11.2.2将block作为参数的API 147

11.2.3 block的声明 148

11.2.4 block的typedef 149

11.2.5 block的值返回 149

11.3 block的外部变量使用 150

11.3.1 block体的外部变量使用的奇怪之处 150

11.3.2克服外部变量的魔咒 151

11.4 block的内存管理 152

11.5本章小结 153

第三篇 拓展能力融会贯通 156

第12章 视图——展现外形美的窗口 156

12.1 MVC模式及示例 156

12.2 UIViewController(视图控制器) 160

12.2.1 UIViewController和它的主视图 161

12.2.2主视图的管理函数 162

12.2.3 UIViewController对于旋转的支持 162

12.2.4多层UIViewController 163

12.3导航视图控制器(UINavigationController) 164

12.3.1栈 164

12.3.2自身的层次 165

12.3.3导航控制器的使用示例:导航精通大师(一) 166

12.3.4导航控制器的使用示例——导航栏左中右位置的配置 170

12.3.5导航控制器的使用示例——导航栏右位置的多按钮 173

12.3.6导航控制器的使用示例——工具栏内容修改和全屏显示 176

12.3.7导航控制器的使用示例——动画过渡和超大视图 180

12.4标签页视图控制器 184

12.4.1标签页控制器的创建 186

12.4.2标签页控制器的More标签项目 187

12.4.3标签页上的标记 189

12.4.4标签页栏上的警告框 190

12.4.5隐藏标签栏 191

12.5弹出视图控制器(PopoverViewController) 192

12.5.1使用示例 192

12.5.2自定义式样 193

12.6分隔视图控制器(UISplitViewController) 194

12.7本章小结 196

第13章 控件——沟通心灵美的桥梁 197

13.1控件使用的注意事项 197

13.2标签(UILabel) 198

13.3文本视图(UIText View) 200

13.3.1不可编辑的文本视图控件 200

13.3.2自定义选中文本后的弹出选项 202

13.3.3可编辑的文本视图控件 203

13.3.4收起键盘 204

13.4文本域(UITextField) 206

13.4.1特有的特性 206

13.4.2可拉伸图片 207

13.4.3避免被键盘挡住 209

13.5进度视图(UIProgressView) 213

13.6滑动条(UISlider) 214

13.7分隔栏控件(UISegmentControl) 215

13.8按钮(UIButton) 217

13.8.1按钮的基本使用 217

13.8.2应对怪咔需求 218

13.9本章小结 219

第14章 滚动视图——表达内涵美的手段 220

14.1滚动视图(UIScrollView) 220

14.2表视图(UITableView) 222

14.2.1表视图的工作流程 223

14.2.2表视图的示例(1):皇家马德里队球员名单 224

14.2.3表视图的示例(2):名单的分段显示 227

14.2.4表视图的示例(3):名单的索引显示 230

14.2.5表视图的示例(4):系统样式的表视图单元 234

14.2.6表视图的示例(5):自定义表视图的单元 237

14.2.7表视图的示例(6):组式样的表视图 240

14.2.8表视图的示例(7):表视图的编辑功能(删除) 240

14.2.9表视图的示例(8):表视图的编辑功能(新增) 244

14.2.10表视图的示例(9):表视图的编辑功能(排序) 245

14.2.11表视图的示例(10):表视图的编辑功能(多选) 249

14.3取值控件(UIPicker) 254

14.3.1取值控件示例(1):球员角色菜单 254

14.3.2取值控件示例(2):自定义UIPicker的选项外观 257

14.4本章小结 260

第15章 警告框——强势地闹别扭 261

15.1概述 261

15.2 iOS警告框的示例和使用 262

15.2.1普通的警告框使用 262

15.2.2无按钮警告框 264

15.2.3当场取得返回值的警告框 265

15.2.4显示文本输入框的警告框 267

15.2.5显示加密文本输入框的警告框 270

15.2.6显示登录框的警告框 271

15.2.7多参数格式的警告框 273

15.2.8客官请点菜,Sheet是您的菜单 274

15.3 MacOSX警告框的示例和使用 279

15.3.1警告框的快捷实现 279

15.3.2警告框的创建 280

15.3.3警告框的sheet方式显示 282

15.3.4警告框的扩展信息 284

15.3.5警告框的可选栏控件 285

15.3.6 Carbon下的警告框显示 285

15.3.7温文尔雅地提醒 286

15.4本章小结 288

第16章 视图展示——画上美丽妆容尽情舞动吧 290

16.1横竖屏和自动布局机制 290

16.1.1简单的硬代码横竖屏示例 291

16.1.2 autoresize横竖屏示例 302

16.1.3 autolayout横竖屏示例(1)——何谓自动布局 305

16.1.4 autolayout横竖屏示例(2)——自动布局机制的实现 308

16.1.5 autolayout横竖屏示例(3)——冲突处理和设备适配 314

16.1.6 autolayout的代码使用 316

16.2 Quartz——我们手上的神笔 316

16.2.1绘画示例:随意画 316

16.2.2图形示例:各种图形画法 322

16.2.3渐变示例 326

16.3用动画来提升用户体验 327

16.3.1 UIView的基本动画效果 327

16.3.2 UIView的转场动画效果 330

16.3.3 CAAnimation的转场动画效果 333

16.3.4 CAAnimation的私有动画效果 335

16.3.5 CAAnimation的视图自身2D动画——弹簧跳 339

16.3.6 CAAnimation的视图自身2D动画——撒腿就跑 340

16.3.7 CAAnimation的视图自身2D动画——闪烁 342

16.3.8 CAAnimation的视图自身3D动画——翻开书籍封面 343

16.4本章小结 347

第四篇 修得绝技炉火纯青 350

第17章 网络请求——互联网客户端的武功宝典 350

17.1概述 350

17.2 NSURL网络编程 350

17.2.1同步下载 351

17.2.2异步下载 353

17.2.3堵塞下载 357

17.3 HTTP请求 359

17.3.1 PUT网络请求 360

17.3.2 POST简单网络请求 361

17.3.3 POST进阶网络请求 362

17.3.4 SOAP网络请求 366

17.4 XML解析 368

17.5 JSON解析 371

17.6 CFNetwork网络编程 373

17.6.1和纯C的socket网络开发区别 374

17.6.2简单的HTTP请求 374

17.6.3异步HTTP请求 376

17.6.4验证HTTP请求 378

17.7本章小结 381

第18章 数据库——化繁为简,唯快不破 382

18.1概述 382

18.2 CoreData的模型建立 383

18.3 CoreData的钢铁三兄弟 386

18.4 CoreData数据模型的属性类型支持 389

18.5 CoreData的数据导入 390

18.6 CoreData持久性数据库的内容分析 396

18.7 CoreData的数据读取 398

18.8 CoreData和表视图的完美配合 400

18.9表视图集成CoreData的新增和删除功能 406

18.10表视图集成CoreData的更新功能 411

18.11本章小结 415

第19章 多线程编程——凌波微步,可战可退 416

19.1性能为王——线程概述 416

19.2基本线程使用——NSThread 417

19.3基本线程使用——pthread 420

19.4基本线程使用——GCD 421

19.4.1默认队列的使用 422

19.4.2组队列的使用 423

19.4.3 GCD和函数指针配合使用 424

19.5线程安全 424

19.5.1 NSLock的使用 425

19.5.2 synchronized的使用 426

19.5.3 condition的使用 427

19.6进阶并行开发——NSOperation 429

19.6.1苹果提供给开发者执行并发任务方法 429

19.6.2 NSOperation的并行开发的两种做法 429

19.6.3 NSOperation的练手之作(一)RSS的读取 430

19.6.4 NSOperation的练手之作(二)RSS数据解析 434

19.6.5 NSOperation的练手之作(三)和界面的协调 437

19.6.6 NSOperation的练手之作(四)批量小图的下载 441

19.6.7 NSOperation的练手之作(五):预览图的并行下载 443

19.7消息循环(NSRunLoop) 451

19.8本章小结 453

第20章 钥匙串——防火、防盗、防黑客 454

20.1概述 454

20.2何时使用钥匙串 454

20.3 iOS中的钥匙串使用 456

20.3.1新增和删除钥匙串项目 458

20.3.2查找和更新钥匙串项目 460

20.3.3钥匙串的Group概念 462

20.4 MacOSX中的钥匙串使用 464

20.4.1新增和删除钥匙串项目 464

20.4.2查找和更新钥匙串项目 467

20.5加密的简单示例 470

20.6本章小结 472

第21章 通知——弹指神通,指哪动哪 473

21.1通知和代理的区别 473

21.2本地通知的使用 474

21.2.1通知接收环境的建立 474

21.2.2通知的简单发送 475

21.2.3通知的异步发送 477

21.3跨进程通知发送 481

21.4本章小结 482

第22章 手势——触摸改变了世界 483

22.1事件响应链 483

22.1.1事件的生命周期 483

22.1.2事件响应链 484

22.2触摸事件的接收示例 485

22.3手势响应示例——多种手势识别器 488

22.3.1程序框架的搭建 488

22.3.2 Tap点击手势的识别 490

22.3.3依样画葫芦地完成多种手势识别器 493

22.4手势之间的优先级 498

22.5本章小结 499

第23章 推送——应用也有生命 500

23.1推送简介 500

23.2推送证书的准备步骤 503

23.3推送的内容 508

23.4远程推送的使用方法 509

23.5本地推送的使用方法 511

23.6推送的注意事项和常见错误解决方案 512

23.7本章小结 514

第24章 程序间通信——应用组实现的最佳方案 515

24.1打破沙盒的限制 515

24.2自定义URL Scheme 516

24.2.1调用系统应用程序 516

24.2.2自定义URL Scheme 517

24.2.3 OpenIn:让其他应用程序打开文件 519

24.2.4自定义程序候选面板的按钮 526

24.3本章小结 529

第五篇 内外兼修大师风范 531

第25章 iOs5和iOS6开发相关的新特性——最先进的用户体验 531

25.1概述 531

25.2 iOS5新特性 532

25.2.1书报亭(Newsstand) 532

25.2.2 iCloud 533

25.2.3消息中心 538

25.2.4输入法 539

25.3 iOS6新特性 539

25.3.1 Passbook的概念 539

25.3.2 Passbook的开发思路 540

25.4本章小结 545

第26章 开发调试技巧——最强力的集成环境 547

26.1自定义代码段 547

26.2静态分析 550

26.3内存泄漏检测 551

26.4单元测试:提交测试前,把关质量的最后一道锁 553

26.4.1逻辑代码的单元测试示例 554

26.4.2 UI上的单元测试示例 557

26.5本章小结 560

第27章 视网膜屏——最爽快的视觉享受 561

27.1概述 561

27.2视网膜屏的兼容解决方案 561

27.2.1程序中的资源 561

27.2.2启动图片 564

27.2.3图标 565

27.3本章小结 566

第28章 本地化——最贴心的国际化 567

28.1本地化的解决方案 567

28.1.1使用Xcode的本地化功能的开发举例 569

28.1.2资源文件本地化的开发举例 572

28.1.3本地化映射表的开发举例 573

28.1.4本地化的原理和相关知识 576

28.1.5本地化格式的开发举例 579

28.1.6本地化应用程序名字 580

28.2本章小结 581

第29章 程序通用设定——最适合的功能划分 582

29.1通用设定的使用范围 582

29.1.1两种解决方案的使用场景各有特点 583

29.1.2评价者的意图 583

29.2通用设定的示例 584

29.2.1系统设置的本地化开发举例 587

29.2.2系统设置的配置举例:文本输入框 588

29.2.3系统设置的配置举例:滑块 590

29.2.4系统设置的配置举例:左标题右内容 590

29.2.5系统设置的配置举例:多选项 592

29.2.6系统设置的配置举例:子设置视图 593

29.3通用设定的同步 594

29.4本章小结 596

第30章 辅助功能——最周全的系统设想 597

30.1辅助功能简介 597

30.2辅助功能示例——Interface Builder中的VoiceOver 599

30.3辅助功能示例——代码中的VoiceOver 602

30.3.1使用xib设置辅助功能示例 602

30.3.2重写辅助功能的示例 604

30.4本章小结 607

第六篇 独步天下不可不知 609

第31章 苹果终极开发技巧——不传秘籍重现天日 609

31.1创建iPhone和iPad的通用应用程序 609

31.2真机调试 611

31.3 DMG制作 616

31.3.1简单DMG文件制作 616

31.3.2高级DMG文件制作 617

31.4区分操作系统版本环境 619

31.5本章小结 620

相关图书
作者其它书籍
返回顶部