搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
深入浅出Objective-C
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787113166694
  • 作      者:
    钱成编著
  • 出 版 社 :
    中国铁道出版社
  • 出版日期:
    2013
收藏
作者简介
  钱成,超级苹果通,资深MacOS和iOS开发者,从2007年至今一直专注于Apple技术平台的软件开发工作,算是国内最早一批接触这些技术新玩意儿,以及有幸目睹整个Apple公司崛起历程的人之一。
  曾做过教育中心的讲师,做过公司的技术导师,深知如何以学员学习的角度去阐述教学内容。
  如今就职于著名跨国计算机软件公司,致力于Apple平台的布道、架构和集成,以及跨平台解决方案的实施。
  工作之余,他是一位自豪的父亲,也是超级球迷,小说迷。
展开
内容介绍
  《深入浅出Objective-C》围绕着苹果平台的软件开发语言Objective-C展开,由开始到发展,由基础到原理,由领会到技巧,由新手到大师,由浅入深地层层讲解。
  作为国内罕见的原创Objecitve-C教程,《深入浅出Objective-C》披露了为数众多的技术要点和内幕,甚至还包括至完稿时最新的iOS 6.0新技术细节。
  编者以一个中国苹果开发者的角度,为有经验的同行能够再次提高提供参考,为懵懂的新手开辟一条康庄大道,甚至为想学Objective-C却无从下手的朋友揭秘了开发捷径。
展开
精彩书评
  这本书内容非常丰富,语言生动幽默,讲解的极为详细。知识结合案例,可谓是深入浅出,名副其实,在国内的同类的Objective-C书中难得一见。
  IBM中国商业价值研究院高级分析师 刘京华
  
  这不仅是一本关于Objective-C开发技术的书籍,也是一本知识内容全面的工具书。书中详细的图例和幽默的言语,让阅读变得轻松愉悦。
  《Cocos2D-X游戏开发技术精解》作者 刘剑卓
  
  本书的出版无疑给国内庸碌的苹果开发领域打上一针强心剂,书中的经典讲解层出不穷,示例专业详细,却又比传统的计算机教程有趣得多,带给我的惊喜溢于言表。
  付费通研发主管 王小军
  
  这本书最难能可贵的是:他把自己的开发经验和感悟都融入书中,干货很多,大有一发不可收拾,不吐不快之感,字里行间透出他对自己及这本书的认真态度。
  东冉科技股份有限公司首席架构师 郭峰
  
  以由浅入深的形式进行层层推进,循序渐进,让你的技术不知不觉达到炉火纯青的水准。
  深圳亚鼎科技有限公司 信息系统部总监 方擎
  
  这本书将会快速地使你,从一个没有苹果平台开发经验的初学者变成掌握各项技能的高手。这本书的内容非常全面,涵盖了所有应用开发需要使用的特性。作者的文笔非常不错,在阅读本书的时候常会看到一些有趣的例子或比喻,不会感到生硬或无趣。作者还常常在书中提及这些内容的应用背景,使你能够融会贯通地运用。载书中提供了详实的代码示例,可指导大家去实践和探索。相信这本书一定会让你受益匪浅。
  《易学C++》作者 潘嘉杰
