《iOS企业级应用开发技术》和凌志 文字版 电子书下载
和凌志,客座教授,工信部人才交流中心认证讲师;拥有十多年移动互联网开发经验,先后在 Siemens Mobile、 Flextronics 等欧美公司担任手机软件架构师。2014年, 为北京高校录制慕课“iOS企业级应用开发技术”。近几年,专注于全栈技术开发, 代表产品有“点时”APP ——轻量级知识分享平台。
本书聚焦在APP“产品”的设计、开发和运营层面,特别强调架构和设计模式的重要性,有意识地将设计模式应用到代码的编写中,重点介绍iOS企业级应用开发的设计思维方式,并与全栈开发技术结合起来。 全书分为iOS基础篇、Web与Native混合开发模式篇和全栈开发技术篇。iOS基础篇主要介绍iOS基础知识、多种设计模式下的视图控制器之间的传值、App与服务器接口的定义、CollectionView的应用;Web与Native混合开发模式篇主要介绍Block的应用、iOS网络请求、JavaScript基础、Web与Native的交互;全栈开发技术篇主要介绍Node.js、Express、AngularJS、MongoDB、MEAN全栈技术的实现。
iOS基础篇
第1章 iOS基础知识 2
1.1 Objective-C语法简介 2
1.1.1 Objective-C的奇特之处 2
1.1.2 如何声明一个实例变量 4
1.1.3 Objective-C字符串 5
1.2 Objective-C的对象类型与基本数据类型 6
1.2.1 对象类型与基本数据类型的混合使用 6
1.2.2 对象类型与基本数据类型的转换 7
1.3 不可变数组与可变数组 7
1.3.1 不可变数组(NSArray)的特征 8
1.3.2 可变数组(NSMutableArray)的特征 8
1.3.3 如何遍历数组中的对象 8
1.3.4 NSArray与NSMutableArray的应用 10
1.4 不可变字典与可变字典 11
1.4.1 不可变字典(NSDictionary) 11
1.4.2 可变字典(NSMutableDictionary) 12
1.4.3 如何遍历字典中的对象 12
1.4.4 NSArray与NSDictionary的应用 13
1.4.5 创建类的对象 13
1.5 iOS应用程序概述 14
1.5.1 应用程序的入口 14
1.5.2 应用程序委托(AppDelegate) 14
1.5.3 UIApplication应用场景 15
1.5.4 一种简单的永久数据存储方式 16
1.6 iOS定制化控件 17
1.6.1 定制化View的创建 17
1.6.2 小标签(UILabel),大用场 19
1.6.3 如何实现输入框随键盘上移 20
1.7 视图的层级管理 23
1.7.1 创建视图的方法 23
1.7.2 如何从父视图中移除子视图 25
1.7.3 登录页面的实现 26
1.8 iOS编程规范 28
1.8.1 代码的可维护性 29
1.8.2 面向对象的编程思想 29
1.8.3 优先编写轻量级的ViewController 30
1.9 小结 31
第2章 视图控制器之间的传值 32
2.1 通过Delegate实现ViewController之间的传值 32
2.1.1 Delegate概述 32
2.1.2 学习Delegate的困惑 32
2.1.3 从一道经典的面试题说起 33
2.1.4 学习Delegate常出现的几个误区 33
2.1.5 Delegate技术难点在哪里 34
2.1.6 数据逆向传送一定要通过Delegate吗 34
2.1.7 Delegate应用五步曲 35
2.1.8 Delegate优势 38
2.2 通过单例实现ViewController之间的传值 38
2.2.1 单例的创建 39
2.2.2 单例的初始化 40
2.2.3 单例设计模式的本质 41
2.2.4 通过单例实现传值 41
2.2.5 单例模式在登录模块中的应用 42
2.2.6 单例模式的优势 44
2.3 通过KVO实现ViewController之间的传值 44
2.3.1 什么是KVC 44
2.3.2 什么是KVO 45
2.3.3 KVO的特点 46
2.3.4 使用KVO的步骤 46
2.3.5 KVO的实现方法 46
2.3.6 KVO应用注意事项 50
2.4 通过NSNotification实现ViewController之间的传值 50
2.4.1 NSNotification的定义 51
2.4.2 NSNotificationCenter 51
2.4.3 发出通知 51
2.4.4 接收通知 52
2.4.5 移除通知 52
2.4.6 异步模式下的通知操作 53
2.4.7 通过NSNotification实现ViewController之间的传值 53
2.4.8 NSNotification与Delegate的区别 55
2.4.9 监听系统自带的NSNotification 56
2.5 小结 58
第3章 App与服务器接口的定义 59
3.1 关于JSON的认识 59
3.2 App与服务器接口的定义 61
3.2.1 App与后台的接口设计 61
3.2.2 后台返回的数据格式 61
3.2.3 后台返回的提示信息 62
3.3 JSON与Model的转换 62
3.3.1 JSONModel常见的用法 63
3.3.2 JSONModel的几个属性用法 67
3.4 小结 69
第4章 CollectionView的应用 70
4.1 CollectionView与TableView孰优孰劣 70
4.1.1 TableView的应用场景 70
4.1.2 CollectionView的应用场景 71
4.1.3 CollectionView与TableView概念对比 71
4.1.4 CollectionView与TableView的性能对比 71
4.2 什么是UICollectionView 71
4.3 实现一个简单的UICollectionView 72
4.4 UICollectionViewCell视图层级 73
4.5 UICollectionViewDataSource 74
4.6 关于Cell的重用 74
4.7 UICollectionViewDelegate 75
4.8 UICollectionViewLayout 76
4.9 实现一个简单的瀑布流 77
4.9.1 通过手动编码创建UICollectionView 78
4.9.2 直接拖曳一个CollectionViewController 81
4.9.3 基于Xib创建一个UICollectionViewCell 86
4.10 自定义瀑布流的应用场景 88
4.11 自定义Flow Layout进行瀑布流布局 88
4.11.1 自定义瀑布流的应用场景 89
4.11.2 自定义瀑布流的实现思路 90
4.11.3 创建自定义的Flow Layout 90
4.11.4 创建自定义的CollectionViewCell 92
4.11.5 关于initWithFrame:方法的使用 93
4.11.6 自定义瀑布流的完整实现 94
4.11.7 UICollectionView相关的类图 96
4.11.8 如何实现UICollectionView的轮播 97
4.12 CollectionView与TableView的区别 98
4.13 图片轮播的实现思路 98
4.14 CollectionView注意事项 99
4.15 小结 100
Web与Native混合开发模式
第5章 Block的应用 102
5.1 Block缘起 102
5.2 Block概述 103
5.3 Block的声明、实现与调用 104
5.3.1 Block的声明 104
5.3.2 Block的实现 106
5.3.3 Block的调用 108
5.3.4 Block外部变量的访问 109
5.4 Block的应用场景 110
5.4.1 Block用于completionHandler 110
5.4.2 Block声明为实例变量 113
5.4.3 typedef Block 114
5.5 通过Block实现视图控制器之间的逆向传值 115
5.5.1 应用场景 115
5.5.2 代码实现 115
5.6 小结 118
第6章 iOS网络请求 119
6.1 iOS网络请求概述 119
6.2 AFNetworking的应用 119
6.2.1 AFNetworking概述 119
6.2.2 AFNetworking框架使用方法 121
6.2.3 影响网络请求的几个条件 122
6.2.4 善用URL宏定义 124
6.2.5 URl接口应统一管理 124
6.2.6 AFNetworking的二次封装 126
6.3 AFNetworking的序列化问题 126
6.3.1 AFNetworking请求格式 127
6.3.2 AFNetworking响应格式 128
6.4 异步请求数据并刷新UI页面 128
6.5 远程文件下载 130
6.5.1 基于AFNetworking的文件下载 130
6.5.2 基于NSURLSession的文件下载 132
6.5.3 网络安全访问设置 133
6.6 小结 134
第7章 JavaScript基础 135
7.1 JavaScript语法 135
7.2 变量的声明与赋值 136
7.3 如何判断两个字符串是否相等 137
7.4 创建JavaScript对象的三种方法 138
7.5
声明与函数表达式 140
7.6 可立即调用的函数表达式 143
7.7 循环的实现 145
7.8 防止JavaScript自动插入分号 146
7.9 严格模式 147
7.10 如何运行与调试JavaScript代码 148
7.10.1 把JavaScript代码内嵌到HTML页面中 148
7.10.2 通过Node.js运行JavaScript代码 150
7.11 JavaScript的面向对象设计思想 150
7.12 JavaScript的异步编程模式 151
7.12.1 Promise对象 152
7.12.2 生成Promise实例对象 152
7.12.3 Promise原型方法 154
7.12.4 Promise的catch方法 154
7.13 如何在HTML中嵌入JavaScript 155
7.13.1 ……
尊敬的读者:
欢迎您访问我们的网站。本站的初衷是为大家提供一个共享学习资料、交换知识的平台。每位用户都可以将文件上传至网盘并分享。
然而,随着用户上传的资料增多,我们发现部分不宜或版权问题的书籍被分享到了本站。
为此,我们已经关闭了分享入口,并进行了多次书籍审查,但仍有部分内容未能彻底审查到位。
在此,我们恳请广大读者与我们共同监督,如发现任何不宜内容,请 点击此处 进行举报,我们会第一时间处理并下架相关内容。
希望我们能共建一个文明社区!感谢您的理解与支持!
猜你喜欢
- 《美国黑镜》巴顿·格尔曼 电子书下载
- 《产品游戏化:让你的产品像游戏一样简单有趣有生命力》 电子书下载
- 《美元的逻辑:货币绑架与战争撕票的背后》章玉贵 文字版 电子书下载
- 《突破现实的困境:趋势、禀赋与企业家的大战略》克里斯·布拉德利中文版 电子书下载
- 《精简社交:用可视化图谱解决人际关系难题》莫拉格・巴雷特文字版 电子书下载
- 《需要时,就给我电话》雷蒙德·卡佛中文修订版 电子书下载
- 《新基建》任泽平/马家进/连一席文字版 电子书下载
- 《爱尔兰人》查尔斯・勃兰特简体译文珍藏版 电子书下载
- 《阿西莫夫银河帝国系列》艾萨克・阿西莫夫文字版 电子书下载
- 《社交天性》马修·利伯曼 电子书下载
- 《暴风雨的记忆》曹一凡 / 维一 / 北岛文字版 电子书下载
- 《天长地久:给美君的信》 龙应台 文字版 电子书下载