{{sellerTotalView > 1 ? __("sellers", {number: sellerTotalView}) : __("seller", {number: sellerTotalView}) }}, {{numTotalView > 1 ? __("items", {number: numTotalView}) : __("item", {number: numTotalView}) }}
免運費
Yami

Nickname

請告訴我們怎麼更好地稱呼你

更新你的名字
賬戶 訂單 收藏
{{ inviteNavTitle }}
退出登入

切換配送區域

不同區域的庫存和配送時效可能存在差異。

歷史郵編

{{email ? __('Got it!') : __('Restock Alert')}}

我們將在商品到貨後第一時間通知你。

取消
Yami

京東圖書

iOS开发指南:从零基础到App Store上架

{{buttonTypePin == 3 ? __("Scan to view more PinGo") : __("Scan to start")}}

iOS开发指南:从零基础到App Store上架

{{__(":people-members", {'people': item.limit_people_count})}} {{ itemCurrency }}{{ item.valid_price }} {{ itemCurrency }}{{ item.invalid_price }} {{ itemDiscount }}
後結束
{{ itemCurrency }}{{ item.valid_price }}
{{ itemCurrency }}{{ priceFormat(item.valid_price / item.bundle_specification) }}/{{ item.unit }}
{{ itemDiscount }}
{{ itemCurrency }}{{ item.valid_price }} {{ itemCurrency }}{{ priceFormat(item.valid_price / item.bundle_specification) }}/{{ item.unit }} {{ itemCurrency }}{{ item.invalid_price }} {{itemDiscount}}
{{ itemCurrency }}{{ item.valid_price }}
後結束促銷
後開始秒殺 後結束秒殺
{{ getSeckillDesc(item.seckill_data) }}
{{ __( "Pay with Gift Card to get sale price: :itemCurrency:price", { 'itemCurrency' : itemCurrency, 'price' : (item.giftcard_price ? priceFormat(item.giftcard_price) : '0.00') } ) }} ({{ itemCurrency }}{{ priceFormat(item.giftcard_price / item.bundle_specification) }}/{{ item.unit }}) 詳情
商品有效期

已下架

我們不知道該商品何時或是否會重新有庫存。

當前地址無法配送
已售完

商品描述

展開全部描述
Editer Recommend

国内第一本iOS架构设计图书!
数百个项目案例+两个真实商业项目开发全过程!
涵盖iOS平台架构设计、测试驱动开发、性能优化、版本控制和程序调试等内容!
精彩手绘原型草图,艺术与科技的结合!

Content Description

《iOS开发指南:从零基础到App Store上架》共4 部分:第一部分为基础篇,介绍了iOS 的一些基础知识;第二部分为网络篇,介绍了iOS 网络开发相关的知识;第三部分为进阶篇,介绍了iOS 高级内容、商业思考等;第四部分为实战篇,从无到有地介绍了两个真实的iOS 应用——MyNotes 应用和2016 里约热内卢奥运会应用。书中包括了100 多个完整的案例项目源代码,大家可以到本书网站下载。
《iOS开发指南:从零基础到App Store上架》适合iOS 开发人员阅读。
Author Description

关东升,国内知名iOS技术作家,iOS技术顾问,高级培训讲师,移动开发专家。精通iOS、Android和Windows Phone及HTML5等移动开发技术。曾先后主持开发大型网络游戏神农诀的iOS和Android客户端开发,国家农产品追溯系统的iPad客户端开发,酒店预订系统的iPhone客户端开发,金融系统微博的iOS、Windows Phone 7、Android客户端开发。在App Store上发布多款游戏和应用软件,擅长移动平台的应用和游戏类项目开发。近期为中国移动研究院、云南移动、东软、方正科技、大唐电信、中石油、深圳康拓普、上海财富168、天津港务局等企事业单位授课。
著有《iOS网络编程与云端应用最佳实践》、《iPhone与iPad开发实战——iOS经典应用剖析》、《Android开发案例驱动教程》、《Android网络游戏开发实战》、《移动平台用户体验设计》以及《JSP网络程序设计》等图书。
Comments

在移动互联网飞速发展的今天,移动终端是兵家必争之地,无论你是做网络/通信还是做内容创意,无论你是设备厂商还是App开发者,都需要一本“平易近人”的书,陪你走在移动服务广阔的原野上。对于一位初学者而言,本书让你踏出iOS学习的第一步,从iOS SDK开始,到产品完善、上线(如发布到App Store上)都能一步到位,并最后成为iOS平台上的赢家。对于Android或Windows 8的开发者而言,本书完善的示例代码和分类,将非常有助于多平台对比开发和平行同步开发,从而协助大家在移动互联网时代能同时掌握多个主流平台。
——高焕堂,亚太Android领域开发联盟总架构师