展开
精彩书摘
  21世纪以来,美国苹果公司在全球掀起一股“用户体验”风暴。在Windows桌面操作系统和Symbian移动操作系统统治的年代,大多数用户还没有意识到数字化产品“以人为本”的重要性。直到苹果的桌面系统MacOSX和移动操作系统iOS问世后,人们才发现原来往常的那些常用的软/硬件功能在苹果公司的平台上能够变得如此好用!所谓的“好用”可不仅仅只是具有实际使用价值的解决方案,除此之外用户还要觉得当前使用的数字化产品操作顺畅不间断,时尚健康不落俗,手感舒适不别扭。
  苹果公司将“制作拥有最好人机交互的产品”作为理念,迭代式地推出旗下的新款硬件产品和软件产品。中国的移动互联网发展,很大程度上可以说是从iPhone被中国用户所熟知开始的。虽然不少中国的苹果使用者会简单地认为苹果品牌能够像LV之于箱包界,卡蒂亚之于珠宝界,劳力士之于钟表界般是一种能够拿来炫耀的物品,但是不可否认,正是由于苹果产品的出色设计,让这些不甚懂得电子产品的买家也能够加入伪果粉的行列,更不必说那些真正懂得苹果产品价值的真果粉会将热忱和支持永远保持。当iPhone在一线和二线城市的移动设备中比重越来越大时,越来越多的互联网公司意识到这是一块不赶紧下手就抢不到的“蛋糕”,需要尽快在苹果的移动平台进行战略布局。我们常常调侃道:苹果移动平台的人才缺口很大,导致了具有iOS开发经验的员工在市场上的价值会额外多出30%。
  相比MacOSX,微软的Windows操作系统由于中国互联网发展的历史原因,已经牢牢占据桌面操作系统的第一位,不过MacOSX凭借出色的界面设计、简单的操作方式和安全的系统环境,在中国的桌面操作系统中已经渐渐崭露头角。
  中国的互联网行业中仍然存在一部分专攻开发MacOSX的团队,虽然现在他们仍大多数在从事欧、美、日、韩的苹果桌面系统的项目和业务,但是这些MacOSX的开发者从心底里仍然希望有朝一日,能够亲眼看到中国的桌面操作系统市场中苹果和微软分庭抗礼的一幕,或许借着iOS的光芒,这一幕的到来也许并不会很远。
  在2012年9月13日的WWDC大会上,苹果公司现任CEO库克宣称旗下的应用商店已经拥有70万个应用程序,其中有25万个是为iPad量身定做的。同时2011年刚推出的MacOSX应用商店的总数也已经超过了1万个,更让人震惊的是,2013年5月16日APPStore应用下载量正式突破500亿次。应用程序的庞大数量基数和上乘质量会是苹果对付其他竞争对手的法宝之一。
  本书结构
  本书共6篇31章的内容均和Objective-C的开发紧紧联系,并且这样编排的顺序是编者根据多年巩固Objective-C知识架构、整理操作系统框架、熟悉新推机制以及和苹果开发初学者打交道后,认为最好的组织方式之一。在整个学习的过程中,读者会不断汲取由简至难的知识点,并通过具体的开发实例能够很轻松地将新知识掌握自用。
  从本书的目录结构可以看出,Objective-C的知识结构就像少年英雄习武救世般步步为营,如果你是从头学起的朋友,跳过任意一章都会导致游历江湖的大侠缺少相应可贵的江湖经验。这六大篇课题主要包括以下内容。
  ① 第一篇 苹果开发初窥门径。包括主要的苹果平台的开发历史,告诉大侠你现在在做什么,怎么做以及如何能够做得又快又好。并提供给大侠勇闯江湖时必须的装备,诸如苹果操作系统,开发需要的IDE安装及使用等。
  ② 第二篇 扎实功底略有所成篇。包括Objective-C开发时所有涉及的基础知识,通过这一章的学习甚至能够让大侠从一个毫无计算机开发经验的新人直接上升到懂得基本开发知识和步骤的业内人士(虽然原则上仍然希望大侠朋友们能够在深入学习本书之前有过必要的计算机开发语言知识的学习经历)。本篇是纯粹属于Objective-C语言的一篇,从中我们能够遇到关于Objective-C语言的来龙去脉,语法语义,特性技巧以及注意事项,并且为之后的深入学习和举一反三打下坚实的理论基础。
  ③ 第三篇 拓展能力融会贯通。包括最经典的苹果开发内容,人机交互元素和绚丽夺目的卖点。作为应用程序的根本,本篇所涉及的内容是开发流程中最常遇到的。从现象到本质地将本篇中的知识点挖掘出来,其中有视图的呈现、转换、创造和优化;有视图控制器的管理、协调和可见风险;更有视图元素和系统API相辅相成的开发内容。
  ④ 第四篇 修得绝技炉火纯青。包括网络请求技术,本地化持久存储的集成,多线程编程的性能课题,客户端安全机制和操作系统强烈推荐的先进技术专题:诸如手势识别、推送服务和Scheme机制。本篇的内容是在整个Objective-C学习过程中难易度提升的过渡篇目,它起承基础知识点,转合整体开发理念,并通过一字一句的深入将所谓的苹果超酷技术完全揭秘。
  ⑤ 第五篇 内外兼修大师风范。包括新操作系统推出的新特性学习、掌握能够把关质量的利器、支持Retina模式的方案、多国语言的集成和操作系统级的配置课题,甚至在本篇中你能够发现兼顾残障人士的程序开发解决途径。此篇的内容针对开发成果的品质提升,能够将你的最终产品变得相当出众。
  ⑥ 第六篇 独步天下不可不知。包括开发的诸多技巧和窍门,通过本篇的内容使得读者能够以一个专业人士来看待问题,让Objective-C的学习画上完美的句号。
  ……
