Swifter:100个Swift 2 开发必备Tip 第2版
作者:王巍 著
出版时间:2015年版
内容简介
本书基于Swift**版本Swift 2,是目前仅有的一本基于新版的书籍。Swift的易学难精体现在其实际项目暗坑无数,需要同时具备知识、技巧和经验的一定储备,本书试图让你快速到达这一境界。本书onevcat亲赴WWDC见证Swift发布,是全球第一批研究和实践者。对Swift的理解和运用,既能洞悉全局,又可直达细节。100个Swift编程技巧,涵盖方方面面。每个Tip独立成文,可拆可合,顺序阅读、按需翻阅或应急速查皆宜。面向中高级开发人员,充满独到见解,彻底脱离官方文档,入门者可用来迅速提升实践能力。
目录
再版序 iii
推荐序 iv
序 vii
I Swift 新元素 1
Tip 1. 柯里化 (Currying) 2
Tip 2. 安全的资源组织方式 4
Tip 3. 将 protocol 的方法声明为 mutating 6
Tip 4. Sequence 7
Tip 5. 多元组(Tuple) 9
Tip 6. @autoclosure 和?? 11
Tip 7. Optional Chaining 14
Tip 8. 操作符 16
Tip 9. func 的参数修饰 19
Tip 10. 字面量转换 21
Tip 11. 下标 25
Tip 12. 方法嵌套 27
Tip 13. 命名空间 30
Tip 14. Any 和 AnyObject 32
Tip 15. typealias 和泛型接口 35
Tip 16. 可变参数函数 37
Tip 17. 初始化方法顺序 39
Tip 18. Designated,Convenience 和 Required 41
Tip 19. 初始化返回 nil 44
Tip 20. protocol 组合 47
Tip 21. static 和 class 51
Tip 22. 多类型和容器 54
Tip 23. default 参数 57
Tip 24. 正则表达式 59
Tip 25. 模式匹配 62
Tip 26. … 和..< 65
Tip 27. AnyClass、元类型和.self 67
Tip 28. 接口和类方法中的 Self 70
Tip 29. 动态类型和多方法 73
Tip 30. 属性观察 75
Tip 31. final 78
Tip 32. lazy 修饰符和 lazy 方法 81
Tip 33. Reflection 和 Mirror 84
Tip 34. 隐式解包 Optional 87
Tip 35. 多重 Optional 89
Tip 36. Optional Map 91
Tip 37. Protocol Extension 93
Tip 38. where 和模式匹配 98
Tip 39. indirect 和嵌套 enum 101
II 从 Objective-C/C 到 Swift 103
Tip 40. Selector 104
Tip 41. 实例方法的动态调用 106
Tip 42. 单例 108
Tip 43. 条件编译 111
Tip 44. 编译标记 113
Tip 45. @UIApplicationMain 115
Tip 46. @objc 和 dynamic 117
Tip 47. 可选接口和接口扩展 120
Tip 48. 内存管理,weak 和 unowned 122
Tip 49. @autoreleasepool 127
Tip 50. 值类型和引用类型 130
Tip 51. String 还是 NSString 132
Tip 52. UnsafePointer 134
Tip 53. C 指针内存管理 137
Tip 54. COpaquePointer 和 C convention 139
Tip 55. GCD 和延时调用 141
Tip 56. 获取对象类型 145
Tip 57. 自省 147
Tip 58. KVO 149
Tip 59. 局部 scope 152
Tip 60. 判等 155
Tip 61. 哈希 158
Tip 62. 类簇 160
Tip 63. Swizzle 162
Tip 64. 调用 C 动态库 165
Tip 65. 输出格式化 167
Tip 66. Options 169
Tip 67. 数组 enumerate 171
Tip 68. 类型编码 @encode 173
Tip 69. C 代码调用和 @asmname 175
Tip 70. sizeof 和 sizeofValue 177
Tip 71. delegate 179
Tip 72. Associated Object 181
Tip 73. Lock 183
Tip 74. Toll-Free Bridging 和 Unmanaged 185
III Swift 与开发环境及一些实践 189
Tip 75. Swift 命令行工具 190
Tip 76. 随机数生成 192
Tip 77. print 和 debugPrint 194
Tip 78. 错误和异常处理 196
Tip 79. 断言 203
Tip 80. fatalError 205
Tip 81. 代码组织和 Framework 208
Tip 82. Playground 延时运行 212
Tip 83. Playground 可视化 214
Tip 84. Playground 与项目协作 216
Tip 85. 数学和数字 218
Tip 86. JSON 220
Tip 87. NSNull 222
Tip 88. 文档注释 224
Tip 89. 性能考虑 226
Tip 90. Log 输出 228
Tip 91. 溢出 230
Tip 92. 宏定义 define 232
Tip 93. 属性访问控制 234
Tip 94. Swift 中的测试 236
Tip 95. Core Data 238
Tip 96. 闭包歧义 240
Tip 97. 泛型扩展 244
Tip 98. 兼容性 246
Tip 99. 列举 enum 类型 248
Tip 100. 尾递归 251
后记及致谢 253