曾与关老师就智慧型手机与移动终端交换很多意见,并在后续与中国移动的合作案中,有幸与他一同参与,从中见识到关老师在移动终端开发与推广的热情。这是一本全面介绍iOS应用开发的图书,包括了iOS 6的相关内容,通俗易懂,深入浅出。对于iOS初学者以及需要提高的读者来说,这是一本优秀的学习参考书。本书不仅从理论出发,还提供了大量实战案例,相信对于移动应用开发者来说,这会是一本不可或缺的经典好书。
——柯博文,美国硅谷LoopTek公司CTO,《大富翁》游戏开发者

移动终端的发展日新月异,移动互联是未来趋势,本书结合大量案例讲述iOS应用开发技巧,便于读者掌握。尤其在进阶篇中,作者分享了自己在开发过程中的经验和心得。本书不仅从理论方面出发,还提供了大量实战案例。我们相信本书在你的iOS开发之路上会助你一臂之力。
——智捷iOS课堂

关老师不仅是51CTO.com的专家博主,而且是51CTO关注移动开发的朋友们最为喜爱的一位博主。本书无疑是一本值得iOS初学者认真阅读的从入门到精通的教材。通过对本书的学习,你可以从一个对移动开发一窍不通的小白,逐步成长为一名iOS开发高手。当你看到自己的App上架时,你所得到的喜悦绝对会超出这本书自身的售价。
——赵磊,51CTO副总编
Catalogue


第一部分基础篇

第1章开篇综述
1.1 iOS概述
1.1.1 iOS介绍
1.1.2 iOS 6新特性
1.2 开发环境及开发工具
1.3 本书中的约定
1.3.1 案例代码约定
1.3.2 图示的约定

第2章
第一个iOS应用程序
2.1 创建基于nib的HelloWorld工程
2.1.1 创建工程
2.1.2 Xcode中的iOS工程模板
2.1.3 应用剖析
2.2 基于故事板的HelloWorld工程
2.2.1 使用故事板重构HelloWorld
2.2.2 nib、xib与故事板
2.2.3 故事板中的Scene和Segue
2.3 应用生命周期
2.3.1 非运行状态--应用启动场景
2.3.2 点击Home键--应用退出场景
2.3.3 挂起重新运行场景
2.3.4 内存清除--应用终止场景
2.4 视图生命周期
2.4.1 视图生命周期与视图控制器关系
2.4.2 iOS 6 UI状态保持和恢复
2.5 设置产品属性
2.5.1 Xcode中的Project和Target
2.5.2 设置常用的产品属性
2.6 iOS API简介
2.6.1 API概述
2.6.2 如何使用API帮助
2.7 小结

第3章iOS常用设计模式
3.1 单例模式
3.1.1 问题提出
3.1.2 实现原理
3.1.3 应用案例
3.2 委托模式
3.2.1 问题提出
3.2.2 实现原理
3.2.3 应用案例
3.3 观察者模式
3.3.1 问题提出
3.3.2 实现原理
3.3.3 通知机制和KVO机制
3.4 MVC模式
3.4.1 MVC模式概述
3.4.2 Cocoa Touch中的MVC模式
3.5 小结

第4章UIView与控件
4.1 视图"始祖"--UIView
4.1.1 UIView"家族"
4.1.2 应用界面的构建层次
4.1.3 视图分类
4.2 标签控件和按钮控件
4.2.1 标签控件
4.2.2 按钮控件
4.2.3 动作和输出口
4.3 TextField控件和TextView控件
4.3.1 TextField控件
4.3.2 TextView控件
4.3.3 键盘的打开和关闭
4.3.4 关闭和打开键盘的通知
4.3.5 键盘的种类
4.4 开关控件、滑块控件和分段控件
4.4.1 开关控件
4.4.2 滑块控件
4.4.3 分段控件
4.5 网页控件WebView
4.5.1 WebView介绍
4.5.2 使用WebView构建Hybrid应用
4.6 屏幕滚动控件ScrollView
4.6.1 ScrollView属性的设置
4.6.2 键盘与其他控件的协同
4.7 等待相关的控件与进度条
4.7.1 活动指示器ActivityIndicatorView
4.7.2 进度条ProgressView
4.8 警告框和操作表
4.8.1 警告框AlertView
4.8.2 操作表ActionSheet
4.9 工具栏和导航栏
4.9.1 工具栏
4.9.2 导航栏
4.10 屏幕布局
4.10.1 iPad与iPhone屏幕布局
4.10.2 绝对布局和相对布局
4.10.3 使用AutoLayout布局
4.10.4 旋转你的屏幕
4.11 选择器
4.11.1 日期选择器
4.11.2 普通选择器
4.11.3 数据源协议与委托协议
4.12 iOS 6中的集合视图
4.12.1 集合视图介绍
4.12.2 集合视图单元格
4.12.3 数据源协议与委托协议
4.13 小结