展开
目录
第一篇 苹果开发初窥门径
第1章 邀请函——来自Objective-C
1.1 概述
1.2 苹果开发简介
1.3 Objective-C的个人简历
1.4 本书的扼要提纲
1.5 成为伟大的苹果开发者
第2章 搭建开发环境——让我们穿戴整齐去参加热闹的派对吧
2.1 IDE的准备
2.1.1 Xcode不同版本的下载
2.1.2 Xcode不同版本的共存
2.2 IDE的熟悉
2.2.1 Xcode的代码撰写界面
2.2.2 Xcode的界面文件
2.2.3 工程管理的注意事项
2.2.4 Xcode的使用注意事项
2.3 本章小结

第二篇 扎实功底略有所成
第3章 创建应用程序——自家的孩子自家疼
3.1 iOS应用程序的创建
3.2 iOS工程结构分析
3.3 MacOSX应用程序的创建和程序启动
3.4 本章小结
第4章 开始开发——和Objective-C交个朋友
4.1 语法——打铁势必从姿势学起
4.2 消息
4.3 类的创建
4.4 继承和重写(override)
4.5 分类(Category)
4.6 协议(Protocols)和代理(Delegation)
4.7 本章小结
第5章 打印日志——维持秩序的摄像头
5.1 简单使用示例
5.2 进阶使用示例
5.2.1 使NSLog的打印结果更详细
5.2.2 NSLog原理详解
5.3 日志描述
5.4 本章小结
第6章 基本数据类型,表达式和语句——锅碗瓢盆一个都不少
6.1 概述
6.2 基本数据类型
6.3 命名规则
6.3.1 命名错误
6.3.2 命名规范
6.3.3 命名空间
6.4 表达式
6.5 语句
6.5.1 if/else
6.5.2 switch
6.5.3 for循环
6.5.4 for循环的in语法
6.5.5 while循环
6.5.6 跳出当前回合循环
6.6 本章小结
第7章 内存管理——打理矫情程序的超级拖把
7.1 内存管理机制——出色程序的重要资本
7.1.1 内存的创建和释放
7.1.2 自动释放池和使用
7.1.3 实例方法和类方法
7.1.4 保留(retain)对象
7.1.5 复制(copy)对象
7.1.6 浅拷贝和深拷贝
7.1.7 自动保留(retain)
7.1.8 其他创建和释放对象的方式
7.2 单例模式
7.3 取值方法(getter)和赋值方法(setter)
7.3.1 取值方法和赋值方法
7.3.2 属性关键字
7.3.3 synthesize和dynamic的区别
7.4 自动拖把ARC
7.4.1 ARC的使用方法
7.4.2 ARC新增关键字
7.4.3 ARC机制的使用规则
7.4.4 ARC机制的注意事项
7.4.5 迁移程序到ARC的做法
7.5 本章小结
第8章 Foundation Kit——巧妇可为有米之炊
8.1 字符串(NSString)
8.1.1 简单的字符串使用
8.1.2 可变字符串使用
8.1.3 字符串的路径相关使用
8.2 数组(NSArray)和集合(NSSet)
8.2.1 数组和集合的简单使用
8.2.2 可变数组和可变集合的使用
8.3 字典(NSDictionary)
8.3.1 简单的字典使用方法
8.3.2 可变字典 107
8.4 数据(NSData)
8.5 数字(NSNumber)
8.5.1 NSNumber的使用
8.5.2 简单的数学运算
8.5.3 数字格式
8.6 配置文件
8.7 本章小结
第9章 KVC机制——让生活过得更好
9.1 KVC的使用和举例
9.1.1 KVC机制
9.1.2 KVC的取值
9.1.3 KVC的存值
9.1.4 KVC协议的实现
9.1.5 一对多关系适用的运算符
9.2 KVO的使用和举例
9.3 绑定的使用和示例
9.3.1 绑定的简单使用
9.3.2 绑定的高级使用
9.4 本章小结
第10章 错误处理——知错能改善莫大焉
10.1 概述
10.2 Objective-C的错误处理机制
10.3 友善的抓虫好友——NSError
10.4 铁血无情的判官——NSException
10.5 黑白两道通吃——Signal
10.6 本章小节
第11章 block——大块头有大智慧
11.1 概述
11.2 block的基本使用示例
11.2.1 简单的block
11.2.2 将block作为参数的API
11.2.3 block的声明
11.2.4 block的typedef
11.2.5 block的值返回
11.3 block的外部变量使用
11.3.1 block体的外部变量使用的奇怪之处
11.3.2 克服外部变量的魔咒
11.4 block的内存管理
11.5 本章小结

