描述
开 本: 16开纸 张: 胶版纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787121207075
案例真实,拿来就用
覆盖全面,从入门到精通
畅销书作者郭宏志又一力作
本书主要介绍了基础语言入门(C语言特性和Objective-C)、面向对象设计思想、高级设计模式、系统类库、UI界面、数据库、网络编程、多线程、GPS定位、设备应用、图形图像、多媒体、项目案例、开发账号申请和应用发布,涵盖了iOS开发的方方面面。作为初学者,通过本书可以从头到尾系统地学习iOS开发;作为有经验的开发者,本书可以作为一本很好的参考书籍,随时查阅所要用到的知识。
第1章 Mac操作系统和开发环境
1.1 Mac操作系统简介
1.2 Windows操作习惯的改变
1.3 Mac系统配置
1.4 使用Finder
1.5 Dock启动菜单
1.6 使用Terminal终端
1.7 使用App Store
1.8 Mac常用快捷键
1.9 下载并安装Xcode
第2章 Xcode的使用
2.1 Xcode简介
2.2 使用Xcode创建项目
2.3 Xcode界面纵览
2.4 使用Xcode中的Interface Builder构建界面
2.5 Xcode快捷键
2.6 Organizer组织中心
第3章 Hello World Objective-C
3.1 使用Xcode 编辑、编译和运行Hello World
3.2 使用命令行编辑、编译并运行Hello World
3.3 Objective-C中的注释
3.4 使用NSLog输出变量
3.5 NSLog的格式化输出
第4章 Objective-C中的面向对象
4.1 对象和类简介
4.2 Objective-C中类的定义
4.3 实例变量、实例方法、类方法
4.4 类的实例化及方法的调用
4.5 类的初始化
4.6 属性
第5章 Objective-C中的数据类型
5.1 整型
5.2 浮点类型
5.3 字符型(char)
5.4 布尔类型
5.5 整型修饰符(short, long, signed, unsigned)
5.6 特殊类型(id)
第6章 Objective-C中的运算符
6.1 赋值运算
6.2 算术运算
6.3 自增自减
6.4 关系运算
6.5 逻辑运算
6.6 位运算
第7章 Objective-C流程控制、数据结构
7.1 选择(if else、switch、三元运算)
7.2 循环(for、while、do while、break、continue)
7.3 常用的数据结构:数组、栈
第8章 Objective-C分类和协议
8.1 分类的概念
8.2 分类的用法
8.3 协议的概念
8.4 协议的用法
第9章 Objective-C继承和多态
9.1 继承和组合
9.2 OCP设计原则及多态
第10章 C语言特性在Objective-C中的应用
10.1 预处理
10.2 数组
10.3 指针
10.4 结构体
第11章 Objective-C内存管理
11.1 对象的引用计数
11.2 Autorelease Pool
11.3 属性的内存管理
11.4 内存的自动引用计数(ARC)
11.5 内存管理的其他注意事项
第12章 NSNumber和NSString
12.1 NSNumber
12.2 NSString(字符串)
12.3 NSMutableString(可变字符串)
第13章 Foundation中的集合框架
13.1 数组NSArray和NSMutableArray
13.2 集合NSSet和NSMutableSet
13.3 字典NSDictionary和NSMutableDictionary
第14章 Foundation框架中的文件和目录
14.1 使用NSFileManager管理文件
14.2 使用NSFileManager管理目录
14.3 使用NSFileHandler读写文件
第15章 Objective-C中的对象复制
15.1 概述
15.2 对象的浅复制和深复制
15.3 NSCopying和NSMutableCopying协议
第16章 Objective-C中的文件归档
16.1 概述
16.2 使用属性列表(plist)保存数据
16.3 使用NSKeyedArchiver归档
16.4 归档自定义类型
16.5 利用归档实现深复制
第17章 iOS编程中常用的设计模式
17.1 MVC
17.2 Target-Action
17.3 代理
第18章 iOS用户界面
18.1 UIResponder
18.2 UIView
18.2.1 UIView的创建
18.2.2 UIView的核心属性
18.3 UILabel
18.4 UITextView
18.5 UIButton
18.6 UITextField
18.7 UISwitch
18.8 UISlider
18.9 UISegmentedControl
18.10 UIProgressView
18.11 UIActivityIndicatorView
18.12 UIAlertView
18.13 UIActionSheet
18.14 UIImageView
18.15 UIScrollView
18.16 UIWebView
18.17 UIDatePicker
18.18 UIPickerView
第19章 iOS控制器
19.1 UIViewController
19.2 UITabBarController
19.3 UINavigationController
19.4 UISplitViewController
19.5 UIPopoverController
19.6 UITableViewController
19.6.1 UITableViewController基本用法
19.6.2 分区表
19.6.3 自定义表格单元格
19.6.4 编辑表格数据
第20章 图形图像和动画
20.1 字体和颜色
20.2 绘制文本
20.3 绘制图片
20.4 画线
20.5 绘制矩形
20.6 移动动画
20.7 缩放动画
20.8 旋转动画
第21章 iOS多媒体
21.1 为多媒体开发做准备
21.2 使用AVAudioPlayer播放音乐
21.3 使用AVAudioPlayerDelegate处理播放中断及续播
21.4 使用AVAudioRecorder实现录音
21.5 使用AVAudioRecorderDelegate处理录音中断和续录
21.6 使用MPMoviePlayerController播放视频
21.7 捕获视频缩略图
21.8 使用MPMediaPickerController选择系统音乐
21.9 使用UIImagePickerController进行拍照和录像
第22章 iOS SQLite数据库
22.1 SQLite简介
22.2 在命令行使用SQLite
22.3 使用SQLite实现表的增、删、查、改
22.4 SQLite和UITableView结合使用
第23章 iOS Core Data编程
23.1 Core Data简介
23.2 使用Xcode模板创建Core Data项目
23.3 使用Core Data实现数据的增、删、查、改
23.4 Core Data数据在UITableView中展现
第24章 iOS网络编程
24.1 检测网络状态
24.2 使用NSURLConnection从网络获取数据
24.3 使用NSMutableURLRequest向服务器发送数据
24.4 JSON数据解析
24.5 XML数据解析
24.6 使用开源框架ASIHttpRequest实现网络编程
第25章 iOS多线程
25.1 NSThread
25.2 Block基础
25.2.1 Block的声明与调用
25.2.2 有返回值和参数的Block
25.3 Grand Central Dispatch(GCD)
25.4 操作对象(Operation Object)
第26章 iOS GPS定位应用
26.1 为项目添加必要的框架
26.2 使用MKMapView显示地图
26.2.1 使用MapView组件直接显示地图
26.2.2 使用代码显示地图
26.3 使用MKMapView的代理MKMapViewDelegate
26.4 使用CLLocationManager获得设备当前经纬度信息
26.5 在地图上标注位置
26.6 使用CLGeocoder将位置描述转换为经纬度信息
26.7 使用CLGeocoder将经纬度信息转换为位置描述
26.8 使用Google Place API 查询周边位置信息
第27章 iOS手势处理
27.1 点击手势处理UITapGestureRecognizer
27.2 捏合手势处理UIPinchGestureRecognizer
27.3 旋转手势处理UIRotationGestureRecognizer
27.4 滑动手势处理UISwipeGestureRecognizer
27.5 拖动手势处理UIPanGestureRecognizer
27.6 长按手势处理UILongPressGestureRecognizer
第28章 iOS传感器编程
28.1 传感器编程的准备工作
28.2 加速度传感器(Accelerometer)
28.3 陀螺仪传感器(Gyroscope)
28.4 磁力传感器(Magnetometer)
28.5 设备移动传感器(Device motion)
28.6 通过加速度传感器控制小球运动
第29章 AddressBook联系人管理
29.1 概述
29.2 读取所有联系人
29.3 添加联系人
第30章 在App Store掘金
30.1 注册开发者账号
30.2 申请成为开发者
30.3 证书申请
30.4 真机调试
30.5 应用提交
第31章 iOS项目实战——新浪微博客户端
31.1 项目准备工作
31.2 搭建项目基础框架
31.3 项目功能概述
31.4 项目界面结构
31.5 获得最新微博信息
31.6 发布微博
31.7 获得微博详细信息
31.8 获得微博评论和转发
31.9 发表评论
31.10 转发微博
31.11 收藏微博
移动互联网可以将移动通信和互联网整合在一起,这个生态圈包括了移动运营商、互联网和移动终端。移动互联网可以使终端设备随时随地地访问互联网资源和应用。移动互联网时代已经来临,一个崭新的时代开始了,有人预言移动互联网会使整个IT界重新洗牌,大大小小的IT公司纷纷开始布局移动互联网。互联网时代创造了一个经济神话,也造就了很多时代英雄,他们令人仰慕。试想:为数亿的移动用户和数亿的网民建立一个共同的平台,使其应用到企业、商业和农村之间,又会是怎样的一个惊天动地的伟业呢?新时代开始了,你愿意输在起跑线上吗?移动互联网生态圈如下:
移动设备操作系统目前呈现三足鼎立的局面,Google的Android后来居上,占领了绝大多数的市场份额;Apple的iOS虽然没有Android市场份额大,但却占据了绝大多数的利润;Microsoft的WP8也被看做是未来的希望;而昔日一支独大的诺基亚Symbian已经是昨日黄花,不再光鲜。2013年手机操作系统市场份额如下:
苹果公司经历了大起大落之后,终于修成正果,成为全球市值最高的企业。自2012年年底开始,苹果市值一直是全球第一,比排名第二的埃克森美孚市值多53%。微软市值曾在1999年创下当时6205.8亿美元的最高纪录。在IT界苹果公司可谓是软硬通吃,有自己的操作系统Mac和移动设备操作系统iOS,有自己的台式机Mac一体机、笔记本MacBook和移动设备iPhone、iPad、iTouch。而且各个都是精品,产品质量可谓做到了极致。这就是苹果公司——那个并不完美,被“咬了一口”的苹果。苹果公司的热销产品如下:
App Store即Application Store,通常理解为应用商店。App Store是一个由苹果公司为iPhone和iPodTouch、iPad以及Mac创建的应用程序服务平台,允许用户从iTunes Store或Mac AppStore浏览和下载一些为iOS或Mac开发的应用程序。用户可以购买或免费试用,让该应用程序直接下载到iPhone或iPodTouch、iPad、Mac。其中包括:应用、游戏、工具,以及许多实用的软件。iPhone和iPodTouch、iPad以及Mac的应用程序商店有相同的名称App Store。iPad上的App Store运行界面如下:
App成功案例
2012年4月10日,Facebook宣布以10亿美元现金加股票的方式收购在线照片共享服务商Instagram。Instagram是一款支持iOS、Android平台的移动应用,允许用户在任何环境下抓拍自己的生活记忆,选择图片的滤镜样式(Lomo/Nashville/Apollo/Poprocket等10多种胶圈效果),一键分享到Instagram、Facebook、Twitter、Flickr或者新浪微博平台上。不仅仅是拍照,作为一款轻量级但十分有趣的App,Instagram在移动端融入了很多社会化元素,包括好友关系的建立、回复、分享和收藏等,这是Instagram作为服务存在而非应用存在最大的价值。Instagram运行界面如下:
《愤怒的小鸟(AngryBirds)》这款游戏的故事相当有趣,为了报复偷走鸟蛋的肥猪,鸟儿以自己的身体为武器,仿佛炮弹一样去攻击肥猪们的堡垒。游戏是十分卡通的2D画面,看着愤怒的红色小鸟,奋不顾身地往绿色的肥猪的堡垒砸去,那种奇妙的感觉还真是令人感到很欢乐。《愤怒的小鸟》开发商Rovio2012年凭借该系列游戏作品创造了营收翻番的壮举。官方数据显示,Rovio公司2012年的合并营收为1.522亿欧元,净利润为5550万欧元,两项数据分别比2011年提升了101%和57%。愤怒的小鸟程序画面如下:
iOS开发
一个熟练的iOS开发者,可以有以下三方面的机会。
(1)找到一份理想的工作。这可能是一个最基本的机会,也是一个没有风险的机会。
(2)自己写App发布到App Store去销售。如果你的作品很有创意,你很快也能成为百万富翁。
(3)成立团队去创业。这个有一定的风险,但是如果成功了回报也会很高,就看你如何选择了。
要想成为一个合格的iOS开发者,需要具备下列条件和技能。
(1)有一台开发设备——Apple笔记本或者Apple Mac台式机。
(2)有语言开发基础,如C语言、Objective-C语言。
(3)熟悉Apple SDK开发框架,如Foundation框架、UIKit框架等。
(4)有Apple开发账号,个人开发者每年需要99美元。
(5)最好懂一些设计知识。
内容简介
篇 名 章 名 详细内容
基础篇 第1章本章详细讲述了Mac系统的常用操作,包括Windows操作习惯的改变、Mac系统配置,如何使用Finder、Dock启动菜单、Terminal终端、AppStore、Mac常用快捷键,以及下载并安装Xcode等
第2章俗话说“工欲善其事,必先利其器”,Xcode是iOS开发必备的开发工具,熟练使用Xcode可以提高程序开发的效率。本章详细讲述了Xcode的使用,包括基本介绍、使用Xcode创建项目、Xcode界面纵览、使用Xcode中的InterfaceBuilder构建界面、Xcode快捷键和Organizer组织中心等
第3章 Hello World程序是学习任何语言都要写的第一个程序。本章详细讲述了如何编写Objective-C版本的HelloWorld,包括使用Xcode和命令行编辑、编译、运行HelloWorld,Objective-C中的注释,使用NSLog输出变量和NSLog的格式化输出
第4章面向对象是高级语言的必备特性,Objective-C也支持完整的面向对象特征。本章重点讲述了对象、类、Objective-C中类的定义、实例变量、实例方法、类方法、类的实例化及方法的调用、类的初始化和属性等
第5章为了更好地使用内存,每种语言都会定义数据类型,Objective-C中的数据类型和C语言类似,包括整型、浮点型、字符型、布尔型,以及整型修饰符short、long、signed、unsigned和特殊类型id等
第6章 Objective-C中的运算符包括赋值运算符、算术运算符、自增自减运算符、关系运算符、逻辑运算符和位运算符
第7章 熟悉程序的流程控制和常用数据结构是非常必要的。本章介绍了选择(ifelse、switch、三元运算)、循环(for、while、dowhile、break、continue)及常用的数据结构(数组、栈)等
第8章 本章讲述了Objective-C语言独有的语言特性:分类和协议
第9章 本章讲述了Objective-C的继承和多态等面向对象特性
第10章iOS开发可以同时使用C语言、C++和Objective-C混合编写,熟悉C语言中的特性还是非常必要的。本章讲述了C语言中的预定义、数组、指针和结构体
第11章在Objective-C的低版本中内存管理令初学者很头疼,但是在高版本中提供了自动内存管理机制,不过理解内存管理还是很有好处的。本章讲述了对象的引用计数、AutoreleasePool、属性的内存管理、内存的自动引用计数(ARC)和内存管理的其他注意事项
续表
篇 名 章 名 详细内容
基础篇 第12章 本章介绍了NSNumber和NSString这两个常用类
第13章本章讲述了集合框架的用法,包括:数组NSArray和NSMutableArray、集合NSSet和NSMutableSet、字典NSDictionary和NSMutableDictionary
第14章 本章讲述了使用NSFileManager管理文件和目录,以及使用NSFileHandler读写文件
第15章本章讲述了Objective-C中的对象复制,包括:对象的浅复制和深复制、NSCopying和NSMutableCopying协议等
第16章本章讲述了Objective-C中的文件归档,包括:使用属性列表(plist)保存数据、使用NSKeyedArchiver归档、归档自定义类型、利用归档实现深复制
技术篇 第17章 本章介绍了iOS编程中常用的设计模式,包括:MVC、Target-Action和代理等
第18章本章详细讲述了iOS用户界面,使用到的类包括:UIResponder、UIView、UILabel、UITextView、UIButton、UITextField、UISwith、UISlider、UISegmentedControl、UIProgressView、UIActivityIndicatorView、UIAlertView、UIActionSheet、UIImageView、UIScrollView、UIWebView、UIDatePicker和UIPickerView
第19章控制器是iOS程序中的重要组成部分,也是连接视图和模型的纽带。本章详细讲述了UITabBarController、UINavigationController、UISplitViewController、UIPopoverController和UITableViewController等控制器
第20章很多应用程序和游戏都有漂亮的画面与动画效果,这些都离不开图形图像和动画编程。本章内容包括:字体和颜色、绘制文本、绘制图片、画线、绘制矩形、移动动画、缩放动画和旋转动画等
第21章多媒体功能已经成为智能手机的重要功能,本章内容包括:使用AVAudioPlayer播放音乐、使用AVAudioPlayerDelegate处理播放中断及续播、使用AVAudioRecorder实现录音、使用AVAudioRecorderDelegate处理录音中断和续录、使用MPMoviePlayerController播放视频、捕获视频缩略图、使用MPMediaPickerController选择系统音乐,以及使用UIImagePickerController进行拍照和录像
第22章 数据库可以很好地以结构化方式保存数据,本章介绍了SQLite数据库在
评论
还没有评论。