第5章表视图
5.1 概述
5.1.1 表视图的组成
5.1.2 表视图的相关类
5.1.3 表视图分类
5.1.4 单元格的组成和样式
5.1.5 数据源协议与委托协议
5.2 简单表视图
5.2.1 创建简单表视图
5.2.2 自定义单元格
5.2.3 添加搜索栏
5.3 分节表视图
5.3.1 添加索引
5.3.2 分组与静态表
5.4 修改单元格
5.4.1 删除和插入单元格
5.4.2 移动单元格
5.5 表视图UI设计模式
5.5.1 分页模式
5.5.2 下拉刷新模式
5.5.3 iOS 6下拉刷新控件
5.6 小结

第6章视图控制器与导航模式
6.1 概述
6.1.1 视图控制器的种类
6.1.2 导航模式
6.1.3 模态视图
6.2 平铺导航
6.2.1 应用场景
6.2.2 基于分屏导航的实现
6.2.3 基于分页导航的实现
6.3 标签导航
6.3.1 应用场景
6.3.2 nib实现
6.3.3 故事板实现
6.4 树形结构导航
6.4.1 应用场景
6.4.2 nib实现
6.4.3 故事板实现
6.5 组合使用导航模式
6.5.1 应用场景
6.5.2 故事板实现
6.6 小结

第7章iPhone与iPad应用开发的差异
7.1 概述
7.1.1 应用场景差异
7.1.2 设计和开发需注意的问题
7.1.3 构建自适应的iPhone和iPad工程
7.2 iPad专用API
7.2.1 UIPopoverController控制器
7.2.2 UISplitViewController控制器
7.2.3 模态视图专用属性
7.3 Master-Detail应用程序模板
7.3.1 nib实现
7.3.2 故事板实现
7.4 Utility应用程序模板
7.4.1 nib实现
7.4.2 故事板实现
7.5 移动平台的分层架构设计
7.5.1 低耦合企业级系统架构设计
7.5.2 移动平台的分层架构设计
7.5.3 基于同一工程的分层
7.5.4 基于一个工作空间不同工程的分层
7.6 小结

第8章应用程序设置
8.1 概述
8.1.1 设置
8.1.2 配置
8.2 应用程序设置包
8.3 设置项目种类
8.3.1 文本字段
8.3.2 开关
8.3.3 滑块
8.3.4 值列表
8.3.5 子界面
8.4 读取设置
8.5 小结

第9章应用程序本地化
9.1 概述
9.1.1 本地化内容
9.1.2 本地化目录结构
9.2 文本信息本地化
9.2.1 系统按钮和信息本地化
9.2.2 应用名称本地化
9.2.3 程序代码输出的静态文本本地化
9.2.4 使用genstring工具
9.3 nib和故事板文件本地化
9.3.1 添加本地化
9.3.2 开关使用ibtool工具
9.4 资源文件本地化
9.5 小结

第10章数据持久化
10.1 概述
10.1.1 沙箱目录
10.1.2 持久化方式
10.2 属性列表
10.3 对象归档
10.4 使用SQLite数据库
10.4.1 SQLite数据类型
10.4.2 创建数据库
10.4.3 查询数据
10.4.4 修改数据
10.5 Core Data
10.5.1 ORM
10.5.2 Core Data堆栈
10.5.3 建模和生成实体
10.5.4 采用Core Data分层架构设计
10.5.5 查询数据
10.5.6 修改数据
10.6 小结

第11章访问通讯录
11.1 概述
11.2 读取联系人信息
11.2.1 查询联系人记录
11.2.2 读取单值属性
11.2.3 读取多值属性
11.2.4 读取图片属性
11.3 写入联系人信息
11.3.1 创建联系人
11.3.2 修改联系人
11.3.3 删除联系人
11.4 高级API
11.4.1 选择联系人
11.4.2 显示和修改联系人
11.4.3 创建联系人
11.5 小结

第二部分网络篇

第12章访问Web Service
12.1 概述
12.2 数据交换格式
12.2.1 XML文档结构
12.2.2 解析XML文档
12.2.3 JSON文档结构
12.2.4 JSON数据解码
12.3 REST Web Service
12.3.1 HTTP和HTTPS协议
12.3.2 同步GET请求方法
12.3.3 异步GET请求方法
12.3.4 POST请求方式
12.3.5 调用REST Web Service的插入、修改和删除方法
12.4 使用ASIHTTPRequest框架
12.4.1 安装和配置ASIHTTPRequest框架
12.4.2 同步请求
12.4.3 异步请求
12.4.4 使用请求队列
12.4.5 上传数据
12.5 反馈网络信息改善用户体验
12.5.1 iOS 6表视图刷新控件的使用
12.5.2 使用等待指示器控件
12.5.3 使用网络等待指示器
12.6 小结

第13章定位服务与地图应用
13.1 定位服务
13.1.1 定位服务编程
13.1.2 地理信息反编码
13.1.3 地理信息编码查询
13.1.4 关于定位服务的测试
13.2 使用iOS 6苹果地图
13.2.1 显示地图
13.2.2 添加标注
13.2.3 跟踪用户位置变化
13.3 使用程序外地图
13.3.1 调用iOS 6苹果地图
13.3.2 调用谷歌Web地图
13.4 小结

