由于此商品库存有限,请在下单后15分钟之内支付完成,手慢无哦!
100%刮中券,最高50元无敌券,券有效期7天
活动自2017年6月2日上线,敬请关注云钻刮券活动规则更新。
如活动受政府机关指令需要停止举办的,或活动遭受严重网络攻击需暂停举办的,或者系统故障导致的其它意外问题,苏宁无需为此承担赔偿或者进行补偿。
醉染图书Swift开发秘籍9787302443759
¥ ×1
章欢迎使用Swift1
1.1代码迁移2
1.1.1如何迁移2
1.1.2迁移课程3
1.2使用Swift4
1.2.1编译应用4
1.2.2框架和库5
1..脚本
1.2.4REPL6
1.2.5Playground7
1.2.68
1.3学习Swift8
1.4小结9
第2章打印与映11
2.1基础打印11
2.1.1打印多个条目12
2.1.2添加条目分隔符13
2.1.3字符串插值13
2.1.4控制换行符14
2.2秘诀:打印自定义目标16
2.2.1打印字符串16
2.2.2打印自定义输出流17
.秘诀:打印和字符串格式化19
..1Swift和格式说明符20
..2格式化的局限20
..条件编译21
2.4调试打印22
2.5秘诀:后缀打印24
2.6快速查找25
2.6.1ickLookforCustomTypes25
2.6.2Playground中的ickLookforCustomTypes26
2.6.3PlaygroundickLooks26
2.6.4为Playground创建自定义ickLook27
2.6.5内置ickLook类型28
2.6.6第三方渲染29
2.7使用Dump函数30
2.8构建自定义映31
2.8.1递归映33
2.8.2使用协议一致构建
基本映描述33
2.9添加标题文档35
2.9.1构建标题文档36
2.9.2Markdown支持36
2.9.3关键字37
2.9.4特殊的Swift关注点39
2.9.5为标题文档添加图像40
2.10小结41
第3章可选类型?!43
3.1可选类型初步43
3.2展开可选值(UnwrappingOptionals)45
3.2.1强制展开45
3.2.2条件绑定45
3..条件绑定和类型转换46
3.2.4级联绑定48
3.2.5guard语句49
3.2.6可选值的隐式展开50
3.2.7保护failable初始化器52
3.2.8可选值和哨兵值53
3.2.9合并55
3.2.10可选赋值55
3.2.11可选模式56
3.3可选链58
3.3.1选择器测试和可选链60
3.3.2下标61
3.4可选映61
3.4.1映和链62
3.4.2使用flatMap过滤nil值62
3.5非托管包装器63
3.6小结64
第4章闭包和函数67
4.1创建函数67
4.1.1参数名68
4.1.2标签约定68
4.1.3方法和函数的命名70
4.1.4外部和局部参数71
4.1.5默认参数71
4.1.6常量和变量参数73
4.1.7修改参数74
4.2闭包和函数75
4.2.1函数类型75
4.2.2使用元组实参76
4..使用实参名缩写77
4.2.4推断闭包类型78
4.2.5参数类型推断80
4.2.6声明类型别名80
4.2.7嵌套函数81
4.3元组83
4.3.1将元组转换成结构体84
4.3.2元组返回类型85
4.4可变参数86
4.5捕获值87
4.6Autoclosure90
4.7柯里化(Currying)94
4.7.1柯里化的原因95
4.7.2构建库95
4.7.3局部应用97
4.7.4柯里化的成本97
4.7.5柯里化和回调97
4.7.6柯里化实践99
4.8将闭包传递给函数参数100
4.9小结103
第5章泛型和协议105
5.1详述泛型105
5.1.1协议106
5.1.2标记107
5.1.3类型约束108
5.2采用协议108
5.2.1声明协议109
5.2.2成员声明111
5..构建基本协议113
5.2.4添加协议的默认实现114
5.2.5可选的协议要求116
5.2.6Swift原生的可选协议要求116
5.3构建泛型类型117
5.4泛型要求119
5.4.1一致要求119
5.4.2秘诀:相同类型要求120
5.4.3泛型美化121
5.4.4合法的标记122
5.4.5匹配别名1
5.4.6协议别名的默认值1
5.4.7关联类型总结124
5.5扩展泛型类型125
5.6使用协议类型126
5.6.1基于协议的集合126
5.6.2Self要求126
5.6.3协议对象和Self要求128
5.7利用协议129
5.8小结129
第6章错误131
6.1冷酷无情的失败131
6.1.1致命错误132
6.1.2断言132
6.1.3先决条件133
6.1.4中断和退出134
6.2优雅地失败134
6.2.1ErrorType协议134
6.2.2在可选项和错误处理之间做出选择136
6.3Swift的错误规则136
6.3.1规则1:远离nil哨兵136
6.3.2规则2:使用throw抛出错误138
6.3.3规则3:使用带有可见访问的错误类型139
6.3.4规则4:使用throws来标记所有错误参与的方法139
6.3.5规则5:坚持使用rethrws40
6.3.6规则6:消耗错误是很重要的141
6.3.7规则7:终止线程的错误链141
6.4构建错误143
6.4.1良好的错误144
6.4.2为错误命名144
6.5添加字符串描述145
6.5.1添加原因145
6.5.2简化输出146
6.5.3扩展字符串147
6.5.4类型特定的错误147
6.6获取上下文147
6.6.1将字符串置于上下文中研究148
6.6.2将抛出类型置于上下文中研究149
6.6.3简化上下文151
6.7调用抛出函数152
6.7.1使用try152
6.7.2错误传播153
6.7.3使用try!154
6.7.4使用try?155
6.8为try?实现替代方法156
6.8.1谨慎使用结果158
6.8.2构建try?的打印版本158
6.9使用guard和defer159
6.10小结160
第7章类型161
7.1语言概念161
7.1.1引用类型和值类型161
7.1.2复制与回写163
7.1.3代数数据类型164
7.1.4术语164
7.2枚举165
7.2.1基本枚举166
7.2.2使用哈希值来支持区间166
7..原始值枚举168
7.2.4原始值成员和序列169
7.2.5关联值171
7.2.6间接值172
7.3switch语句173
7.3.1分支173
7.3.2中断174
7.3.3fallthrough174
7.3.4复杂的case176
7.3.5元组176
7.3.6值绑定的模式匹配177
7.3.7where子句177
7.3.8展开可选的枚举178
7.4通过类型嵌入值179
7.5选项集182
7.5.1重温NS_OPTIONS182
7.5.2构建枚举183
7.5.3构建选项集184
7.5.4查看选项184
7.6类185
7.6.1优化186
7.6.2初始化器186
7.6.3初始化步骤187
7.6.4指定初始化器和便利初始化器187
7.6.5初始化器规则187
7.6.6构建便利初始化器188
7.6.7可失败初始化器和抛出初始化器189
7.6.8析构器191
7.7属观察器192
7.8扩展和重写194
7.9惰求值196
7.9.1惰序列196
7.9.2惰属196
7.10小结197
第8章杂记199
8.1声明标签199
8.2自定义运算符201
8.2.1声明运算符201
8.2.2运算符的一致202
8..对运算符的取舍进行评估203
8.3数组的索引203
8.3.1多索引的数组访问204
8.3.2封装索引206
8.3.3数组切片206
8.4泛型下标207
8.5字符串工具209
8.5.1重复元素初始化器209
8.5.2字符串和基数209
8.5.3字符串区间211
8.5.4字符串分割212
8.5.5字符串下标213
8.5.6与Foundation的互操作214
8.5.7连接与扩展214
8.6序列生成器215
8.7小结217
Erica Sadun,一位书作家,是几十本关于编程和技术主题书籍的编著者和贡献者。她在TUAW.com、O'Reilly's Mac Devcenter、Lifehackel和Ars Technica上都拥有自己的博客。除了是几十个iOS原生应用的作者外,Erica Sadun还拥有美国佐治亚理工学院的图形、可视化和可用中心(Georgia Tech's Graphics、Visualization and Usability Center)的计算机科学博士。她拥有极客、程序员以及作者身份,她从未见过什么她不喜欢的小玩意儿。不忙于写作时,她和她的极客丈夫就会抚养三个小极客。
亲,大宗购物请点击企业用户渠道>小苏的服务会更贴心!
亲,很抱歉,您购买的宝贝销售异常火爆让小苏措手不及,请稍后再试~
非常抱歉,您前期未参加预订活动,
无法支付尾款哦!
抱歉,您暂无任性付资格