展开全部

主编推荐语

全面剖析Objective-C,实战iOS9 主推智能家居、健康应用、苹果手表、游戏开发等领域。

内容简介

本书循序渐进的全面剖析了Objective-C语言的应用,并结合iOS9进行学习应用,解决了传统Objective-C书只注重语法讲解而忽视iOS开发的应用。案例关注iOS9主推的智能家居、健康应用、苹果手表、游戏开发等领域,并且在讲解过程中,细致讲解了每一个知识点的具体原理和具体用法。

目录

  • 版权信息
  • 内容提要
  • 前言
  • 第一篇 基础知识
  • 第1章 认识“进步”最快的Objective-C语言
  • 1.1 最耀眼的新星
  • 1.1.1 一份统计数据
  • 1.1.2 Objective-C的走红过程
  • 1.1.3 究竟何为Objective-C
  • 1.1.4 苹果公司选择Objective-C的原因
  • 1.2 Objective-C的优点和缺点
  • 1.3 搭建Objective-C开发环境
  • 1.3.1 Xcode介绍
  • 1.3.2 下载Xcode7
  • 1.3.3 安装Xcode 7
  • 1.3.4 创建iOS 9项目并启动模拟器
  • 1.3.5 打开现有的iOS 9项目
  • 1.4 第一段Objective-C程序
  • 1.4.1 使用Xcode编辑代码
  • 1.4.2 注释
  • 1.4.3 #import指令
  • 1.4.4 主函数
  • 1.5 Xcode集成开发环境介绍
  • 1.5.1 基本面板
  • 1.5.2 Xcode 7的基本操作
  • 1.5.3 使用Xcode 7帮助系统
  • 第二篇 核心语法
  • 第2章 常量、变量和数据类型
  • 2.1 标识符和关键字
  • 2.2 数据类型和常量
  • 2.2.1 整数类型
  • 2.2.2 float类型和double类型
  • 2.2.3 char类型
  • 2.2.4 字符常量
  • 2.2.5 id类型
  • 2.2.6 限定词
  • 2.2.7 基本数据类型小结
  • 2.2.8 NSLog函数
  • 2.3 变量
  • 2.3.1 定义变量
  • 2.3.2 统一定义变量
  • 2.4 字符串
  • 第3章 运算符和表达式
  • 3.1 运算符的种类
  • 3.2 算术表达式
  • 3.2.1 初步了解运算符的优先级
  • 3.2.2 整数运算和一元负号运算符
  • 3.2.3 模运算符
  • 3.2.4 整型值和浮点值的相互转换
  • 3.2.5 类型转换运算符
  • 3.2.6 常量表达式
  • 3.3 条件运算符
  • 3.4 sizeof运算符
  • 3.5 关系运算符
  • 3.6 强制类型转换运算符
  • 3.7 赋值运算符
  • 3.7.1 基本赋值运算符
  • 3.7.2 高级赋值运算符
  • 3.7.3 通过计算器类演示运算符的用法
  • 3.8 位运算符
  • 3.8.1 按位与运算符
  • 3.8.2 按位或运算符
  • 3.8.3 按位异或运算符
  • 3.8.4 求反运算符
  • 3.8.5 向左移位运算符
  • 3.8.6 向右移位运算符
  • 3.8.7 头文件
  • 3.9 逻辑运算符
  • 3.10 逗号运算符
  • 3.11 运算符小结
  • 第4章 选择结构
  • 4.1 顺序结构和选择结构
  • 4.2 if语句
  • 4.2.1 单分支结构
  • 4.2.2 双分支结构
  • 4.2.3 复合条件测试
  • 4.2.4 if语句的嵌套
  • 4.2.5 else if结构
  • 4.3 switch语句
  • 4.3.1 switch语句基础
  • 4.3.2 任何两种情况的值都不能相同
  • 4.3.3 switch语句小结
  • 第5章 循环结构
  • 5.1 语句
  • 5.2 流程控制介绍
  • 5.3 for循环语句
  • 5.3.1 for循环基础
  • 5.3.2 for语句的执行步骤
  • 5.3.3 让for循环执行适当的次数
  • 5.3.4 for循环嵌套
  • 5.3.5 for循环的其他用法
  • 5.4 while语句
  • 5.4.1 基本while语句
  • 5.4.2 算法在编程中的意义
  • 5.4.3 while语句的陷阱
  • 5.4.4 do-while语句
  • 5.5 break语句
  • 5.6 continue语句
  • 5.7 goto语句
  • 5.8 空语句
  • 5.9 return语句
  • 5.10 Boolean变量
  • 第三篇 面向对象
  • 第6章 面向对象——类、对象和方法
  • 6.1 面向对象介绍
  • 6.2 对象建模技术
  • 6.2.1 功能模型
  • 6.2.2 对象模型
  • 6.2.3 动态模型
  • 6.3 类的基础知识
  • 6.3.1 类和实例
  • 6.3.2 方法
  • 6.3.3 实例和方法
  • 6.3.4 认识Objective-C中的类
  • 6.4 使用@interface定义类
  • 6.4.1 设置科学的类名
  • 6.4.2 实例变量
  • 6.5 使用@implementation声明成员
  • 6.6 program具体实现部分
  • 6.7 类的使用
  • 6.7.1 类的初始化
  • 6.7.2 使用类实例
  • 6.7.3 使用类的好处
  • 6.8 类的高级应用
  • 6.8.1 访问实例变量并封装数据
  • 6.8.2 尽量分离接口和实现文件
  • 6.9 隐藏和封装
  • 6.9.1 什么是封装
  • 6.9.2 访问控制符
  • 6.9.3 合成存取器方法
  • 6.9.4 使用点运算符访问属性
  • 6.10 多参方法
  • 6.10.1 不带参数名的方法
  • 6.10.2 操作分数
  • 6.11 局部变量
  • 6.11.1 方法的参数
  • 6.11.2 static关键字
  • 6.11.3 self关键字
  • 6.12 在方法中分配和返回对象
  • 第7章 面向对象——继承
  • 7.1 从根类谈起
  • 7.1.1 继承的好处
  • 7.1.2 继承的使用
  • 7.1.3 进一步理解继承的概念
  • 7.1.4 重写方法
  • 7.2 方法重载
  • 7.2.1 方法重载基础
  • 7.2.2 重载的作用
  • 7.2.3 选择正确的方法
  • 7.2.4 重载dealloc方法
  • 7.2.5 使用super关键字
  • 7.2.6 连续继承
  • 7.3 通过继承添加新的实例变量
  • 7.4 调用动态方法
  • 7.5 访问控制
  • 7.6 Category类别
  • 第8章 多态、动态类型和异常处理
  • 8.1 多态
  • 8.1.1 多态基础
  • 8.1.2 实现多态
  • 8.1.3 指针变量的强制类型转换
  • 8.1.4 判断指针变量的实际类型
  • 8.2 动态绑定和id类型
  • 8.2.1 id类型的优势
  • 8.2.2 与C#的比较说明
  • 8.2.3 编译时和运行时检查
  • 8.2.4 id数据类型与静态类型
  • 8.2.5 动态类型的参数和返回类型
  • 8.2.6 处理动态类型的方法
  • 8.3 异常处理
  • 8.3.1 用@try处理异常
  • 8.3.2 使用@finally回收资源
  • 8.3.3 自定义异常类
  • 8.3.4 和C++异常处理进行比较
  • 第9章 类别、协议和合成对象
  • 9.1 类别
  • 9.1.1 定义类别
  • 9.1.2 类别的使用
  • 9.1.3 用类别实现模块化设计
  • 9.1.4 使用类别调用私有方法
  • 9.1.5 扩展
  • 9.2 协议
  • 9.2.1 使用类别实现非正式协议
  • 9.2.2 定义正式协议
  • 9.2.3 遵守(实现)协议
  • 9.2.4 协议和委托
  • 9.3 合成对象
  • 第10章 预处理程序
  • 10.1 宏定义
  • 10.1.1 无参宏定义
  • 10.1.2 带参宏定义
  • 10.1.3 #define语句的作用
  • 10.1.4 高级类型定义
  • 10.1.5 #运算符
  • 10.1.6 ##运算符
  • 10.2 #import语句
  • 10.3 条件编译
  • 10.3.1 #ifdef、#endif、#else和#ifndef语句
  • 10.3.2 #if和#elif预处理程序语句
  • 第11章 深入理解变量和数据类型
  • 11.1 内存布局
  • 11.2 自动变量
  • 11.3 外部变量
  • 11.4 作用域
  • 11.4.1 控制实例变量作用域的指令
  • 11.4.2 外部变量
  • 11.4.3 静态变量
  • 11.4.4 选择局部变量和全局变量
  • 11.4.5 复合语句和作用域
  • 11.5 存储类说明符
  • 11.5.1 auto
  • 11.5.2 const
  • 11.5.3 volatile
  • 11.5.4 static
  • 11.5.5 extern
  • 11.6 枚举数据类型
  • 11.7 typedef语句
  • 第四篇 知识进阶
  • 第12章 Foundation框架类详解
  • 12.1 数字对象
  • 12.2 字符串处理
  • 12.2.1 创建字符串对象
  • 12.2.2 可变对象与不可变对象
  • 12.2.3 可变字符串
  • 12.2.4 释放字符串对象
  • 12.3 数组对象
  • 12.3.1 数组的存储
  • 12.3.2 数组的比较机制
  • 12.3.3 调用数组元素
  • 12.3.4 操作数组对象
  • 12.3.5 返回操作并生成访问器方法
  • 12.3.6 枚举操作
  • 12.3.7 使用枚举遍历查询信息
  • 12.3.8 删除信息
  • 12.3.9 数组排序
  • 12.3.10 KVC和KVO开发
  • 12.4 字典对象
  • 12.4.1 NSDictionary功能介绍
  • 12.4.2 创建可变字典
  • 12.4.3 枚举字典
  • 12.5 集合对象
  • 12.5.1 NSSet类介绍
  • 12.5.2 重复判断操作
  • 12.5.3 NSMutableSet可编辑集合
  • 12.5.4 NSCountedSet状态集合
  • 12.5.5 有序集合
  • 第13章 日期、时间、复制和谓词
  • 13.1 赋值和复制
  • 13.2 copy方法和mutableCopy方法的使用
  • 13.3 浅复制和深复制
  • 13.3.1 独立副本
  • 13.3.2 复制的应用
  • 13.4 使用alloc+init...方式实现复制
  • 13.5 NSCopyObject()的使用
  • 13.6 用自定义类实现复制
  • 13.7 用赋值方法和取值方法复制对象
  • 13.8 复制可变和不可变对象
  • 13.9 使用setter方法复制
  • 13.10 谓词
  • 13.10.1 创建谓词
  • 13.10.2 用谓词过滤集合
  • 13.10.3 在谓词中使用格式说明符
  • 13.11 日期和时间处理
  • 13.12 日期格式器
  • 13.13 日历和日期组件
  • 第14章 和C语言同质化的数据类型(上)
  • 14.1 数组
  • 14.1.1 一维数组
  • 14.1.2 二维数组
  • 14.1.3 显式初始化二维数组
  • 14.1.4 多维数组的定义
  • 14.1.5 多维数组的初始化
  • 14.1.6 字符数组
  • 14.2 函数
  • 14.2.1 函数的种类
  • 14.2.2 定义函数
  • 14.2.3 函数的声明
  • 14.2.4 函数原型
  • 14.2.5 函数的参数
  • 14.2.6 返回值
  • 14.2.7 声明返回类型和参数类型
  • 14.2.8 调用函数
  • 14.2.9 函数的嵌套调用和递归调用
  • 14.2.10 数组作为函数的参数
  • 14.2.11 内部函数和外部函数
  • 14.3 变量的作用域和生存期
  • 14.3.1 变量的作用域
  • 14.3.2 静态存储变量和动态存储变量
  • 14.4 结构体
  • 14.4.1 结构体基础
  • 14.4.2 结构体变量的初始化
  • 14.4.3 结构体数组
  • 14.4.4 结构体和函数
  • 14.4.5 结构体中的结构体
  • 14.4.6 位字段
  • 14.4.7 typedef
  • 第15章 和C语言同质化的数据类型(下)
  • 15.1 指针
  • 15.1.1 指针基础
  • 15.1.2 指针变量的运算
  • 15.1.3 指针变量作为函数参数
  • 15.1.4 指针和数组
  • 15.1.5 指针和多维数组
  • 15.1.6 指针和字符串
  • 15.1.7 指针数组和多级指针
  • 15.1.8 指针函数和函数指针
  • 15.1.9 结构体指针
  • 15.2 共用体
  • 15.2.1 定义共用体类型和共用体变量
  • 15.2.2 引用共用体变量
  • 15.3 块
  • 15.3.1 块的基本语法
  • 15.3.2 块和局部变量
  • 15.3.3 用typedef定义块类型
  • 第16章 文件操作
  • 16.1 Foundation框架的文件操作
  • 16.2 用NSFileManager管理文件和目录
  • 16.2.1 NSFileManager基础
  • 16.2.2 访问文件属性和内容
  • 16.2.3 使用NSData类
  • 16.2.4 创建、删除、移动和复制文件
  • 16.2.5 目录操作
  • 16.2.6 枚举目录中的内容
  • 16.2.7 查看目录的内容
  • 16.3 路径操作类
  • 16.3.1 常用的路径处理方法
  • 16.3.2 复制文件
  • 16.3.3 使用NSProcessInfo获取进程信息
  • 16.4 用NSFileHandle实现文件I/O操作
  • 16.5 使用NSURL读取网络资源
  • 16.6 使用NSBundle处理项目资源
  • 第17章 归档
  • 17.1 使用XML属性列表进行归档
  • 17.2 使用NSKeyedArchiver归档
  • 17.3 NSCoding协议
  • 17.4 编码方法和解码方法
  • 17.5 使用NSData创建自定义文档
  • 17.6 使用归档程序复制对象
  • 17.7 归档总结
  • 第五篇 核心组件
  • 第18章 Xcode IB界面开发
  • 18.1 IB基础
  • 18.2 和IB密切相关的库面板
  • 18.3 IB采用的方法
  • 18.4 IB中的故事板
  • 18.4.1 推出的背景
  • 18.4.2 故事板的文档大纲
  • 18.4.3 文档大纲的区域对象
  • 18.5 创建界面
  • 18.5.1 对象库
  • 18.5.2 将对象加入到视图中
  • 18.5.3 使用IB布局工具
  • 18.6 定制界面外观
  • 18.6.1 属性检查器的使用
  • 18.6.2 设置辅助功能属性
  • 18.6.3 测试界面
  • 18.7 iOS 9控件的属性
  • 18.8 实战演练——将界面的控件连接到代码
  • 18.8.1 打开项目
  • 18.8.2 输出口和操作
  • 18.8.3 创建到输出口的连接
  • 18.8.4 创建到操作的连接
  • 18.9 实战演练——纯代码实现UI设计
  • 第19章 使用Xcode编写MVC程序
  • 19.1 MVC模式基础
  • 19.1.1 诞生背景
  • 19.1.2 分析结构
  • 19.1.3 MVC的特点
  • 19.1.4 使用MVC实现程序设计的结构化
  • 19.2 Xcode中的MVC
  • 19.2.1 基本原理
  • 19.2.2 MVC的模板
  • 19.3 在Xcode中实现MVC
  • 19.3.1 视图
  • 19.3.2 视图控制器
  • 19.4 数据模型
  • 19.5 实战演练——使用Single View Application模板
  • 19.5.1 创建项目
  • 19.5.2 规划变量和连接
  • 19.5.3 设计界面
  • 19.5.4 创建并连接输出口和操作
  • 19.5.5 实现应用程序逻辑
  • 19.5.6 生成应用程序
  • 第20章 基础控件介绍
  • 20.1 文本框
  • 20.1.1 实战演练——实现用户登录界面
  • 20.1.2 实战演练——限制输入文本的长度
  • 20.2 文本视图
  • 20.2.1 实战演练——拖动输入的文本
  • 20.2.2 实战演练——关闭虚拟键盘的输入动作
  • 20.3 标签
  • 20.3.1 实战演练——使用标签显示一段文本
  • 20.3.2 实战演练——复制标签中的文本
  • 20.4 按钮
  • 20.4.1 实战演练——自定义按钮的图案
  • 20.4.2 实战演练——实现丰富多彩的控制按钮
  • 20.5 滑块控件
  • 20.5.1 实战演练——实现自动显示刻度的滑动条
  • 20.5.2 实战演练——实现带刻度的滑动条
  • 20.6 实战演练——设置指定样式的步进控件
  • 20.7 图像视图控件
  • 20.7.1 实战演练——实现图片浏览器
  • 20.7.2 实战演练——实现幻灯片播放器效果
  • 20.8 开关控件
  • 20.8.1 实战演练——改变开关控件的文本和颜色
  • 20.8.2 实战演练——创建并使用开关控件
  • 20.9 分段控件
  • 20.9.1 实战演练——分段控件的使用
  • 20.9.2 实战演练——使用分段控件控制背景颜色
  • 20.10 工具栏
  • 20.10.1 实战演练——自定义工具栏控件的颜色和样式
  • 20.10.2 实战演练——自定义工具栏
  • 20.11 选择器视图
  • 20.11.1 实战演练——实现两个选择器视图控件间的数据依赖
  • 20.11.2 实战演练——实现单列选择器
  • 20.12 日期选择控件
  • 20.12.1 实战演练——使用日期选择器自动选择时间
  • 20.12.2 实战演练——在屏幕中显示日期选择器
  • 第21章 Web视图控件、可滚动视图控件和翻页控件
  • 21.1 Web视图
  • 21.1.1 实战演练——在Web视图控件中调用JavaScript脚本
  • 21.1.2 实战演练——实现一个迷你浏览器
  • 21.2 可滚动的视图
  • 21.2.1 实战演练——可滚动视图控件的使用
  • 21.2.2 实战演练——通过滚动屏幕的方式浏览信息
  • 21.3 翻页控件
  • 21.3.1 翻页控件基础
  • 21.3.2 实战演练——自定义翻页控件的的外观样式
  • 第22章 提醒、操作表和表视图
  • 22.1 提醒视图
  • 22.1.1 实战演练——自定义提醒控件的外观
  • 22.1.2 实战演练——实现带输入框的提示框
  • 22.2 操作表
  • 22.2.1 实战演练——使用操作表控件定制按钮面板
  • 22.2.2 实战演练——实现图片选择器
  • 22.3 使用表视图
  • 22.3.1 实战演练——拆分表视图
  • 22.3.2 实战演练——实现图文样式联系人列表效果
  • 第23章 活动指示器、进度条和检索控件
  • 23.1 活动指示器
  • 23.1.1 实战演练——实现不同外观的活动指示器
  • 23.1.2 实战演练——实现环形进度条效果
  • 23.2 进度条
  • 23.2.1 实战演练——自定义外观样式的进度条
  • 23.2.2 实战演练——实现多个具有动态条纹背景的进度条
  • 23.3 检索条
  • 23.3.1 实战演练——使用检索控件快速搜索信息
  • 23.3.2 实战演练——使用UISearchDisplayController实现搜索功能
  • 第24章 UIView和视图控制器详解
  • 24.1 UIView基础
  • 24.1.1 UIView的结构
  • 24.1.2 视图架构
  • 24.1.3 实战演练——给任意UIView视图的4条边框加上阴影
  • 24.2 实战演练——使用导航控制器手动旋转屏幕
  • 24.3 使用UINavigationController
  • 24.3.1 UINavigationController详解
  • 24.3.2 实战演练——实现界面导航条功能
  • 24.4 选项卡栏控制器
  • 24.4.1 实战演练——使用动态单元格定制表格行
  • 24.4.2 实战演练——使用Segue实现过渡效果
  • 第25章 UICollectionView和UIVisualEffectView控件
  • 25.1 UICollectionView控件详解
  • 25.1.1 UICollectionView的构成
  • 25.1.2 实现简单的UICollectionView
  • 25.1.3 自定义UICollectionViewLayout
  • 25.1.4 实战演练——使用UICollectionView控件实现网格效果
  • 25.2 UIVisualEffectView控件详解
  • 25.2.1 UIVisualEffectView基础
  • 25.2.2 使用VisualEffectView控件实现模糊特效
  • 25.2.3 使用VisualEffectView实现Vibrancy效果
  • 25.2.4 实战演练——在屏幕中实现模糊效果
  • 第六篇 典型应用
  • 第26章 图形、图像、图层和动画
  • 26.1 图形处理
  • 26.1.1 实战演练——在屏幕中绘制三角形
  • 26.1.2 实战演练——绘制几何图形
  • 26.2 图像处理
  • 26.2.1 实战演练——在屏幕中绘制图像
  • 26.2.2 实战演练——实现对图片的旋转和缩放
  • 26.3 图层
  • 26.3.1 视图和图层
  • 26.3.2 实战演练——实现图片、文字及其翻转效果
  • 26.4 实现动画
  • 26.4.1 实战演练——使用动画样式显示电量使用情况
  • 26.4.2 实战演练——使用属性动画
  • 第27章 多媒体应用
  • 27.1 访问声音服务
  • 27.1.1 声音服务基础
  • 27.1.2 实战演练——播放声音文件
  • 27.2 提醒和振动
  • 27.2.1 播放提醒音
  • 27.2.2 实战演练——使用iOS的提醒功能
  • 27.3 Media Player框架
  • 27.3.1 Media Player框架中的类
  • 27.3.2 实战演练——使用Media Player播放视频
  • 27.4 AV Foundation框架
  • 27.4.1 准备工作
  • 27.4.2 实战演练——使用AV Foundation框架播放视频
  • 27.5 图像选择器
  • 27.5.1 使用图像选择器
  • 27.5.2 实战演练——获取图片并缩放
  • 第28章 定位处理
  • 28.1 Core Location框架
  • 28.1.1 Core Location基础
  • 28.1.2 使用流程
  • 28.2 获取位置
  • 28.2.1 位置管理器委托
  • 28.2.2 获取航向
  • 28.3 地图功能
  • 28.3.1 Map Kit基础
  • 28.3.2 为地图添加标注
  • 28.4 实战演练——定位当前的位置信息
  • 第29章 触摸、手势识别和Force Touch
  • 29.1 多点触摸和手势识别基础
  • 29.2 触摸处理
  • 29.2.1 触摸事件和视图
  • 29.2.2 iOS中的手势操作
  • 29.2.3 实战演练——触摸的方式移动视图
  • 29.3 手势处理
  • 手势处理基础
  • 29.4 Force Touch技术
  • 29.4.1 Force Touch介绍
  • 29.4.2 Force Touch API介绍
  • 29.4.3 实战演练——使用Force Touch
  • 第30章 Touch ID详解
  • 30.1 初步认识Touch ID
  • 30.2 开发Touch ID应用程序
  • 30.2.1 Touch ID的官方资料
  • 30.2.2 实战演练——Touch ID认证综合应用
  • 第31章 游戏开发
  • 31.1 Sprite Kit框架基础
  • 31.1.1 Sprite Kit的优点和缺点
  • 31.1.2 Sprite Kit、Cocos2D、Cocos2D-X和Unity的选择
  • 31.2 实战演练——开发一个Sprite Kit游戏程序
  • 第七篇 综合实战
  • 第32章 房屋出租管理系统的开发
  • 32.1 系统功能介绍
  • 32.2 具体实现
  • 32.2.1 实现接口文件
  • 32.2.2 实现系统主界面
  • 32.2.3 实现用户登录界面
  • 欢迎来到异步社区!
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

人民邮电出版社

人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。