第三部分进阶篇

第14章iOS中的商业模式
14.1 收费策略
14.1.1 iOS如何赚钱
14.1.2 避免定价策略误区
14.1.3 免费软件的艺术
14.1.4 在适当的时间、适当的地点植入广告
14.1.5 尝试不同的盈利模式
14.2 使用苹果iAd广告
14.2.1 横幅广告
14.2.2 插页广告
14.2.3 查看你的收入
14.3 使用谷歌AdMob广告
14.3.1 注册AdMob账号和管理应用
14.3.2 下载谷歌AdMob Ads SDK和示例代码
14.3.3 添加AdMob横幅广告
14.3.4 添加AdMob插页广告
14.3.5 为广告提交用户和位置信息
14.3.6 搜索广告
14.3.7 查看你的收入
14.4 应用内购买
14.4.1 概述
14.4.2 测试环境搭建
14.4.3 在程序中实现应用内购买
14.4.4 测试应用内购买
14.5 小结

第15章找出程序中的bug--调试
15.1 Xcode调试工具
15.1.1 定位编译错误
15.1.2 查看和显示日志
15.1.3 设置和查看断点
15.1.4 调试工具栏
15.1.5 输出窗口
15.1.6 变量查看窗口
15.1.7 查看线程
15.2 日志与断言输出
15.2.1 使用NSLog函数
15.2.2 使用NSAssert宏
15.2.3 移除NSLog和NSAssert
15.3 LLDB调试工具
15.3.1 断点命令
15.3.2 观察点命令
15.3.3 查看变量和计算表达式命令
15.4 异常堆栈报告分析
15.4.1 跟踪异常堆栈
15.4.2 分析堆栈报告
15.5 在iOS设备上调试
15.5.1 创建开发者证书
15.5.2 设备注册
15.5.3 创建App ID
15.5.4 创建配置概要文件
15.5.5 设备调试
15.6 Xcode设备管理工具
15.6.1 管理设备配置概要文件
15.6.2 查看设备上的应用程序
15.6.3 设备控制台
15.6.4 设备日志
15.7 小结

第16章基于测试驱动的iOS开发
16.1 测试驱动的软件开发概述
16.1.1 测试驱动的软件开发流程
16.1.2 测试驱动的软件开发案例
16.1.3 iOS单元测试框架
16.2 使用OCUnit测试框架
16.2.1 添加OCUnit到工程中
16.2.2 应用测试和逻辑测试
16.2.3 编写OCUnit测试方法
16.2.4 分析测试报告
16.3 使用GHUnit测试框架
16.3.1 添加GHUnit到工程
16.3.2 编写GHUnit测试用例
16.3.3 分析测试报告
16.4 使用伪对象
16.4.1 添加OCMock到工程
16.4.2 使用OCMock对象
16.5 iOS单元测试最佳实践
16.5.1 iOS单元测试策略
16.5.2 测试数据持久层
16.5.3 测试业务逻辑层
16.5.4 测试表示层
16.6 小结

第17章让你的程序"飞"起来--性能优化
17.1 内存优化
17.1.1 内存泄漏问题的解决
17.1.2 查找和解决僵尸对象
17.1.3 autorelease的使用问题
17.1.4 响应内存警告
17.1.5 选择nib还是故事板
17.2 优化资源文件
17.2.1 图片文件优化
17.2.2 音频文件优化
17.3 延迟加载
17.3.1 资源文件的延迟加载
17.3.2 故事板和nib文件的延迟加载
17.4 数据持久化的优化
17.4.1 使用文件
17.4.2 使用SQLite数据库
17.4.3 使用Core Data
17.5 可重用对象的使用
17.5.1 表视图中的可重用对象
17.5.2 集合视图中的可重用对象
17.5.3 地图视图中的可重用对象
17.6 并发处理与多核CPU
17.6.1 主线程阻塞问题
17.6.2 选择NSThread还是GCD
17.7 编译器和编译参数
17.7.1 GCC、LLVM GCC与Apple LLVM比较
17.7.2 ARM架构
17.7.3 Optimization Level
17.8 小结

第18章管理好你的程序代码--代码版本控制
18.1 概述
18.1.1 版本控制历史
18.1.2 基本概念
18.2 Git代码版本控制
18.2.1 服务器搭建
18.2.2 Gitolite服务器管理
18.2.3 Git常用命令
18.2.4 Git分支
18.2.5 Git协同开发
18.2.6 Xcode中Git的配置与使用
18.3 GitHub代码托管服务
18.3.1 创建和配置GitHub账号
18.3.2 创建代码库
18.3.3 派生代码库
18.3.4 使用GitHub协同开发
18.3.5 管理组织
18.4 小结