第三篇 拓展能力融会贯通
第12章 视图——展现外形美的窗口
12.1 MVC模式及示例
12.2 UIViewController(视图控制器)
12.2.1 UIViewController和它的主视图
12.2.2 主视图的管理函数
12.2.3 UIViewController对于旋转的支持
12.2.4 多层UIViewController
12.3 导航视图控制器(UINavigationController)
12.3.1 栈
12.3.2 自身的层次
12.3.3 导航控制器的使用示例:导航精通大师(一)
12.3.4 导航控制器的使用示例——导航栏左中右位置的配置
12.3.5 导航控制器的使用示例——导航栏 右位置的多按钮
12.3.6 导航控制器的使用示例——工具栏内容修改和全屏显示
12.3.7 导航控制器的使用示例——动画过渡和超大视图
12.4 标签页视图控制器
12.4.1 标签页控制器的创建
12.4.2 标签页控制器的More标签项目
12.4.3 标签页上的标记
12.4.4 标签页栏上的警告框
12.4.5 隐藏标签栏
12.5 弹出视图控制器(PopoverViewController)
12.5.1 使用示例
12.5.2 自定义式样
12.6 分隔视图控制器(UISplitViewController)
12.7 本章小结
第13章 控件——沟通心灵美的桥梁
13.1 控件使用的注意事项
13.2 标签(UILabel)
13.3 文本视图(UITextView)
13.3.1 不可编辑的文本视图控件
13.3.2 自定义选中文本后的弹出选项
13.3.3 可编辑的文本视图控件
13.3.4 收起键盘
13.4 文本域(UITextField)
13.4.1 特有的特性
13.4.2 可拉伸图片
13.4.3 避免被键盘挡住
13.5 进度视图(UIProgressView)
13.6 滑动条(UISlider)
13.7 分隔栏控件(UISegmentControl)
13.8 按钮(UIButton)
13.8.1 按钮的基本使用
13.8.2 应对怪咔需求
13.9 本章小结
第14章 滚动视图——表达内涵美的手段
14.1 滚动视图(UIScrollView)
14.2 表视图(UITableView)
14.2.1 表视图的工作流程
14.2.2 表视图的示例(1):皇家马德里队球员名单
14.2.3 表视图的示例(2):名单的分段显示
14.2.4 表视图的示例(3):名单的索引显示
14.2.5 表视图的示例(4):系统样式的表视图单元
14.2.6 表视图的示例(5):自定义表视图的单元
14.2.7 表视图的示例(6):组式样的表视图
14.2.8 表视图的示例(7):表视图的编辑功能(删除)
14.2.9 表视图的示例(8):表视图的编辑功能(新增)
14.2.10 表视图的示例(9):表视图的编辑功能(排序)
14.2.11 表视图的示例(10):表视图的编辑功能(多选)
14.3 取值控件(UIPicker)
14.3.1 取值控件示例(1):球员角色菜单
14.3.2 取值控件示例(2):自定义UIPicker的选项外观
14.4 本章小结
第15章 警告框——强势地闹别扭
15.1 概述
15.2 iOS警告框的示例和使用
15.2.1 普通的警告框使用
15.2.2 无按钮警告框
15.2.3 当场取得返回值的警告框
15.2.4 显示文本输入框的警告框
15.2.5 显示加密文本输入框的警告框
15.2.6 显示登录框的警告框
15.2.7 多参数格式的警告框
15.2.8 客官请点菜,Sheet是您的菜单
15.3 MacOSX警告框的示例和使用
15.3.1 警告框的快捷实现
15.3.2 警告框的创建
15.3.3 警告框的sheet方式显示
15.3.4 警告框的扩展信息
15.3.5 警告框的可选栏控件
15.3.6 Carbon下的警告框显示
15.3.7 温文尔雅地提醒
15.4 本章小结
第16章 视图展示——画上美丽妆容尽情舞动吧
16.1 横竖屏和自动布局机制
16.1.1 简单的硬代码横竖屏示例
16.1.2 autoresize横竖屏示例
16.1.3 autolayout横竖屏示例(1)―何谓自动布局
16.1.4 autolayout横竖屏示例(2)―自动布局机制的实现
16.1.5 autolayout横竖屏示例(3)―冲突处理和设备适配
16.1.6 autolayout的代码使用
16.2 Quartz——我们手上的神笔
16.2.1 绘画示例:随意画
16.2.2 图形示例:各种图形画法
16.2.3 渐变示例
16.3 用动画来提升用户体验
16.3.1 UIView的基本动画效果
16.3.2 UIView的转场动画效果
16.3.3 CAAnimation的转场动画效果
16.3.4 CAAnimation的私有动画效果
16.3.5 CAAnimation的视图自身2D动画——弹簧跳
16.3.6 CAAnimation的视图自身2D动画——撒腿就跑
16.3.7 CAAnimation的视图自身2D动画——闪烁
16.3.8 CAAnimation的视图自身3D动画——翻开书籍封面
16.4 本章小结

