当前位置:主页 > 计算机电子书 > 程序设计 > Swift下载
Swift编程权威指南(第2版)

Swift编程权威指南(第2版) PDF 超清中文版

  • 更新:2021-12-21
  • 大小:28.3 MB
  • 类别:Swift
  • 作者:陈晓亮
  • 出版:人民邮电出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

内容简介

BigNerdRanch是美国专业的移动开发技术培训机构,这本书就是它的培训资料。这本书系统地解释了如何使用苹果的Swift语言在iOS和macOS平台上开发iPhone、iPad和Mac应用的基本概念和编程技巧。本文主要围绕使用Swift语言开发iOS和macOS,并结合大量代码示例,教会读者使用先进的iOS和macOS功能开发真实应用。

目录

  • 第一部分起步
  • 第1章起步2
  • 1.1Xcode起步2
  • 1.2尝试playground4
  • 1.3修改变量并打印信息到控制台5
  • 1.4继续前进7
  • 1.5青铜挑战练习7
  • 第2章类型、常量和变量8
  • 2.1类型8
  • 2.2常量与变量9
  • 2.3字符串插值11
  • 2.4青铜挑战练习12
  • 第二部分基础知识
  • 第3章条件语句14
  • 3.1if/else14
  • 3.2三目运算符16
  • 3.3嵌套的if17
  • 3.4else if18
  • 3.5青铜挑战练习19
  • 第4章数20
  • 4.1整数20
  • 4.2创建整数实例22
  • 4.3整数操作符23
  • 4.3.1整数除法24
  • 4.3.2快捷操作符24
  • 4.3.3溢出操作符25
  • 4.4转换整数类型26
  • 4.5浮点数27
  • 4.6青铜挑战练习28
  • 第5章switch语句29
  • 5.1什么是switch29
  • 5.2开始使用switch30
  • 5.2.1区间32
  • 5.2.2值绑定33
  • 5.2.3where子句34
  • 5.2.4元组和模式匹配35
  • 5.3switch与if/else38
  • 5.4青铜挑战练习39
  • 5.5白银挑战练习40
  • 第6章循环41
  • 6.1for-in循环41
  • 6.2类型推断概述45
  • 6.3while循环45
  • 6.4repeat-while循环46
  • 6.5重提控制转移语句47
  • 6.6白银挑战练习50
  • 第7章字符串51
  • 7.1使用字符串51
  • 7.2Unicode53
  • 7.2.1Unicode标量53
  • 7.2.2标准等价55
  • 7.3青铜挑战练习57
  • 7.4白银挑战练习57
  • 第8章可空类型58
  • 8.1可空类型58
  • 8.2可空实例绑定60
  • 8.3隐式展开可空类型62
  • 8.4可空链式调用63
  • 8.5原地修改可空实例64
  • 8.6nil合并运算符65
  • 8.7青铜挑战练习66
  • 8.8白银挑战练习66
  • 第三部分容器和函数
  • 第9章数组68
  • 9.1创建数组68
  • 9.2访问和修改数组69
  • 9.3数组相等75
  • 9.4不可变数组76
  • 9.5文档77
  • 9.6青铜挑战练习78
  • 9.7白银挑战练习78
  • 9.8黄金挑战练习78
  • 第10章字典79
  • 10.1创建字典79
  • 10.2填充字典80
  • 10.3访问和修改字典80
  • 10.4增加和删除值82
  • 10.5循环84
  • 10.6不可变字典85
  • 10.7把字典转换为数组85
  • 10.8白银挑战练习86
  • 10.9黄金挑战练习86
  • 第11章集合87
  • 11.1什么是集合87
  • 11.2创建集合87
  • 11.3运用集合89
  • 11.3.1并集89
  • 11.3.2交集90
  • 11.3.3不相交91
  • 11.4青铜挑战练习92
  • 11.5白银挑战练习92
  • 第12章函数93
  • 12.1一个基本的函数93
  • 12.2函数参数94
  • 12.2.1参数名字95
  • 12.2.2变长参数96
  • 12.2.3默认参数值97
  • 12.2.4in-out参数98
  • 12.3从函数返回99
  • 12.4嵌套函数和作用域100
  • 12.5多个返回值101
  • 12.6可空返回值类型102
  • 12.7提前退出函数103
  • 12.8函数类型103
  • 12.9青铜挑战练习104
  • 12.10白银挑战练习104
  • 12.11深入学习:Void105
  • 第13章闭包106
  • 13.1闭包的语法106
  • 13.2闭包表达式语法107
  • 13.3函数作为返回值110
  • 13.4函数作为参数111
  • 13.5闭包能捕获变量113
  • 13.6闭包是引用类型115
  • 13.7函数式编程116
  • 13.8青铜挑战练习119
  • 13.9青铜挑战练习119
  • 13.10黄金挑战练习119
  • 第四部分枚举、结构体和类
  • 第14章枚举122
  • 14.1基本枚举122
  • 14.2原始值枚举125
  • 14.3方法128
  • 14.4关联值131
  • 14.5递归枚举133
  • 14.6青铜挑战练习136
  • 14.7白银挑战练习136
  • 第15章结构体和类137
  • 15.1新工程137
  • 15.2结构体141
  • 15.3实例方法144
  • 15.4mutating方法145
  • 15.5类145
  • 15.5.1Monster类146
  • 15.5.2继承147
  • 15.6应该用哪种类型150
  • 15.7青铜挑战练习150
  • 15.8白银挑战练习150
  • 15.9深入学习:类型方法151
  • 15.10深入学习:mutating方法152
  • 第16章属性158
  • 16.1基本的存储属性158
  • 16.2嵌套类型159
  • 16.3惰性存储属性160
  • 16.4计算属性162
  • 16.5属性观察者164
  • 16.6类型属性165
  • 16.7访问控制168
  • 16.8青铜挑战练习171
  • 16.9白银挑战练习171
  • 16.10黄金挑战练习171
  • 第17章初始化172
  • 17.1初始化方法语法172
  • 17.2结构体初始化172
  • 17.2.1结构体的默认初始化方法177
  • 17.3.1类的默认初始化方法177
  • 17.3.2初始化和类继承177
  • 17.3.3类的必需初始化方法183
  • 17.3.4反初始化184
  • 17.4可失败的初始化方法185
  • 17.5掌握初始化188
  • 17.6白银挑战练习188
  • 17.7黄金挑战练习188
  • 17.8深入学习:初始化方法参数189
  • 第18章值类型与引用类型190
  • 18.1值语义190
  • 18.2引用语义192
  • 18.3值类型常量和引用类型常量194
  • 18.4配合使用值类型和引用类型196
  • 18.5复制197
  • 18.6相等与同一199
  • 18.7我应该用什么200
  • 18.8深入学习:写时复制201
  • 第五部分Swift高级编程
  • 第19章协议210
  • 19.1格式化表格数据210
  • 19.2协议214
  • 19.3符合协议217
  • 19.4协议继承218
  • 19.5协议组合219
  • 19.6mutating方法220
  • 19.7白银挑战练习221
  • 19.8黄金挑战练习221
  • 第20章错误处理222
  • 20.1错误分类222
  • 20.2对输入字符串做词法分析223
  • 20.3捕获错误231
  • 20.4解析符号数组232
  • 20.5用鸵鸟政策处理错误236
  • 20.6Swift的错误处理哲学239
  • 20.7青铜挑战练习240
  • 20.8白银挑战练习240
  • 20.9黄金挑战练习241
  • 第21章扩展242
  • 21.1扩展已有类型242
  • 21.2扩展自己的类型244
  • 21.2.1用扩展使类型符合协议245
  • 21.2.3嵌套类型和扩展246
  • 21.2.4扩展中的函数247
  • 21.3青铜挑战练习248
  • 21.4青铜挑战练习248
  • 21.5白银挑战练习248
  • 第22章泛型249
  • 22.1泛型数据结构249
  • 22.2泛型函数和方法251
  • 22.3类型约束253
  • 22.4关联类型协议254
  • 22.5类型约束中的where子句257
  • 22.6青铜挑战练习259
  • 22.7白银挑战练习259
  • 22.8黄金挑战练习259
  • 22.9深入学习:理解可空类型260
  • 22.10深入学习:参数多态260
  • 第23章协议扩展262
  • 23.1为锻炼建模262
  • 23.2扩展Exercise264
  • 23.3带where子句的协议扩展265
  • 23.4用协议扩展提供默认实现266
  • 23.5关于命名:一个警世故事268
  • 23.6青铜挑战练习270
  • 23.7黄金挑战练习270
  • 第24章内存管理和ARC271
  • 24.1内存分配271
  • 24.2循环强引用272
  • 24.3用weak打破循环强引用276
  • 24.4闭包中的循环引用277
  • 24.5逃逸闭包和非逃逸闭包281
  • 24.6青铜挑战练习283
  • 24.7白银挑战练习283
  • 24.8深入学习:我能获取实例的引用计数吗283
  • 第25章Equatable和Comparable284
  • 25.1.1插曲:中缀运算符286
  • 25.1.2方法“买一赠一”287
  • 25.2符合Comparable287
  • 25.3继承Comparable289
  • 25.4青铜挑战练习290
  • 25.5黄金挑战练习290
  • 25.6白金挑战练习291
  • 25.7深入学习:自定义运算符291
  • 第六部分事件驱动的应用
  • 第26章第一个Cocoa应用296
  • 26.1开始创建VocalTextEdit297
  • 26.2模型-视图-控制器298
  • 26.3设置视图控制器299
  • 26.4在Interface Builder中设置视图302
  • 26.4.2添加文本视图303
  • 26.4.3自动布局305
  • 26.5连接307
  • 26.5.1为VocalTextEdit的按钮设置目标-动作对307
  • 26.5.2连接文本视图出口308
  • 26.6让VocalTextEdit“说话”310
  • 26.7保存和加载文档311
  • 26.7.1类型转换313
  • 26.7.2保存文档314
  • 26.7.3加载文档316
  • 26.7.4按照MVC模式整理代码320
  • 26.8白银挑战练习320
  • 26.9黄金挑战练习320
  • 第27章第一个iOS应用321
  • 27.1开始创建iTahDoodle322
  • 27.2布局用户界面323
  • 27.3为待办事项列表建模331
  • 27.4设置UITableView335
  • 27.5保存和加载TodoList337
  • 27.5.1保存TodoList337
  • 27.5.2加载TodoList339
  • 27.6青铜挑战练习341
  • 27.7白银挑战练习341
  • 27.8黄金挑战练习341
  • 第28章互操作342
  • 28.1一个Objective-C工程342
  • 28.2在Objective-C工程中加入Swift361
  • 28.4白银挑战练习368
  • 28.5黄金挑战练习368
  • 第29章结语369
  • 29.1接下来学习什么369
  • 29.2插个广告369
  • 29.3邀请369

资源下载

资源下载地址1:https://pan.baidu.com/s/1qm3RfVJCQSZItDSN4s10Uw

相关资源

网友留言

网友NO.34197
耿海露

Swift 入门不错的教程,不过关于iOS,Swift/Objc之间,内容不够。翻译还行,不过有能力还是推荐读原版。

网友NO.27296
邰映安

Swift语言在其基本元素、抽象手段、组合手段这三个方面用非常简洁的思想实现,而组合起来却又很复杂,有丰富的扩展,确实是一种有非常强大表现力和灵活性的语言,从某种程度上来看能够极大的满足在编写程序时不同的设计需求,其表现和语言本身的设计思想非常值得推崇和学习。

网友NO.41359
姜靓影

非职业程序员,学习的编程还停留在谭浩强C和C++的水平,主要的编程实践来自于VBA。这本书是我读的第一本swift编程的书籍,借着这本书也学习了很多新的编程概念,泛型、可空、协议、扩展,讲的不是很细,但也算明白大概。继续自娱自乐的编程。