第19章把你的应用放到App Store上
19.1 收官
19.1.1 添加图标
19.1.2 添加启动界面
19.1.3 调整Application Target属性
19.1.4 为发布进行编译
19.1.5 应用打包
19.2 发布流程
19.2.1 创建应用及基本信息
19.2.2 应用定价信息
19.2.3 最后信息输入
19.2.4 上传应用
19.3 常见审核不通过的原因
19.4 小结

第四部分实战篇

第20章重构MyNotes应用--iOS网络通信中的设计模式与架构设计
20.1 移动网络通信应用的分层架构设计
20.2 基于委托模式实现
20.2.1 网络通信与委托模式
20.2.2 在异步网络通信中使用委托模式实现分层架构设计
20.2.3 类图
20.2.4 时序图
20.2.5 数据持久层的代码实现
20.2.6 业务逻辑层的代码实现
20.2.7 表示层的代码实现
20.3 基于观察者模式的通知机制实现
20.3.1 观察者模式的通知机制回顾
20.3.2 异步网络通信中通知机制的分层架构设计
20.3.3 类图
20.3.4 时序图
20.3.5 数据持久层的代码实现
20.3.6 业务逻辑层的代码实现
20.3.7 表示层的代码实现
20.4 小结

第21章iOS敏捷开发项目实战--2016里约热内卢奥运会应用开发及App Store发布
21.1 应用分析与设计
21.1.1 应用概述
21.1.2 需求分析
21.1.3 原型设计
21.1.4 数据库设计
21.1.5 架构设计
21.2 iOS敏捷开发
21.2.1 敏捷开发宣言
21.2.2 iOS适合敏捷开发?
21.2.3 iOS敏捷开发最佳实践
21.3 任务1:创建应用基本工作空间
21.4 任务2:信息系统层与持久层开发
21.4.1 迭代2.1:编写数据库DDL脚本
21.4.2 迭代2.2:插入初始数据到数据库
21.4.3 迭代2.3:编写实体类
21.4.4 迭代2.4:DAO类GHUnit单元测试
21.4.5 迭代2.5:编写DAO类
21.4.6 迭代2.6:发布到GitHub
21.5 任务3:业务逻辑层开发
21.5.1 迭代3.1:比赛项目业务逻辑类GHUnit单元测试
21.5.2 迭代3.2:编写比赛项目业务逻辑类
21.5.3 迭代3.3:比赛日程业务逻辑类GHUnit单元测试
21.5.4 迭代3.4:编写比赛日程业务逻辑类
21.5.5 迭代3.5:发布到GitHub
21.6 任务4:表示层开发
21.6.1 迭代4.1:根据原型设计初步设计iPad故事板
21.6.2 迭代4.2:根据原型设计初步设计iPhone故事板
21.6.3 迭代4.3:首页模块
21.6.4 迭代4.4:比赛项目模块
21.6.5 迭代4.5:比赛日程模块
21.6.6 迭代4.6:倒计时模块表示层
21.6.7 迭代4.7:关于我们模块表示层
21.6.8 迭代4.8:发布到GitHub
21.7 任务5:收工
21.7.1 迭代5.1:添加图标
21.7.2 迭代5.2:设计和添加启动界面
21.7.3 迭代5.3:植入谷歌AdMob横幅广告
21.7.4 迭代5.4:性能测试与改善
21.7.5 迭代5.5:发布到GitHub
21.7.6 迭代5.6:在App Store上发布应用
21.8 小结
Introduction