第四篇 修得绝技炉火纯青
第17章 网络请求——互联网客户端的武功宝典
17.1 概述
17.2 NSURL网络编程
17.2.1 同步下载
17.2.2 异步下载
17.2.3 堵塞下载
17.3 HTTP请求
17.3.1 PUT网络请求
17.3.2 POST简单网络请求
17.3.3 POST进阶网络请求
17.3.4 SOAP网络请求
17.4 XML解析
17.5 JSON解析
17.6 CFNetwork网络编程
17.6.1 和纯C的socket网络开发区别
17.6.2 简单的HTTP请求
17.6.3 异步HTTP请求
17.6.4 验证HTTP请求
17.7 本章小结
第18章 数据库——化繁为简,唯快不破
18.1 概述
18.2 CoreData的模型建立
18.3 CoreData的钢铁三兄弟
18.4 CoreData数据模型的属性类型支持
18.5 CoreData的数据导入
18.6 CoreData持久性数据库的内容分析
18.7 CoreData的数据读取
18.8 CoreData和表视图的完美配合
18.9 表视图集成CoreData的新增和删除功能
18.10 表视图集成CoreData的更新功能
18.11 本章小结
第19章 多线程编程——凌波微步,可战可退
19.1 性能为王——线程概述
19.2 基本线程使用——NSThread
19.3 基本线程使用——pthread
19.4 基本线程使用——GCD
19.4.1 默认队列的使用
19.4.2 组队列的使用
19.4.3 GCD和函数指针配合使用
19.5 线程安全
19.5.1 NSLock的使用
19.5.2 synchronized的使用
19.5.3 condition的使用
19.6 进阶并行开发——NSOperation
19.6.1 苹果提供给开发者执行并发任务方法
19.6.2 NSOperation的并行开发的两种做法
19.6.3 NSOperation的练手之作(一):RSS的读取
19.6.4 NSOperation的练手之作(二):RSS数据解析
19.6.5 NSOperation的练手之作(三):和界面的协调
19.6.6 NSOperation的练手之作(四):批量小图的下载
19.6.7 NSOperation的练手之作(五):预览图的并行下载
19.7 消息循环(NSRunLoop)
19.8 本章小结
第20章 钥匙串——防火、防盗、防黑客
20.1 概述
20.2 何时使用钥匙串
20.3 iOS中的钥匙串使用
20.3.1 新增和删除钥匙串项目
20.3.2 查找和更新钥匙串项目
20.3.3 钥匙串的Group概念
20.4 MacOSX中的钥匙串使用
20.4.1 新增和删除钥匙串项目
20.4.2 查找和更新钥匙串项目
20.5 加密的简单示例
20.6 本章小结
第21章 通知——弹指神通,指哪动哪
21.1 通知和代理的区别
21.2 本地通知的使用
21.2.1 通知接收环境的建立
21.2.2 通知的简单发送
21.2.3 通知的异步发送
21.3 跨进程通知发送
21.4 本章小结
第22章 手势——触摸改变了世界
22.1 事件响应链
22.1.1 事件的生命周期
22.1.2 事件响应链
22.2 触摸事件的接收示例
22.3 手势响应示例——多种手势识别器
22.3.1 程序框架的搭建
22.3.2 Tap点击手势的识别
22.3.3 依样画葫芦地完成多种手势识别器
22.4 手势之间的优先级
22.5 本章小结
第23章 推送——应用也有生命
23.1 推送简介
23.2 推送证书的准备步骤
23.3 推送的内容
23.4 远程推送的使用方法
23.5 本地推送的使用方法
23.6 推送的注意事项和常见错误解决方案
23.7 本章小结
第24章 程序间通信——应用组实现的最佳方案
24.1 打破沙盒的限制
24.2 自定义URL Scheme
24.2.1 调用系统应用程序
24.2.2 自定义URL Scheme
24.2.3 OpenIn:让其他应用程序打开文件
24.2.4 自定义程序候选面板的按钮
24.3 本章小结