2012年9月19日,苹果公司开放iOS 6下载。2012年12月14日,iPhone 5在中国发售,此时iOS 6正渐入佳境。本书在iOS 6第一个beta阶段就开始了编写,想在本书中包括iOS 6的新增特性,并将其作为第一本国内原创iOS 6图书奉献给广大读者。几个月过去了,我们终于在2013年元旦之前将书稿提交给出版社。几个月来,我们智捷iOS课堂团队夜以继日,我几乎推掉一切社交活动,推掉很多企业邀请我去讲课的机会,每天工作12小时,不敢有任何松懈,不敢有任何模棱两可,只做一件事情——编写此书。
内容和组织结构
本书是我们团队编写iOS系列丛书中的一本,目的是使一个有Objective-C基础的程序员通过学习本书,从零基础学习如何在App Store上发布一款应用。全书共4部分。
第一部分为基础篇,共11章内容,介绍了iOS的一些基础知识。
第1章介绍了iOS的开发背景以及本书约定。
第2章使用nib和故事板技术创建了HelloWorld,同时讨论了iOS工程模板、应用的运行机制和生命周期、视图器的生命周期等,最后介绍了如何使用API帮助文档和官方案例。
第3章讨论了iOS开发中4种常用的设计模式,分别为单例模式、委托模式、观察者模式和MVC模式。在介绍每种设计模式时,我们按照问题提出、实现原理、应用案例的结构介绍了其适用情况、实现原理及其用法。
第4章首先学习了视图和控件之间的关系以及应用界面的构建层次,然后介绍了标签、按钮、文本框和导航栏等基本控件,接着介绍了屏幕布局的内容以及一个较为复杂的控件——选择器,最后探讨了iOS 6中的集合视图。
第5章探讨了表视图的组成、表视图类的构成和表视图的分类,使我们对表视图有了一个整体上的认识。接下来介绍了如何实现简单表视图和分节表视图,以及表视图中索引、搜索栏和分组的使用,然后学习了如何对表视图单元格进行删除、插入、移动等操作,最后介绍了表视图UI设计模式方面的内容。
第6章讨论了如何判断应用是不是需要一个导航功能,并且知道在什么情况下选择平铺导航、标签导航、树形结构导航,或者同时综合使用这3种导航模式。
第7章首先介绍了iPhone和iPad设备使用场景上的差异,然后深入介绍了iPad专用API,接着使用nib和故事板技术分别实现了两个重要的程序模板,最后介绍了iOS平台的分层架构设计。
第8章介绍了设置和配置的概念,然后通过对二者差异的探讨,介绍了什么样的项目适合放在设置里,什么样的项目适合放在配置里。
第9章介绍了本地化概念、内容和目录结构,接下来详细阐述了文本信息、nib及故事板、资源文件的本地化。
第10章讨论了iOS本地数据持久化的问题。首先分析了数据存取的几种方式以及每种数据存取方式适合什么样的场景,然后分别举例介绍了每种存取方式的实现。
第11章首先介绍了访问通讯录所需要的框架,然后介绍了使用AddressBook框架如何读取联系人的信息,具体包括联系人记录、单值多值属性、图片属性的读取;接着介绍了如何使用该框架将联系人信息写入数据库,具体包括联系人的创建、修改和删除;最后介绍了如何使用AddressBook高级API实现选择联系人、显示和修改联系人以及创建联系人的操作。
第二部分为网络篇,共两章,介绍了iOS网络开发的相关知识。
第12章介绍了数据交换格式,其中XML和JSON是主要的方式。这里重点介绍了Web Service的访问以及ASIHTTPRequest框架。
第13章讨论了iOS中的定位服务技术,包括地理信息编码和反编码查询。之后介绍了iOS 6苹果地图的使用,包括了显示地图、在地图上添加标注以及跟踪用户位置的变化等。最后,介绍了程序外地图的使用,如何调用iOS 6苹果地图和谷歌Web地图。
第三部分为进阶篇,共6章,介绍了iOS高级内容和商业思考等,相关内容如下所示。
第14章介绍了iOS中的商业模式,其中的收费策略值得广大读者借鉴。此外,我们还介绍了植入广告和应用内购买的API,其中植入广告包括苹果自己的iAd和谷歌的AdMob广告。
第15章首先介绍了有哪些调试工具,然后重点介绍了几个常用的调试工具,具体包括日志与断言的输出、LLDB调试工具、异常堆栈报告分析,接下来讲解了如何在真机上调试应用,最后分析了Xcode设备管理工具的用法。
第16章讨论了测试驱动的iOS开发,介绍了测试驱动开发流程。此外,我们还学习了单元测试框架OCUnit、GHUnit和OCMock的用法。
第17章介绍了iOS中的性能优化方法,其中包括内存优化、资源文件优化、延迟加载、持久化优化、使用可重用对象、多线程以及程序编译参数等。
第18章介绍了如何使用Git进行代码版本控制,其中包括Git服务器的搭建、Git常用命令和协同开发。此外,还介绍了在Xcode中如何配置和使用Git工具。
第19章探讨了如何在App Store上发布应用,介绍了应用的发布流程以及应用审核不通过的一些常见原因。
第四部分为实战篇,共两章,从无到有地介绍了两个真实的iOS应用:MyNotes应用和2016里约热内卢奥运会应用。
第20章通过重构MyNotes应用,把MyNotes应用的数据由原来的本地存储变成云存储。在这个过程中,我们介绍了移动网络通信应用中分层架构设计的必要性和重要性。我们重点介绍了基于委托模式和观察者模式通知机制实现的分层架构设计。
第21章介绍了完整的iOS应用分析设计、编程、测试和发布过程,其中采用了敏捷开发方法。此外,该项目采用分层架构设计,这对于学习iOS架构是非常重要的。
书中并没有包括多媒体等知识,我们会在另外一本iOS游戏开发书中介绍,具体进展请读者关注我们智捷iOS课堂官方网站。
致谢
在此感谢图灵的王军花责编给我们提供的宝贵意见,感谢智捷iOS课堂团队的李玉超和贾云龙参与内容讨论和审核,感谢赵大羽老师手绘了书中全部草图,并从专业的角度修改书中图片,力求更加真实完美地奉献给广大读者。此外,还要感谢我的家人容忍我的忙碌,以及对我的关心和照顾,使我能抽出这么多时间,投入全部精力专心编写此书。
由于时间仓促,书中难免存在不妥之处,请读者原谅。
关东升
2012年12月于北京

規格參數

品牌 京東圖書
品牌屬地 China

免責聲明

產品價格、包裝、規格等資訊如有調整,恕不另行通知。我們盡量做到及時更新產品資訊,但請以收到實物為準。使用產品前,請始終閱讀產品隨附的標籤、警告及說明。

查看詳情
加入收藏
{{ $isZh ? coupon.coupon_name_sub : coupon.coupon_ename_sub | formatCurrency }}
{{__("Buy Directly")}} {{ itemCurrency }}{{ item.directly_price }}
數量
{{ quantity }}
{{ instockMsg }}
{{ limitText }}
{{buttonTypePin == 3 ? __("Scan to view more PinGo") : __("Scan to start")}}
由 JD@CHINA 銷售
送至
{{ __("Ship to United States only") }}
滿69免運費
正品保證

已加入購物車

繼續逛逛

為你推薦

{{ item.brand_name }}

{{ item.item_name }}

{{ item.currency }}{{ item.market_price }}

{{ item.currency }}{{ item.unit_price }}

{{ item.currency }}{{ item.unit_price }}

優惠券

{{ coupon.coupon_name_new | formatCurrency }}
領取 已領取 已領完
{{ getCouponDescStr(coupon) }}
{{ coupon.use_time_desc }}
即將過期: {{ formatTime(coupon.use_end_time) }}

分享給好友

取消

亞米禮卡專享價

使用禮卡支付即可獲得禮卡專享價

規則說明

禮卡專享價是部分商品擁有的特殊優惠價格;

購買禮卡專享價商品時,若在結算時使用電子禮卡抵扣支付,且禮卡餘額足夠支付訂單中所有禮卡專享價商品的專享價總和,則可以啟用禮卡專享價;

不使用禮卡支付,或禮卡餘額不滿足上一條所述要求時,將無法啟用禮卡專享價,按照普通售價計算,但您仍然可以購買這些商品;

在購買禮卡專享價商品時,若餘額不足,可以在購物車或結算頁中點擊“充值”按鈕對禮卡進行購買和充值;

商品若擁有禮卡專享價,會顯示“專享”的特殊價格標記;

如有疑問,請隨時聯繫客服;

禮卡專享價相關規則最終解釋權歸亞米所有。

由 亞米 銷售

服務保障

Yami 滿$49免運費
Yami 無憂退換
Yami 從美國出貨

配送資訊

  • 美國

    標準配送 $5.99(不含阿拉斯加,夏威夷),最終價滿$49免運費

    本地配送$5.99(加州,紐約州,新澤西,麻省和賓夕法尼亞,以上州部分地區);最終價滿$49免運費

    兩日達(含阿拉斯加夏威夷)運費19.99美元起

退換政策

亞米網希望為我們的客戶提供最優秀的售後服務,讓所有人都能放心在亞米購物。亞米自營商品在滿足退換貨條件的情況下,可在收到包裹的30天之內退換商品(食品因商品質量問題7天內可退換;為了確保每位客戶都能獲得安全和高質量的商品,對於美妝類產品,一經開封或使用即不提供退款或退貨服務,質量問題除外;其他特殊商品需聯繫客服諮詢)。
感謝您的理解和支持。

查看詳情

由 亞米 銷售

亞米電子禮品卡使用規則

若購買時選擇自動儲值,訂單完成後禮品卡將自動儲值至您的帳戶;

若購買時選擇發送郵件,訂單完成後系統將自動發送卡號和密碼到您填寫的郵箱;

寄送郵件時,任何使用者均可使用郵件中的卡號密碼進行禮卡儲值,請妥善保管郵件資訊。

如接收郵件遇到問題,請聯絡客服處理;

發送郵件時,若禮卡沒有被兌換,可以補發郵件。若已經被其他用戶兌換,無法補償;

亞米網電子禮卡可用於購買自營或第三方商品;

亞米網電子禮卡沒有有效期限限制,長期有效;

亞米網電子禮卡的金額,可分多次使用;

亞米網電子禮卡業務規則,最終解釋權歸亞米網所有。

退換政策

已消費的電子禮卡不支持退款。

JD@CHINA 銷售

服務保障

Yami 滿$49免運費
Yami 最優售後
Yami 美國本土出貨

配送資訊

  • 美國

    標準配送 $5.99(不含阿拉斯加,夏威夷),最終價滿$49免運費

    本地配送$5.99(加州,紐約州,新澤西,麻省和賓夕法尼亞,以上州部分地區);最終價滿$49免運費

    兩日達(含阿拉斯加夏威夷)運費19.99美元起

退換政策