第五篇 内外兼修大师风范
第25章 iOS 5和iOS 6开发相关的新特性——最先进的用户体验
25.1 概述
25.2 iOS 5新特性
25.2.1 书报亭(Newsstand)
25.2.2 iCloud
25.2.3 消息中心
25.2.4 输入法
25.3 iOS 6新特性
25.3.1 Passbook的概念
25.3.2 Passbook的开发思路
25.4 本章小结
第26章 开发调试技巧——最强力的集成环境
26.1 自定义代码段
26.2 静态分析
26.3 内存泄漏检测
26.4 单元测试:提交测试前,把关质量的最后一道锁
26.4.1 逻辑代码的单元测试示例
26.4.2 UI上的单元测试示例
26.5 本章小结
第27章 视网膜屏——最爽快的视觉享受
27.1 概述
27.2 视网膜屏的兼容解决方案
27.2.1 程序中的资源
27.2.2 启动图片
27.2.3 图标
27.3 本章小结
第28章 本地化——最贴心的国际化
28.1 本地化的解决方案
28.1.1 使用Xcode的本地化功能的开发举例
28.1.2 资源文件本地化的开发举例
28.1.3 本地化映射表的开发举例
28.1.4 本地化的原理和相关知识
28.1.5 本地化格式的开发举例
28.1.6 本地化应用程序名字
28.2 本章小结
第29章 程序通用设定——最适合的功能划分
29.1 通用设定的使用范围
29.1.1 两种解决方案的使用场景各有特点
29.1.2 评价者的意图
29.2 通用设定的示例
29.2.1 系统设置的本地化开发举例
29.2.2 系统设置的配置举例:文本输入框
29.2.3 系统设置的配置举例:滑块
29.2.4 系统设置的配置举例:左标题右内容
29.2.5 系统设置的配置举例:多选项
29.2.6 系统设置的配置举例:子设置视图
29.3 通用设定的同步
29.4 本章小结
第30章 辅助功能——最周全的系统设想
30.1 辅助功能简介
30.2 辅助功能示例——Interface Builder中的VoiceOver
30.3 辅助功能示例——代码中的VoiceOver
30.3.1 使用xib设置辅助功能示例
30.3.2 重写辅助功能的示例
30.4 本章小结

第六篇 独步天下不可不知
第31章 苹果终极开发技巧——不传秘籍重现天日
31.1 创建iPhone和iPad的通用应用程序
31.2 真机调试
31.3 DMG制作
31.3.1 简单DMG文件制作
31.3.2 高级DMG文件制作
31.4 区分操作系统版本环境
31.5 本章小结
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证