提供30天內退還保障。產品需全新未使用原包裝內,並附有購買憑證。產品品質問題、或錯發漏發等,由商家造成的失誤,將進行補發,或退款處理。其它原因需退貨費用由客戶自行承擔。

由 JD@CHINA 銷售

服務保障

Yami 跨店滿$69免運費
Yami 30天退換保障

亞米-中國集運倉

由亞米從中國精選並集合各大優秀店舖的商品至亞米中國整合中心,合併包裹後將一次合包跨國郵寄至您的地址。跨店包郵門檻低至$69。您將在多商家集合提供的廣泛選購商品中選購商品,輕鬆享有跨店鋪包郵後的低郵資。

退換政策

提供30天內退換保障。產品需在全新未使用的原包裝內,並附有購買憑證。產品品質問題、錯發、或漏發等商家造成的失誤,將進行退款處理。其它原因造成的退換貨郵費客戶將需要自行承擔。由於所有商品均長途跋涉,偶有簡易外包壓磨等但不涉及內部品質問題者,不予退換。

配送資訊

亞米中國集運 Consolidated Shipping 運費$9.99(訂單滿$69 包郵)

下單後2個工作天中國商家出貨,所有包裹抵達亞米中國整合中心(除特別情況及中國境內個別法定假日外)會合併包裹後透過UPS發往美國。 UPS從中國出貨後到美國境內的平均時間為10個工作天左右,可隨時根據直發單號追蹤查詢。受疫情影響,目前物流可能延遲5天左右。包裹需要客人簽收。如未簽收,客人須承擔包裹遺失風險。

由 JD@CHINA 銷售

服務保障

滿69免運費
正品保證

配送資訊

Yami Consolidated Shipping 運費$9.99(訂單滿$69包郵)


Seller will ship the orders within 1-2 business days. The logistics time limit is expected to be 7-15 working days. In case of customs clearance, the delivery time will be extended by 3-7 days. The final receipt date is subject to the information of the postal company.

積分規則

不參加任何折扣活動以及亞米會員積分制度。

退換政策

提供30天內退還保障。產品需全新未使用原包裝內,並附有購買憑證。產品品質問題、或錯發漏發等,由商家造成的失誤,將進行補發,或退款處理。其它原因需退貨費用由客戶自行承擔。

Yami

下載亞米應用

返回頂部

為您推薦

品牌故事

京東圖書

为您推荐

Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折

評論{{'('+ commentList.posts_count + ')'}}

分享您的感受,幫助更多用戶做出選擇。

撰寫評論
{{ totalRating }} 撰寫評論
  • {{i}}星

    {{i}} 星

    {{ parseInt(commentRatingList[i]) }}%

Yami Yami
{{ comment.user_name }}

{{ showTranslate(comment) }}收起

{{ strLimit(comment,800) }}查看全部

Show Original

{{ comment.content }}

Yami
查看更多

{{ formatTime(comment.in_dtm) }} 已購買 {{groupData}}

{{ comment.likes_count }} {{ comment.likes_count }} {{ comment.reply_count }} {{comment.in_user==uid ? __('Delete') : __('Report')}}
Yami Yami
{{ comment.user_name }}

{{ showTranslate(comment) }}收起

{{ strLimit(comment,800) }}查看全部

Show Original

{{ comment.content }}

Yami
查看更多

{{ formatTime(comment.in_dtm) }} 已購買 {{groupData}}

{{ comment.likes_count }} {{ comment.likes_count }} {{ comment.reply_count }} {{comment.in_user==uid ? __('Delete') : __('Report')}}

暫無符合條件的評論~

評論詳情

Yami Yami

{{ showTranslate(commentDetails) }}收起

{{ strLimit(commentDetails,800) }}查看全部

Show Original

{{ commentDetails.content }}

Yami
查看更多

{{ formatTime(commentDetails.in_dtm) }} 已購買 {{groupData}}

{{ commentDetails.likes_count }} {{ commentDetails.likes_count }} {{ commentDetails.reply_count }} {{commentDetails.in_user==uid ? __('Delete') : __('Report')}}

請輸入內容

回覆{{'(' + replyList.length + ')'}}

Yami Yami

{{ showTranslate(reply) }}收起

{{ strLimit(reply,800) }}查看全部

Show Original

{{ reply.reply_content }}

{{ formatTime(reply.reply_in_dtm) }}

{{ reply.reply_likes_count }} {{ reply.reply_likes_count }} {{ reply.reply_reply_count }} {{reply.reply_in_user==uid ? __('Delete') : __('Report')}}

請輸入內容

取消

這是到目前為止的所有評論!

發表評論
商品評分

請輸入評論

  • 一個好的暱稱,會讓你的評論更受歡迎!
  • 修改了這裡的暱稱,個人資料中的暱稱也將被修改。
感謝你的評論
你的好評可以幫助我們的社區發現更好的亞洲商品。

舉報

取消

確認刪除該評論嗎?

取消

歷史瀏覽

品牌故事

京東圖書