From ac35928b57356821d03a1713df506062f42f5675 Mon Sep 17 00:00:00 2001 From: onevcat Date: Thu, 13 Jul 2017 10:44:18 +0900 Subject: [PATCH] Update site --- Gemfile.lock | 10 +- _config.yml | 2 +- _posts/2017-06-06-ios-11-sdk.md | 78 + .../2017-07-10-state-based-viewcontroller.md | 822 +++++++ assets/images/2017/named-colors.png | 3 + assets/images/2017/todo-video.mp4 | Bin 0 -> 255602 bytes assets/images/2017/view-controller-states.svg | 606 +++++ assets/images/2017/wwdc-2017.jpg | 3 + assets/images/2017/xcode-git.png | 3 + assets/images/background-cover.jpg | 4 +- assets/images/background-cover979.jpg | 3 + assets/images/background-cover980.jpg | 3 + config.codekit3 | 1972 ++++++++++++++++- 13 files changed, 3401 insertions(+), 108 deletions(-) create mode 100644 _posts/2017-06-06-ios-11-sdk.md create mode 100644 _posts/2017-07-10-state-based-viewcontroller.md create mode 100644 assets/images/2017/named-colors.png create mode 100644 assets/images/2017/todo-video.mp4 create mode 100644 assets/images/2017/view-controller-states.svg create mode 100644 assets/images/2017/wwdc-2017.jpg create mode 100644 assets/images/2017/xcode-git.png create mode 100644 assets/images/background-cover979.jpg create mode 100644 assets/images/background-cover980.jpg diff --git a/Gemfile.lock b/Gemfile.lock index 2350e769..1019e176 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,12 +1,12 @@ GEM remote: https://rubygems.org/ specs: - addressable (2.5.0) + addressable (2.5.1) public_suffix (~> 2.0, >= 2.0.2) colorator (1.1.0) - ffi (1.9.17) + ffi (1.9.18) forwardable-extended (2.6.0) - jekyll (3.4.0) + jekyll (3.4.3) addressable (~> 2.4) colorator (~> 1.0) jekyll-sass-converter (~> 1.0) @@ -37,7 +37,7 @@ GEM redcarpet (3.4.0) rouge (1.11.1) safe_yaml (1.0.4) - sass (3.4.23) + sass (3.4.24) PLATFORMS ruby @@ -48,4 +48,4 @@ DEPENDENCIES redcarpet BUNDLED WITH - 1.14.3 + 1.14.5 diff --git a/_config.yml b/_config.yml index 07ea9223..2fc68215 100644 --- a/_config.yml +++ b/_config.yml @@ -13,7 +13,7 @@ permalink: /:year/:month/:title/ highlighter: rouge # supported colors: blue, green, purple, red, orange or slate. If you need clear, leave it empty. -cover_color: +cover_color: blue blog_button: title: 博客 diff --git a/_posts/2017-06-06-ios-11-sdk.md b/_posts/2017-06-06-ios-11-sdk.md new file mode 100644 index 00000000..c43823f7 --- /dev/null +++ b/_posts/2017-06-06-ios-11-sdk.md @@ -0,0 +1,78 @@ +--- +layout: post +title: "开发者所需要知道的 iOS 11 SDK 新特性" +date: 2017-06-06 12:15:00.000000000 +09:00 +tags: 能工巧匠集 +--- + +![](/assets/images/2017/wwdc-2017.jpg) + +年纪大了过了能熬夜看 WWDC 的时代了,但是还是在小小宝的哭闹和妈妈大人换尿布的催促中起了个大早。于是算趁着“热乎”把 WWDC 2017 的 Keynote 看完了。和往年差不多,虽然 WWDC 是一个开发者会议,但是 Keynote 并不是专门针对我们开发者的,它还承担了公司状况说明,新品发布等功能。作为技术人员,可能接下来的 session 会更有意义。要用一句话来评价今年 Keynote 所展现出来的内容的话,就是小步革新。大的技术方面可以说只有 ARKit 可堪研究,但是我们还是看到了类似跨 app 拖拽,新的 Files 应用这样进一步突破 iOS 原有桎梏的更新 (iMessage 转账什么的就不提了,我大天朝威武,移动支付领域领先世界至少三年)。iOS 11,特别是配合新的硬件,相信会给用户带来不错的体验。 + +作为 iOS 开发者,和往年一样,我整理了一下在可能需要关注的地方。 + +### 新增框架 + +新加入 SDK 的大的框架有两个,分别是负责简化和集成机器学习的 Core ML 和用来创建增强现实 (AR) 应用的 ARKit。 + +#### Core ML + +自从 AlphaGo 出现以来,深度学习毫无疑问成了行业热点。而 Google 也在去年就转变 Mobile-first 到 AI-first 的战略。可以说一线的互联网企业几乎都在押宝 AI,目前看来机器学习,特别是深度学习是最有希望的一条道路。 + +如果你不是很熟悉机器学习的话,我想我可以在这里“僭越”地做一些简介。你可以先把机器学习的模型看作一个黑盒函数,你给定一些输入 (可能是一段文字,或者一张图片),这个函数会给出特定的输出 (比如这段文字中的人名地名,或者图片中出现的商店名牌等)。一开始这个模型可能非常粗糙,完全不能给出正确的结果,但是你可以使用大量已有的数据和正确的结果,来对模型进行训练,甚至改进。在所使用的模型足够优化,以及训练量足够大的情况下,这个黑盒模型将不仅对训练数据有较高的准确率,也往往能对未知的实际输入给出正确的返回。这样的模型就是一个训练好的可以实际使用的模型。 + +对机器学习模型的训练是一项很重的工作,[Core ML](https://developer.apple.com/machine-learning/) 所扮演的角色更多的是将已经训练好的模型转换为 iOS 可以理解的形式,并且将新的数据“喂给”模型,获取输出。抽象问题和创建模型虽然并不难,但是对模型的改进和训练可以说是值得研究一辈子的事情,这篇文章的读者可能也不太会对此感冒。好在 Apple 提供了[一系列的工具](https://developer.apple.com/documentation/coreml/converting_trained_models_to_core_ml)用来将各类机器学习模型转换为 Core ML 可以理解的形式。籍此,你就可以轻松地在你的 iOS app 里使用前人训练出的模型。这在以前可能会需要你自己去寻找模型,然后写一些 C++ 的代码来跨平台调用,而且难以利用 iOS 设备的 GPU 性能和 Metal (除非你自己写一些 shader 来进行矩阵运算)。Core ML 将使用模型的门槛降低了很多。 + +Core ML 在背后驱动了 iOS 的视觉识别的 [Vision](https://developer.apple.com/documentation/vision) 框架和 Foundation 中的语义分析相关 API。普通开发者可以从这些高层的 API 中直接获益,比如人脸图片或者文字识别等。这部分内容在以前版本的 SDK 中也存在,不过在 iOS 11 SDK 中它们被集中到了新的框架中,并将一些更具体和底层的控制开放出来。比如你可以使用 Vision 中的高层接口,但是同时指定底层所使用的模型。这给 iOS 的计算机视觉带来了新的可能。 + +Google 或者 Samsung 在 Android AI 上的努力,大多是在自带的应用中集成服务。相比起来,Apple 基于对自己生态和硬件的控制,将更多的选择权交给了第三方开发者。 + +#### ARKit + +Keynote 上的 AR 的演示可以说是唯一的亮点了。iOS SDK 11 中 Apple 给开发者,特别是 AR 相关的开发者带来了一个很棒的礼物,那就是 [ARKit](https://developer.apple.com/documentation/arkit)。AR 可以说并非什么新技术,像是 Pokémon Go 这样的游戏也验证了 AR 在游戏上的潜力。不过除了 IP 和新鲜感之外,个人认为 Pokémon Go 并没有资格代表 AR 技术的潜力。现场的演示像我们展示了一种可能,粗略看来,ARKit 利用单镜头和陀螺仪,在对平面的识别和虚拟物体的稳定上做得相当出色。几乎可以肯定,那么不做最早,只做最好的 Apple 似乎在这一刻回到了舞台上 + +ARKit 极大降低了普通开发者玩 AR 的门槛,也是 Apple 现阶段用来抗衡 VR 的选项。可以畅想一下更多类似 Pokémon Go 的 AR 游戏 (结合实境的虚拟宠物什么的大概是最容易想到的) 能在 ARKit 和 SceneKit 的帮助下面世,甚至在 iPad Pro 现有技能上做像是 AR 电影这样能全方位展示的多媒体可能也不再是单纯的梦想。 + +而与之相应的,是一套并不很复杂的 API。涉及的 View 几乎是作为 SceneKit 的延伸,再加上在真实世界的定为也已经由系统帮助处理,开发者需要做的大抵就是将虚拟物体放在屏幕的合适位置,并让物体之间互动。而利用 Core ML 来对相机内的实际物体进行识别和交互,可以说也让各类特效的相机或者摄影 app 充满了想像空间。 + +### Xcode + +#### 编辑器和编译器 + +速度就是生命,而开发者的生命都浪费在了等待编译上。Swift 自问世以来就备受好评,但是缓慢的编译速度,时有时无的语法提示,无法进行重构等工具链上的欠缺成为了最重要的黑点。Xcode 9 中编辑器进行了重写,支持了对 Swift 代码的重构 (虽然还很基础),将 VCS 提到了更重要的位置,并添加了 GitHub 集成,可以进行同局域网的无线部署和调试。 + +![](/assets/images/2017/xcode-git.png) + +新的编译系统是使用 Swift 重写的,在进行了一些对比以后,编译速度确实有了不小的提升。虽然不知道是不是由于换成了 Swift 4,不过正在做的公司项目的总编译时间从原来的三分半缩短到了两分钟半左右,可以说相当明显了。 + +Xcode 9 中的索引系统也使用了新的引擎,据称在大型项目中搜索最高可以达到 50 倍的速度。不过可能由于笔者所参加的项目不够大,这一点体会不太明显。项目里的 Swift 代码依然面临失色的情况。这可能是索引系统和编译系统没有能很好协同造成的,毕竟还是 beta 版本的软件,也许应该多给 Xcode 团队一些时间 (虽然可能到最后也就这样了)。 + +由于 Swift 4 编译器也提供了 Swift 3 的兼容 (在 Build Setting 中设置 Swift 版本即可),所以如果没有什么意外的话,我可能会在之后的日常开发中使用 Xcode 9 beta,然后在打包和发布时再切回 Xcode 8 了。毕竟每次完整编译节省一分半钟的时间,还是一件很诱人的事情。 + +这次的 beta 版本质量出人意料地好,也许是因为这一两年来都是小幅革新式的改良,让 Apple 的软件团队有相对充足的时间进行开发的结果?总之,Xcode 9 beta 现在已经能很好地工作了。 + +#### Named Color + +这是个人很喜欢的一个变化。现在你可以在 xcassets 里添加颜色,然后在代码或者 IB 中引用这个颜色了。大概是这样的: + +![](/assets/images/2017/named-colors.png) + +像是使用 IB 来构建 UI 的时候,一个很头疼的事情就是设计师表示我们要不换个主题色。你很可能需要到处寻找这个颜色进行替换。但是现在你只需要在 xcassets 里改一下,就能反应到 IB 中的所有地方了。 + +### 其他值得注意的变更 + +剩下的都是些小变化了,简单浏览了下,把我觉得值得一提的列举出来,并附上参考的链接。 + +* [拖拽](https://developer.apple.com/documentation/uikit/drag_and_drop) - 很标准的一套 iOS API,不出意外地,iOS 系统帮助我们处理了绝大部分工作,开发者几乎只需要处理结果。`UITextView` 和 `UITextField` 原生支持拖拽,`UICollectionView` 和 `UITableView` 的拖拽有一系列专用的 delegate 来表明拖拽的发生和结束。而你也可以对任意 `UIView` 子类定义拖拽行为。和 mac 上的拖拽不同,iOS 的拖拽充分尊重了多点触控的屏幕,所以可能你需要对一次多个的拖拽行为做些特别处理。 +* 新的 Navigation title 设计 - iOS 11 的大多数系统 app 都采用了新的设计,放大了导航栏的标题字体。如果你想采用这项设计的话也非常简单,设置 navigation bar 的 [`prefersLargeTitles`](https://developer.apple.com/documentation/uikit/uinavigationbar/2908999-preferslargetitles) 即可。 +* [FileProvider 和 FileProviderUI](https://developer.apple.com/documentation/fileprovider) - 提供一套类似 Files app 的界面,让你可以获取用户设备上或者云端的文件。相信会成为以后文档相关类 app 的标配。 +* 不再支持 32 位 app - 虽然在 beta 1 中依然可以运行 32 位 app,但是 Apple 明确指出了将在后续的 iOS 11 beta 中取消支持。所以如果你想让自己的程序运行在 iOS 11 的设备上,进行 64 位的重新编译是必须步骤。 +* [DeviceCheck](https://developer.apple.com/documentation/devicecheck) - 每天要用广告 ID 追踪用户的开发者现在有了更好地选择 (当然前提是用来做正经事儿)。DeviceCheck 允许你通过你的服务器与 Apple 服务器通讯,并为单个设备设置两个 bit 的数据。简单说,你在设备上用 DeviceCheck API 生成一个 token,然后将这个 token 发给自己的服务器,再由自己的服务器与 Apple 的 API 进行通讯,来更新或者查询该设备的值。这两个 bit 的数据用来追踪用户比如是否已经领取奖励这类信息。 +* [PDFKit](https://developer.apple.com/documentation/pdfkit) - 这是一个在 macOS 上已经长期存在的框架,但却在 iOS 上姗姗来迟。你可以使用这个框架显示和操作 pdf 文件。 +* [IdentityLookup](https://developer.apple.com/documentation/identitylookup) - 可以自己开发一个 app extension 来拦截系统 SMS 和 MMS 的信息。系统的信息 app 在接到未知的人的短信时,会询问所有开启的过滤扩展,如果扩展表示该消息应当被拦截,那么这则信息将不会传递给你。扩展有机会访问到事先指定的 server 来进行判断 (所以说你可以光明正大地获取用户短信内容了,不过当然考虑到隐私,这些访问都是匿名加密的,Apple 也禁止这类扩展在 container 里进行写入)。 +* [Core NFC](https://developer.apple.com/documentation/corenfc) - 在 iPhone 7 和 iPhone 7 Plus 上提供基础的近场通讯读取功能。看起来很 promising,只要你有合适的 NFC 标签,手机就可以进行读取。但是考虑到无法后台常驻,实用性就打了折扣。不过笔者不是很熟这块,也许能有更合适的场景也未可知。 +* [Auto Fill](https://developer.apple.com/videos/play/wwdc2017/206/) - 从 iCloud Keychain 中获取密码,然后自动填充的功能现在开放给第三方开发者了。UITextInputTraits 的 [textContentType](https://developer.apple.com/documentation/uikit/uitextcontenttype) 中添加了 `username` 和 `password`,对适合的 text view 或者 text field 的 content type 进行配置,并填写 Info.plist 的相关内容,就可以在要求输入用户名密码时获取键盘上方的自动填充,帮助用户快速登录。 + +暂时先这么多,我之后如果发现什么有意思的事情再逐渐补充。如果你觉得还有什么值得一提的变化,也欢迎在评论里留言,我也会添加进去。 + + diff --git a/_posts/2017-07-10-state-based-viewcontroller.md b/_posts/2017-07-10-state-based-viewcontroller.md new file mode 100644 index 00000000..2fec4f89 --- /dev/null +++ b/_posts/2017-07-10-state-based-viewcontroller.md @@ -0,0 +1,822 @@ +--- +layout: post +title: "单向数据流动的函数式 View Controller" +date: 2017-07-13 10:05:00.000000000 +09:00 +tags: 能工巧匠集 +--- + +View Controller 向来是 MVC (Model-View-View Controller) 中最让人头疼的一环,MVC 架构本身并不复杂,但开发者很容易将大量代码扔到用于协调 View 和 Model 的 Controller 中。你不能说这是一种错误,因为 View Controller 所承担的本来就是胶水代码和业务逻辑的部分。但是,持续这样做必定将导致 Model View Controller 变成 Massive View Controller,代码也就一天天烂下去,直到没人敢碰。 + +对于采用 MVC 架构的项目来说,其实最大的挑战在于维护 Controller。而想要有良好维护的 Controller,最大的挑战又在于保持良好的测试覆盖。因为往往 View Controller 中会包含很多状态,而且会有不少异步操作和用户触发的事件,所以测试 Controller 从来都不是一件简单的事情。 + +> 这一点对于一些类似的其他架构也是一样的。比如 MVVM 或者 VIPER,广义上它们其实都是 MVC,只不过使用 View Model 或者 Presenter 来做 Controller 而已。它们对应的控制器的职责依然是协调 Model 和 View。 + +在这篇文章里,我会先实现一个很常见的 MVC 架构,然后对状态和状态改变的部分进行抽象及重构,最终得到一个纯函数式的易于测试的 View Controller 类。希望通过这个例子,能够给你在日常维护 View Controller 的工作中带来一些启示或者帮助。 + +如果你对 React 和 Redux 有所了解的话,文中的一些方法可能你会很熟悉。不过即使你不了解它们,也并不会妨碍你理解本文。我不会去细究概念上的东西,而会从一个大家都所熟知的例子开始进行介绍,所以完全不用担心。你可能需要对 Swift 有一些了解,本文会涉及一些基本的值类型和引用类型的区别,如果你对此不是很明白的话,可以参看一些其他资料,比如我以前写的[这篇文章](http://swifter.tips/value-reference/)。 + +整个示例项目我放在了 [GitHub](https://github.com/onevcat/ToDoDemo) 上,你可以在各个分支中找到对应的项目源码。 + +## 传统 MVC 实现 + +我们用一个经典的 ToDo 应用作为示例。这个项目可以从网络加载待办事项,我们通过输入文本进行添加,或者点击对应条目进行删除: + +
+ +
+ +注意几个细节: + +1. 打开应用后加载已有待办列表时花费了一些时间,一般来说,我们会从网络请求进行加载,这应该是一个异步操作。在示例项目里,我们不会真的去进行网络请求,而是使用一个本地存储来模拟这个过程。 +2. 标题栏的数字表示当前已有的待办项目,随着待办的增减,这个数字会相应变化。 +3. 可以使用第一个 cell 输入,并用右上角的加号添加一个待办。我们希望待办事项的标题长度至少为三个字符,在不满足长度的时候,添加按钮不可用。 + +实现这些并没有太大难度,一个刚入门 iOS 的新人也应该能毫无压力搞定。我们先来实现模拟异步获取已有待办的部分。新建一个文件 ToDoStore.swift: + +```swift +import Foundation + +let dummy = [ + "Buy the milk", + "Take my dog", + "Rent a car" +] + +struct ToDoStore { + static let shared = ToDoStore() + func getToDoItems(completionHandler: (([String]) -> Void)?) { + DispatchQueue.main.asyncAfter(deadline: .now() + 2) { + completionHandler?(dummy) + } + } +} +``` + +为了简明,我们使用简单的 `String` 来代表一条待办。这里我们等待了两秒后才调用回调,传回一组预先定义的待办事项。 + +由于整个界面就是一个 Table View,所以我们创建一个 `UITableViewController` 子类来实现需求。在 TableViewController.swift 中,我们定义一个属性 `todos` 来存放需要显示在列表中的待办事项,然后在 `viewDidLoad` 里从 `ToDoStore` 中进行加载并刷新 `tableView`: + +```swift +class TableViewController: UITableViewController { + + var todos: [String] = [] + + override func viewDidLoad() { + super.viewDidLoad() + + ToDoStore.shared.getToDoItems { (data) in + self.todos += data + self.title = "TODO - (\(self.todos.count))" + self.tableView.reloadData() + } + } +} +``` + +当然,我们现在需要提供 `UITableViewDataSource` 的相关方法。首先,我们的 Table View 有两个 section,一个负责输入新的待办,另一个负责展示现有的条目。为了让代码清晰表意自解释,我选择在 `TableViewController` 里内嵌一个 `Section` 枚举: + +```swift +class TableViewController: UITableViewController { + enum Section: Int { + case input = 0, todos, max + } + + //... +} +``` + +这样,我们就可以实现 `UITableViewDataSource` 所需要的方法了: + +```swift +class TableViewController: UITableViewController { + override func numberOfSections(in tableView: UITableView) -> Int { + return Section.max.rawValue + } + + override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { + guard let section = Section(rawValue: section) else { + fatalError() + } + switch section { + case .input: return 1 + case .todos: return todos.count + case .max: fatalError() + } + } + + override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { + guard let section = Section(rawValue: indexPath.section) else { + fatalError() + } + + switch section { + case .input: + // 返回 input cell + case .todos: + // 返回 todo item cell + let cell = tableView.dequeueReusableCell(withIdentifier: todoCellResueId, for: indexPath) + cell.textLabel?.text = todos[indexPath.row] + return cell + default: + fatalError() + } + } +} +``` + +`.todos` 的情况下很简单,我们就用标准的 `UITableViewCell` 就好。对于 `.input` 的情况,我们需要在 cell 里嵌一个 `UITextField`,并且要在其中的文本改变时能告知 `TableViewController`。我们可以使用传统的 delegate 的模式来实现,下面是 TableViewInputCell.swift 的内容: + +```swift +protocol TableViewInputCellDelegate: class { + func inputChanged(cell: TableViewInputCell, text: String) +} + +class TableViewInputCell: UITableViewCell { + weak var delegate: TableViewInputCellDelegate? + @IBOutlet weak var textField: UITextField! + + @objc @IBAction func textFieldValueChanged(_ sender: UITextField) { + delegate?.inputChanged(cell: self, text: sender.text ?? "") + } +} +``` + +我们在 Storyboard 中创建对应的 table view 和这个 cell,然后将其中的 text field 的 `.editingChanged` 事件绑到 `textFieldValueChanged` 上。每次当用户进行输入时,`delegate` 的方法将被调用。 + +在 `TableViewController` 里,现在可以返回 `.input` 的 cell,并设置对应的代理方法来更新添加按钮了: + +```swift + +class TableViewController: UITableViewController { + override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { + guard let section = Section(rawValue: indexPath.section) else { + fatalError() + } + + switch section { + case .input: + let cell = tableView.dequeueReusableCell(withIdentifier: inputCellReuseId, for: indexPath) as! TableViewInputCell + cell.delegate = self + return cell + //... + } + } +} + +extension TableViewController: TableViewInputCellDelegate { + func inputChanged(cell: TableViewInputCell, text: String) { + let isItemLengthEnough = text.count >= 3 + navigationItem.rightBarButtonItem?.isEnabled = isItemLengthEnough + } +} +``` + +现在,运行程序后等待一段时间,读入的待办事项就可以被展示了。接下来,添加待办和移除待办的部分很容易实现: + +```swift +class TableViewController: UITableViewController { + // 添加待办 + @IBAction func addButtonPressed(_ sender: Any) { + let inputIndexPath = IndexPath(row: 0, section: Section.input.rawValue) + guard let inputCell = tableView.cellForRow(at: inputIndexPath) as? TableViewInputCell, + let text = inputCell.textField.text else + { + return + } + todos.insert(text, at: 0) + inputCell.textField.text = "" + title = "TODO - (\(todos.count))" + tableView.reloadData() + } + + // 移除待办 + override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { + guard indexPath.section == Section.todos.rawValue else { + return + } + + todos.remove(at: indexPath.row) + title = "TODO - (\(todos.count))" + tableView.reloadData() + } +} +``` + +> 为了保持简单,这里我们直接 `tableView.reloadData()` 了,讲道理的话更好的选择是只针对变动的部分做 `insert` 或者 `remove`,但为了简单起见,我们就直接重载整个 table view 了。 + +好了,这是一个非常简单的一百行都不到的 View Controller,可能也是我们每天都会写的代码,所以我们就不吹捧这样的代码“条理清晰”或者“简洁明了”了,你我都知道这只是在 View Controller 规模尚小时的假象而已。让我们直接来看看潜在的问题: + +1. UI 相关的代码散落各处 - 重载 `tableView` 和设置 `title` 的代码出现了三次,设置右上 button 的 `isEnabled` 的代码存在于 extension 中,添加新项目时我们先获取了输入的 cell,然后再读取 cell 中的文本。这些散落在各处的 UI 操作将会成为隐患,因为你可能在代码的任意部分操作这些 UI,而它们的状态将随着代码的复杂变得“飘忽不定”。 +2. 因为 1 的状态复杂,使得 View Controller 难以测试 - 举个例子,如果你想测试 `title` 的文字正确,你可能需要手动向列表里添加一个待办事项,这涉及到调用 `addButtonPressed`,而这个方法需要读取 `inputCell` 的文本,那么你可能还需要先去设置这个 cell 中 `UITextField` 的 `text` 值。当然你也可以用依赖注入的方式给 `add` 方法一个文本参数,或者将 `todos.insert` 和之后的内容提取成一个新的方法,但是无论怎么样,对于 model 的操作和对于 UI 的更新都没有分离 (因为毕竟我们写的就是“胶水代码”)。这正是你觉得 View Controller 难以测试的最主要原因。 +3. 因为 2 的难以测试,最后让 View Controller 难以重构 - 状态和 UI 复杂度的增加往往会导致多个 UI 操作维护着同一个变量,或者多个状态变量去更新同一个 UI 元素。不论是哪种情况,都让测试变得几乎不可能,也会让后续的开发人员 (其实往往就是你自己!) 在面对复杂情况下难以正确地继续开发。Massive View Controller 最终的结果常常是牵一发而动全身,一个微小的改动可能都需要花费大量的时间进行验证,而且还没有人敢拍胸脯保证正确性。这会让项目逐渐陷入泥潭。 + +这些问题最终导致,这样一个 View Controller 难以 scaling。在逐渐被代码填满到一两千行时,这个 View Controller 将彻底“死去”,对它的维护和更改会困难重重。 + +> 你可以在 GitHub repo 的 [basic 分支](https://github.com/onevcat/ToDoDemo/tree/basic)找到对应这部分的代码。 + +## 基于 State 的 View Controller + +### 通过提取 State 统合 UI 操作 + +上面的三个问题其实环环相扣,如果我们能将 UI 相关代码集中起来,并用单一的状态去管理它,就可以让 View Controller 的复杂度降低很多。我们尝试看看! + +在这个简单的界面中,和 UI 相关的 model 包括待办条目 `todos` (用来组织 table view 和更新标题栏) 以及输入的 `text` (用来决定添加按钮的 enable 和添加 todo 时的内容)。我们将这两个变量进行简单的封装,在 `TableViewController` 里添加一个内嵌的 `State` 结构体: + +```swift +class TableViewController: UITableViewController { + + struct State { + let todos: [String] + let text: String + } + + var state = State(todos: [], text: "") +} +``` + +这样一来,我们就有一个统一按照状态更新 UI 的地方了。使用 `state` 的 `didSet` 即可: + +```swift +var state = State(todos: [], text: "") { + didSet { + if oldValue.todos != state.todos { + tableView.reloadData() + title = "TODO - (\(state.todos.count))" + } + + if (oldValue.text != state.text) { + let isItemLengthEnough = state.text.count >= 3 + navigationItem.rightBarButtonItem?.isEnabled = isItemLengthEnough + + let inputIndexPath = IndexPath(row: 0, section: Section.input.rawValue) + let inputCell = tableView.cellForRow(at: inputIndexPath) as? TableViewInputCell + inputCell?.textField.text = state.text + } + } +} +``` + +这里我们将新值和旧值进行了一些比较,以避免不必要的 UI 更新。接下来,就可以将原来 `TableViewController` 中对 UI 的操作换成对 `state` 的操作了。 + +比如,在 `viewDidLoad` 中: + +```swift +// 变更前 +ToDoStore.shared.getToDoItems { (data) in + self.todos += data + self.title = "TODO - (\(self.todos.count))" + self.tableView.reloadData() +} + +// 变更后 +ToDoStore.shared.getToDoItems { (data) in + self.state = State(todos: self.state.todos + data, text: self.state.text) +} +``` + +点击 cell 移除待办时: + +```swift +// 变更前 +override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { + guard indexPath.section == Section.todos.rawValue else { + return + } + + todos.remove(at: indexPath.row) + title = "TODO - (\(todos.count))" + tableView.reloadData() +} + +// 变更后 +override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { + guard indexPath.section == Section.todos.rawValue else { + return + } + + let newTodos = Array(state.todos[..= 3 + navigationItem.rightBarButtonItem?.isEnabled = isItemLengthEnough +} + +// 变更后 +func inputChanged(cell: TableViewInputCell, text: String) { + state = State(todos: state.todos, text: text) +} +``` + +另外,最值得一提的可能是添加待办事项时的代码变化。可以看到引入统一的状态变更后,代码变得非常简单清晰: + +```swift +// 变更前 +@IBAction func addButtonPressed(_ sender: Any) { + let inputIndexPath = IndexPath(row: 0, section: Section.input.rawValue) + guard let inputCell = tableView.cellForRow(at: inputIndexPath) as? TableViewInputCell, + let text = inputCell.textField.text else + { + return + } + todos.insert(text, at: 0) + inputCell.textField.text = "" + title = "TODO - (\(todos.count))" + tableView.reloadData() +} + +// 变更后 +@IBAction func addButtonPressed(_ sender: Any) { + state = State(todos: [state.text] + state.todos, text: "") +} +``` + +> 如果你对 React 比较熟悉的话,可以从中发现一些类似的思想。React 里我们自上而下传递 `Props`,并且在 Component 自身通过 `setState` 进行状态管理。所有的 `Component` 都是基于传入的 `Props` 和自身的 `State` 的。View Controller 中的不同之处在于,React 使用了更为描述式的方式更新 UI (虚拟 DOM),而现在我们可能需要用过程语言自己进行实现。除此之外,使用 `State` 的 `TableViewController` 在工作方式上与 React 的 `Component` 十分类似。 + +### 测试 State View Controller + +在基于 `State` 的实现下,用户的操作被统一为状态的变更,而状态的变更将统一地去更新当前的 UI。这让 View Controller 的测试变得容易很多。我们可以将本来混杂在一起的行为分离开来:首先,测试状态变更可以导致正确的 UI;然后,测试用户输入可以导致正确的状态变更,这样即可覆盖 View Controller 的测试。 + +让我们先来测试状态变更导致的 UI 变化,在单元测试中: + +```swift +func testSettingState() { + // 初始状态 + XCTAssertEqual(controller.tableView.numberOfRows(inSection: TableViewController.Section.todos.rawValue), 0) + XCTAssertEqual(controller.title, "TODO - (0)") + XCTAssertFalse(controller.navigationItem.rightBarButtonItem!.isEnabled) + + // ([], "") -> (["1", "2", "3"], "abc") + controller.state = TableViewController.State(todos: ["1", "2", "3"], text: "abc") + XCTAssertEqual(controller.tableView.numberOfRows(inSection: TableViewController.Section.todos.rawValue), 3) + XCTAssertEqual(controller.tableView.cellForRow(at: todoItemIndexPath(row: 1))?.textLabel?.text, "2") + XCTAssertEqual(controller.title, "TODO - (3)") + XCTAssertTrue(controller.navigationItem.rightBarButtonItem!.isEnabled) + + // (["1", "2", "3"], "abc") -> ([], "") + controller.state = TableViewController.State(todos: [], text: "") + XCTAssertEqual(controller.tableView.numberOfRows(inSection: TableViewController.Section.todos.rawValue), 0) + XCTAssertEqual(controller.title, "TODO - (0)") + XCTAssertFalse(controller.navigationItem.rightBarButtonItem!.isEnabled) +} +``` + +这里的初始状态是我们在 Storyboard 或者相应的 `viewDidLoad` 之类的方法里设定的 UI。我们稍后会对这个状态进行进一步的讨论。 + +接下来,我们就可以测试用户的交互行为导致的状态变更了: + +```swift +func testAdding() { + let testItem = "Test Item" + + let originalTodos = controller.state.todos + controller.state = TableViewController.State(todos: originalTodos, text: testItem) + controller.addButtonPressed(self) + XCTAssertEqual(controller.state.todos, [testItem] + originalTodos) + XCTAssertEqual(controller.state.text, "") +} + +func testRemoving() { + controller.state = TableViewController.State(todos: ["1", "2", "3"], text: "") + controller.tableView(controller.tableView, didSelectRowAt: todoItemIndexPath(row: 1)) + XCTAssertEqual(controller.state.todos, ["1", "3"]) +} + +func testInputChanged() { + controller.inputChanged(cell: TableViewInputCell(), text: "Hello") + XCTAssertEqual(controller.state.text, "Hello") +} +``` + +看起来很赞,我们的单元测试覆盖了各种用户交互,配合上 state 变更导致的 UI 变化,我们几乎可以确定这个 View Controller 将会按照我们的设想正确工作了! + +> 在上面我只贴出了一些关键的变更,关于测试的配置以及一些其他细节,你可以参看 GitHub repo 的 [state 分支](https://github.com/onevcat/ToDoDemo/tree/state)。 + +### State View Controller 的问题 + +这种基于 State 的 View Controller 虽然比原来好了很多,但是依然存在一些问题,也还有大量的改进空间。下面是几个主要的忧虑: + +1. 初始化时的 UI - 我们上面说到过,初始状态的 UI 是我们在 Storyboard 或者相应的 `viewDidLoad` 之类的方法里设定的。这将导致一个问题,那就是我们无法通过设置 `state` 属性的方式来设置初始 UI。因为 `state` 的 `didSet` 不会在 controller 初始化中首次赋值时被调用,因此如果我们在 `viewDidLoad` 中添加如下语句的话,会因为新的状态和初始相同,而导致 UI 不发生更新: + + ```swift + override func viewDidLoad() { + super.viewDidLoad() + + // UI 更新会被跳过,因为该 state 和初始值的一样 + state = State(todos: [], text: "") + } + ``` + + 在初始 UI 设置正确的情况下,这倒没什么问题。但是如果 UI 状态原本存在不对的话,就将导致接下来的 UI 都是错误的。从更高层次来看,也就是 `state` 属性对 UI 的控制不仅仅涉及到新的状态,同时也取决于原有的 `state` 值。这会导致一些额外复杂度,是我们想要避免的。理想状态下,UI 的更新应该只和输入有关,而与当前状态无关 (也就是“纯函数式”,我们稍后再具体介绍)。 + +2. `State` 难以扩展 - 现在 `State` 中只有两个变量 `todos` 和 `text`,如果 View Controller 中还需要其他的变量,我们可以将它继续添加到 `State` 结构体中。不过在实践中这会十分困难,因为我们需要更新所有的 `state` 赋值的部分。比如,如果我们添加一个 `loading` 来表示正在加载待办: + + ```swift + struct State { + let todos: [String] + let text: String + let loading: Bool + } + + override func viewDidLoad() { + super.viewDidLoad() + + state = State(todos: self.state.todos + data, text: self.state.text, loading: true) + ToDoStore.shared.getToDoItems { (data) in + self.state = State(todos: self.state.todos + data, text: self.state.text, loading: false) + } + } + ``` + + 除此之外,像是添加待办,删除待办等存在 `state` 赋值的地方,我们都需要在原来的初始化方法上加上 `loading` 参数。试想,如果我们稍后又添加了一个变量,我们则需要再次维护所有这些地方,这显然是无法接受的。 + + 当然,因为 `State` 是值类型,我们可以将 `State` 中的变量声明从 `let` 改为 `var`,这样我们就可以直接设置 `state` 中的属性了,例如: + + ```swift + state.todos = state.todos + data + state.loading = true + ``` + + 这种情况下,`State` 的 `didSet` 将被调用多次,虽然不太舒服,但倒也不是很大的问题。更关键的地方在于,这样一来我们又将状态的维护零散地分落在各个地方。当状态中的变量越来越多,而且状态自身之间有所依赖的话,这么做又将我们置于麻烦之中。我们还需要注意,如果 `State` 中包含引用类型,那么它将失去完全的值语义,也就是说,如果你去改变了 `state` 中引用类型里的某个变量时,`state` 的 `didSet` 将不会被调用。这让我们在使用时需要如履薄冰,一旦这种情况发生,调试也会相对困难。 + +3. Data Source 重用 - 我们其实有机会将 Table View 的 Data Source 部分提取出来,让它在不同的 View Controller 中被重复利用。但是现在新引入的 `state` 阻止了这一可能性。如果我们想要重用 `dataSource`,我们需要将 `state.todos` 从中分离出来,或者是找一种方法在 `dataSource` 中同步待办事项的 model。 +4. 异步操作的测试 - 在 `TableViewController` 的测试中,有一个地方我们没有覆盖到,那就是 `viewDidLoad` 中用来加载待办的 `ToDoStore.shared.getToDoItems`。在不引入 stub 的情况下,测试这类异步操作会非常困难,但是引入 stub 本身现在看来也不是特别方便。我们有没有什么好方法可以测试 View Controller 中的异步操作呢? + +我们可以引入一些改变,来将 `TableViewController` 的 UI 部分变为纯函数式实现,并利用单向数据流来驱动 View Controller,就可以解决这些问题。 + +## 对 View Controller 的进一步改造 + +在着手大幅调整代码之前,我想先介绍一些基本概念。 + +### 什么是纯函数 + +纯函数 (Pure Function) 是指一个函数如果有相同的输入,则它产生相同的输出。换言之,也就是一个函数的动作不依赖于外部变量之类的状态,一旦输入给定,那么输出则唯一确定。对于 app 而言,我们总是会和一定的用户输入打交道,也必然会需要按照用户的输入和已知状态来更新 UI 作为“输出”。所以在 app 中,特别是 View Controller 中操作 UI 的部分,我会倾向于将“纯函数”定义为:在确定的输入下,某个函数给出确定的 UI。 + +上面的 `State` 为我们打造一个纯函数的 View Controller 提供了坚实的一步,但是它还并不是纯函数。对于任意的新的 `state`,输出的 UI 在一定程度上还是依赖于原来的 `state`。不过我们可以通过将原来的 `state` 提取出来,换成一个用于更新 UI 的纯函数,即可解决这个问题。新的函数签名看起来大概会是这样: + +```swift +func updateViews(state: State, previousState: State?) +``` + +这样,当我们给定原状态和现状态时,将得到确定的 UI,我们稍后会来看看这个方法的具体实现。 + +### 单向数据流 + +我们想要对 State View Controller 做的另一个改进是简化和统一状态维护的相关工作。我们知道,任何新的状态都是在原有状态的基础上通过一些改变所得到的。举例来说,在待办事项的 demo 中,新加一个待办意味着在原状态的 `state.todos` 的基础上,接收到用户的添加的行为,然后在数组中加上待办事项,并输出新的状态: + +```swift +if userWantToAddItem { + state.todos = state.todos + [item] +} +``` + +其他的操作也皆是如此。将这个过成进行一些抽象,我们可以得到这样一个公式: + +``` +新状态 = f(旧状态, 用户行为) +``` + +或者用 Swift 的语言,就是: + +```swift +func reducer(state: State, userAction: Action) -> State +``` + +如果你对函数式编程有所了解,应该很容易看出,这其实就是 `reduce` 函数的 `transformer`,它接受一个已有状态 `State` 和一个输入 `Action`,将 `Action` 作用于 `state`,并给出新的 `State`。结合 Swift 标准库中的 `reduce` 的函数签名,我们可以轻而易举地看到两者的关联: + +```swift +func reduce(_ initialResult: Result, + _ nextPartialResult: (Result, Element) throws -> Result) rethrows -> Result +``` + +其中 `reducer` 对应的正是 `reduce` 中的 `nextPartialResult` 部分,这也是我们将它称为 `reducer` 的原因。 + +有了 `reducer(state: State, userAction: Action) -> State`,接下来我们就可以将用户操作抽象为 `Action`,并将所有的状态更新集中处理了。为了让这个过程一般化,我们会统一使用一个 `Store` 类型来存储状态,并通过向 `Store` 发送 `Action` 来更新其中的状态。而希望接收到状态更新的对象 (这个例子中是 `TableViewController` 实例) 可以订阅状态变化,以更新 UI。订阅者不参与直接改变状态,而只是发送可能改变状态的行为,然后接受状态变化并更新 UI,以此形成单向的数据流动。而因为更新 UI 的代码将会是纯函数的,所以 View Controller 的 UI 也将是可预期及可测试的。 + +### 异步状态 + +对于像 `ToDoStore.shared.getToDoItems` 这样的异步操作,我们也希望能够纳入到 `Action` 和 `reducer` 的体系中。异步操作对于状态的立即改变 (比如设置 `state.loading` 并显示一个 Loading Indicator),我们可以通过向 `State` 中添加成员来达到。要触发这个异步操作,我们可以为它添加一个新的 `Action`,相对于普通 `Action` 仅仅只是改变 `state`,我们希望它还能有一定“副作用”,也就是在订阅者中能实际触发这个异步操作。这需要我们稍微更新一下 `reducer` 的定义,除了返回新的 `State` 以外,我们还希望对异步操作返回一个额外的 `Command`: + +```swift +func reducer(state: State, userAction: Action) -> (State, Command?) +``` + +`Command` 只是触发异步操作的手段,它不应该和状态变化有关,所以它没有出现在 `reducer` 的输入一侧。如果你现在不太理解的话也没有关系,先只需要记住这个函数签名,我们会在之后的例子中详细地看到这部分的工作方式。 + +将这些结合起来,我们将要实现的 View Controller 的架构类似于下图: + +![](/assets/images/2017/view-controller-states.svg) + +### 使用单向数据流和 reducer 改进 View Controller + +准备工作够多了,让我们来在 State View Controller 的基础上进行改进吧。 + +为了能够尽量通用,我们先来定义几个协议: + +```swift +protocol ActionType {} +protocol StateType {} +protocol CommandType {} +``` + +除了限制协议类型以外,上面这几个 `protocol` 并没有其他特别的意义。接下来,我们在 `TableViewController` 中定义对应的 `Action`,`State` 和 `Command`: + +```swift +class TableViewController: UITableViewController { + + struct State: StateType { + var dataSource = TableViewControllerDataSource(todos: [], owner: nil) + var text: String = "" + } + + enum Action: ActionType { + case updateText(text: String) + case addToDos(items: [String]) + case removeToDo(index: Int) + case loadToDos + } + + enum Command: CommandType { + case loadToDos(completion: ([String]) -> Void ) + } + + + //... +} +``` + +为了将 `dataSource` 提取出来,我们在 `State` 中把原来的 `todos` 换成了整个的 `dataSource`。`TableViewControllerDataSource` 就是标准的 `UITableViewDataSource`,它包含 `todos` 和用来作为 `inputCell` 设定 `delegate` 的 `owner`。基本上就是将原来 `TableViewController` 的 Data Source 部分的代码搬过去,部分关键代码如下: + +```swift +class TableViewControllerDataSource: NSObject, UITableViewDataSource { + + var todos: [String] + weak var owner: TableViewController? + + init(todos: [String], owner: TableViewController?) { + self.todos = todos + self.owner = owner + } + + //... + func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { + //... + let cell = tableView.dequeueReusableCell(withIdentifier: inputCellReuseId, for: indexPath) as! TableViewInputCell + cell.delegate = owner + return cell + } + +} +``` + +这是基本的将 Data Source 分离出 View Controller 的方法,本身很简单,也不是本文的重点。 + +注意 `Command` 中包含的 `loadToDos` 成员,它关联了一个方法作为结束时的回调,我们稍后会在这个方法里向 `store` 发送 `.addToDos` 的 `Action`。 + +准备好必要的类型后,我们就可以实现核心的 `reducer` 了: + +```swift +func reducer(state: State, action: Action) -> (state: State, command: Command?) { + var state = state + var command: Command? = nil + + switch action { + case .updateText(let text): + state.text = text + case .addToDos(let items): + state.dataSource = TableViewControllerDataSource(todos: items + state.dataSource.todos, owner: state.dataSource.owner) + case .removeToDo(let index): + let oldTodos = state.dataSource.todos + state.dataSource = TableViewControllerDataSource(todos: Array(oldTodos[.. { + let reducer: (_ state: S, _ action: A) -> (S, C?) + var subscriber: ((_ state: S, _ previousState: S, _ command: C?) -> Void)? + var state: S + + init(reducer: @escaping (S, A) -> (S, C?), initialState: S) { + self.reducer = reducer + self.state = initialState + } + + func dispatch(_ action: A) { + let previousState = state + let (nextState, command) = reducer(state, action) + state = nextState + subscriber?(state, previousState, command) + } + + func subscribe(_ handler: @escaping (S, S, C?) -> Void) { + self.subscriber = handler + } + + func unsubscribe() { + self.subscriber = nil + } +} +``` + +千万不要被这些泛型吓到,它们都非常简单。这个 `Store` 接受一个 `reducer` 和一个初始状态 `initialState` 作为输入。它提供了 `dispatch` 方法,持有该 `store` 的类型可以通过 `dispatch` 向其发送 `Action`,`store` 将根据 `reducer` 提供的方式生成新的 `state` 和必要的 `command`,然后通知它的订阅者。 + +在 `TableViewController` 中增加一个 `store` 变量,并在 `viewDidLoad` 中初始化它: + +```swift +class TableViewController: UITableViewController { + var store: Store! + + override func viewDidLoad() { + super.viewDidLoad() + + let dataSource = TableViewControllerDataSource(todos: [], owner: self) + store = Store(reducer: reducer, initialState: State(dataSource: dataSource, text: "")) + + // 订阅 store + store.subscribe { [weak self] state, previousState, command in + self?.stateDidChanged(state: state, previousState: previousState, command: command) + } + + // 初始化 UI + stateDidChanged(state: store.state, previousState: nil, command: nil) + + // 开始异步加载 ToDos + store.dispatch(.loadToDos) + } + + //... +} +``` + +将 `stateDidChanged` 添加到 `store.subscribe` 后,每次 `store` 状态改变时,`stateDidChanged` 都将被调用。现在我们还没有实现这个方法,它的具体内容如下: + +```swift + func stateDidChanged(state: State, previousState: State?, command: Command?) { + + if let command = command { + switch command { + case .loadToDos(let handler): + ToDoStore.shared.getToDoItems(completionHandler: handler) + } + } + + guard let previousState = previousState else { return } + + if previousState.dataSource.todos != state.dataSource.todos { + let dataSource = state.dataSource + tableView.dataSource = dataSource + tableView.reloadData() + title = "TODO - (\(dataSource.todos.count))" + } + + if (previousState.text != state.text) { + let isItemLengthEnough = state.text.count >= 3 + navigationItem.rightBarButtonItem?.isEnabled = isItemLengthEnough + + let inputIndexPath = IndexPath(row: 0, section: TableViewControllerDataSource.Section.input.rawValue) + let inputCell = tableView.cellForRow(at: inputIndexPath) as? TableViewInputCell + inputCell?.textField.text = state.text + } + } +``` + +同时,我们就可以把之前 `Command.loadTodos` 的回调补全了: + +```swift +func reducer(state: State, action: Action) -> (state: State, command: Command?) { + var state = state + var command: Command? = nil + + switch action { + // ... + case .loadToDos: + command = Command.loadToDos { data in + // 发送额外的 .addToDos + self.store.dispatch(.addToDos(items: data)) + } + } + return (state, command) +} +``` + +`stateDidChanged` 现在是一个纯函数式的 UI 更新方法,它的输出 (UI) 只取决于输入的 `state` 和 `previousState`。另一个输入 `Command` 负责触发一些不影响输出的“副作用”,在实践中,除了发送请求这样的异步操作外,View Controller 的转换,弹窗之类的交互都可以通过 `Command` 来进行。`Command` 本身不应该影响 `State` 的转换,它需要通过再次发送 `Action` 来改变状态,以此才能影响 UI。 + +到这里,我们基本上拥有所有的部件了。最后的收尾工作相当容易,把之前的直接的状态变更代码换成事件发送即可: + +```swift +override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { + guard indexPath.section == TableViewControllerDataSource.Section.todos.rawValue else { return } + store.dispatch(.removeToDo(index: indexPath.row)) +} + +@IBAction func addButtonPressed(_ sender: Any) { + store.dispatch(.addToDos(items: [store.state.text])) + store.dispatch(.updateText(text: "")) +} + +func inputChanged(cell: TableViewInputCell, text: String) { + store.dispatch(.updateText(text: text)) +} +``` + +### 测试纯函数式 View Controller + +折腾了这么半天,归根结底,其实我们想要的是一个高度可测试的 View Controller。基于高度可测试性,我们就能拥有高度的可维护性。`stateDidChanged` 现在是一个纯函数,与 `controller` 的当前状态无关,测试它将非常容易: + +```swift +func testUpdateView() { + let state1 = TableViewController.State( + dataSource:TableViewControllerDataSource(todos: [], owner: nil), + text: "" + ) + // 从 nil 状态转换为 state1 + controller.stateDidChanged(state: state1, previousState: nil, command: nil) + XCTAssertEqual(controller.title, "TODO - (0)") + XCTAssertEqual(controller.tableView.numberOfRows(inSection: TableViewControllerDataSource.Section.todos.rawValue), 0) + XCTAssertFalse(controller.navigationItem.rightBarButtonItem!.isEnabled) + + let state2 = TableViewController.State( + dataSource:TableViewControllerDataSource(todos: ["1", "3"], owner: nil), + text: "Hello" + ) + // 从 state1 状态转换为 state2 + controller.stateDidChanged(state: state2, previousState: state1, command: nil) + XCTAssertEqual(controller.title, "TODO - (2)") + XCTAssertEqual(controller.tableView.numberOfRows(inSection: TableViewControllerDataSource.Section.todos.rawValue), 2) + XCTAssertEqual(controller.tableView.cellForRow(at: todoItemIndexPath(row: 1))?.textLabel?.text, "3") + XCTAssertTrue(controller.navigationItem.rightBarButtonItem!.isEnabled) +} +``` + +作为单元测试,能覆盖产品代码就意味着覆盖了绝大多数使用情况。除此之外,如果你愿意,你也可以写出各种状态间的转换,覆盖尽可能多的边界情况。这可以保证你的代码不会因为新的修改发生退化。 + +虽然我们没有明说,但是 `TableViewController` 中的另一个重要的函数 `reducer` 也是纯函数。对它的测试同样简单,比如: + +```swift +func testReducerUpdateTextFromEmpty() { + let initState = TableViewController.State() + let state = controller.reducer(state: initState, action: .updateText(text: "123")).state + XCTAssertEqual(state.text, "123") +} +``` + +输出的 `state` 只与输入的 `initState` 和 `action` 有关,它与 View Controller 的状态完全无关。`reducer` 中的其他方法的测试如出一辙,在此不再赘言。 + +最后,让我们来看看 State View Controller 中没有被测试的加载部分的内容。由于现在加载新的待办事项也是由一个 `Action` 来触发的,我们可以通过检查 `reducer` 返回的 `Command` 来确认加载的结果: + +```swift +func testLoadToDos() { + let initState = TableViewController.State() + let (_, command) = controller.reducer(state: initState, action: .loadToDos) + XCTAssertNotNil(command) + switch command! { + case .loadToDos(let handler): + handler(["2", "3"]) + XCTAssertEqual(controller.store.state.dataSource.todos, ["2", "3"]) + // 现在 Command 只有 .loadToDos 一个命令。如果存在多个 Command,可以去下面的注释, + // 这样在命令不符时可以让测试失败 + // default: + // XCTFail("The command should be .loadToDos") + } +} +``` + +我们检查了返回的命令是否是 `.loadToDos`,而且 `.loadToDos` 的 `handler` 充当了天然的 stub。通过用一组 dummy 数据 (`["2", "3"]`) 进行调用,我们可以检查 `store` 中的状态是否如我们预期,这样我们就用同步的方式测试了异步加载的过程! + +> 可能有同学会有疑问,认为这里没有测试 `ToDoStore.shared.getToDoItems`。但是记住,我们这里要测试的是 View Controller,而不是网络层。对于 `ToDoStore` 的测试应该放在单独的地方进行。 +> +> 你可以在 GitHub repo 的 [reducer 分支](https://github.com/onevcat/ToDoDemo/tree/reducer)中找到对应这部分的代码。 + + +## 总结 + +可能你已经见过类似的单向数据流的方式了,比如 [Redux](https://github.com/reactjs/redux),或者更古老一些的 [Flux](http://facebook.github.io/flux/)。甚至在 Swift 中,也有 [ReSwift](https://github.com/ReSwift/ReSwift) 实现了类似的想法。在这篇文章中,我们保持了基本的 MVC 架构,而使用了这种方法改进了 View Controller 的设计。 + +在例子中,我们的 `Store` 位于 View Controller 中。其实只要存在状态变化,这套方式可以在任何地方适用。你完全可以在其他的层级中引入 `Store`。只要能保证数据的单向流动,以及完整的状态变更覆盖测试,这套方式就具有良好的扩展性。 + +相对于大刀阔斧地改造,或者使用全新的设计模式,这种稍微小一些改进更容易在日常中进行探索和实践,它不存在什么外部依赖,可以被直接用在新建的 View Controller 中,你也可以逐步将已有类进行改造。毕竟绝大多数 iOS 开发者可能都会把大量时间花在 View Controller 上,所以能否写出易于测试,易于维护的 View Controller,多少将决定一个 iOS 开发者的幸福程度。所以花一些时间琢磨如何写好 View Controller,应该是每个 iOSer 的必修课。 + +### 一些推荐的参考资料 + +如果你对函数式编程的一些概念感兴趣,不妨看看我和一些同仁翻译的[《函数式 Swift》](https://objccn.io/products/functional-swift/)一书,里面对像是值类型、纯函数、引用透明等特性进行了详细的阐述。如果你想更多接触一些类似的架构方法,我个人推荐研读一下 [React](https://facebook.github.io/react/) 的资料,特别是如何[以 React 的思想思考](https://facebook.github.io/react/docs/thinking-in-react.html)的相关内容。如果你还有余力,即使你日常每天还是做 CocoaTouch 的 native 开发,也不妨尝试用 React Native 来构建一些项目。相信你会在这个过程中开阔眼界,得到新的领悟。 + + diff --git a/assets/images/2017/named-colors.png b/assets/images/2017/named-colors.png new file mode 100644 index 00000000..15000bb9 --- /dev/null +++ b/assets/images/2017/named-colors.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76501b6232787f1d2805084fbf723b45062cd69c474a5e628ac0c92f21032a18 +size 23417 diff --git a/assets/images/2017/todo-video.mp4 b/assets/images/2017/todo-video.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..65225021a2f9b2ad46e0b5c7ec68cca4f6ae5619 GIT binary patch literal 255602 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 z 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

Ng-@#5e| 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%0AI=p+n|k-nF#}4Jp_(T%ag3E+^CS>N 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

% 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�)tM+4w(KGhReGQV}0sa#iZP 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 literal 0 HcmV?d00001 diff --git a/assets/images/2017/view-controller-states.svg b/assets/images/2017/view-controller-states.svg new file mode 100644 index 00000000..d8016a36 --- /dev/null +++ b/assets/images/2017/view-controller-states.svg @@ -0,0 +1,606 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/images/2017/wwdc-2017.jpg b/assets/images/2017/wwdc-2017.jpg new file mode 100644 index 00000000..8b68563c --- /dev/null +++ b/assets/images/2017/wwdc-2017.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79d78e02b4b01de6e37919421e26f76b4401f24f1d8964ae075f253aac023a22 +size 47557 diff --git a/assets/images/2017/xcode-git.png b/assets/images/2017/xcode-git.png new file mode 100644 index 00000000..75fd81a6 --- /dev/null +++ b/assets/images/2017/xcode-git.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:50c403b0c085339dca54fe1d23610b9022c636e33fd7cd4dc292478cce9e301c +size 38416 diff --git a/assets/images/background-cover.jpg b/assets/images/background-cover.jpg index 84cfc9bb..069c5332 100644 --- a/assets/images/background-cover.jpg +++ b/assets/images/background-cover.jpg @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7b44b3cb284eae63800f29f1c267d047bc0b2a620b18fc74be3f521d5ead764b -size 225224 +oid sha256:0ed63104b3089be505e47341a62fb0a24398d893a82f52df58b51f2948845a97 +size 116978 diff --git a/assets/images/background-cover979.jpg b/assets/images/background-cover979.jpg new file mode 100644 index 00000000..aaf55909 --- /dev/null +++ b/assets/images/background-cover979.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec95b0714a1919d3287ab9506654573567bd4c8d0af198cd7afd78ed112db290 +size 143300 diff --git a/assets/images/background-cover980.jpg b/assets/images/background-cover980.jpg new file mode 100644 index 00000000..84cfc9bb --- /dev/null +++ b/assets/images/background-cover980.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b44b3cb284eae63800f29f1c267d047bc0b2a620b18fc74be3f521d5ead764b +size 225224 diff --git a/config.codekit3 b/config.codekit3 index 64daf933..8ca50dab 100644 --- a/config.codekit3 +++ b/config.codekit3 @@ -3579,7 +3579,7 @@ "rFN": 0, "uCM": 0 }, - "\/_posts\/2017-02-20-personal-app.md": { + "\/_posts\/2017-02-22-mailme-app.md": { "cS": 0, "eF": 1, "eL": 1, @@ -3588,7 +3588,43 @@ "eSQ": 1, "ft": 4096, "oA": 0, - "oAP": "\/_posts\/2017-02-20-personal-app.html", + "oAP": "\/_posts\/2017-02-22-mailme-app.html", + "oF": 0, + "oFM": 0, + "oS": 0, + "pHT": 0, + "pME": 1, + "rFN": 0, + "uCM": 0 + }, + "\/_posts\/2017-02-27-ownership.md": { + "cS": 0, + "eF": 1, + "eL": 1, + "eLB": 0, + "ema": 1, + "eSQ": 1, + "ft": 4096, + "oA": 0, + "oAP": "\/_posts\/2017-02-27-ownership.html", + "oF": 0, + "oFM": 0, + "oS": 0, + "pHT": 0, + "pME": 1, + "rFN": 0, + "uCM": 0 + }, + "\/_posts\/2017-04-27-storyboard-argue.md": { + "cS": 0, + "eF": 1, + "eL": 1, + "eLB": 0, + "ema": 1, + "eSQ": 1, + "ft": 4096, + "oA": 0, + "oAP": "\/_posts\/2017-04-27-storyboard-argue.html", "oF": 0, "oFM": 0, "oS": 0, @@ -6214,101 +6250,1729 @@ "oAP": "\/_site\/2015\/08\/watchos2\/index.html", "oF": 0 }, - "\/_site\/2015\/09\/ui-testing\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/2015\/09\/ui-testing\/index.html", - "oF": 0 + "\/_site\/2015\/09\/ui-testing\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2015\/09\/ui-testing\/index.html", + "oF": 0 + }, + "\/_site\/2015\/10\/apple-tv\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2015\/10\/apple-tv\/index.html", + "oF": 0 + }, + "\/_site\/2015\/12\/2015-final\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2015\/12\/2015-final\/index.html", + "oF": 0 + }, + "\/_site\/2016\/01\/create-framework\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2016\/01\/create-framework\/index.html", + "oF": 0 + }, + "\/_site\/2016\/02\/swift-performance\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2016\/02\/swift-performance\/index.html", + "oF": 0 + }, + "\/_site\/2016\/03\/swift-throws\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2016\/03\/swift-throws\/index.html", + "oF": 0 + }, + "\/_site\/2016\/04\/first-wwdc\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2016\/04\/first-wwdc\/index.html", + "oF": 0 + }, + "\/_site\/2016\/04\/objccn-plan\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2016\/04\/objccn-plan\/index.html", + "oF": 0 + }, + "\/_site\/2016\/06\/ios-10-ats\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2016\/06\/ios-10-ats\/index.html", + "oF": 0 + }, + "\/_site\/2016\/06\/ios-10-sdk\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2016\/06\/ios-10-sdk\/index.html", + "oF": 0 + }, + "\/_site\/2016\/08\/notification\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2016\/08\/notification\/index.html", + "oF": 0 + }, + "\/_site\/2016\/11\/pop-cocoa-1\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2016\/11\/pop-cocoa-1\/index.html", + "oF": 0 + }, + "\/_site\/2016\/12\/concurrency\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2016\/12\/concurrency\/index.html", + "oF": 0 + }, + "\/_site\/2016\/12\/pop-cocoa-2\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2016\/12\/pop-cocoa-2\/index.html", + "oF": 0 + }, + "\/_site\/2017\/02\/mailme-app\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2017\/02\/mailme-app\/index.html", + "oF": 0 + }, + "\/_site\/2017\/02\/ownership\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2017\/02\/ownership\/index.html", + "oF": 0 + }, + "\/_site\/2017\/04\/storyboard-argue\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/2017\/04\/storyboard-argue\/index.html", + "oF": 0 + }, + "\/_site\/about\/index.html": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/about\/index.html", + "oF": 0 + }, + "\/_site\/assets\/images\/2012\/arcpic1.png": { + "ft": 32768, + "iS": 115767, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arcpic1.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2012\/arcpic10.png": { + "ft": 32768, + "iS": 16826, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arcpic10.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2012\/arcpic11.png": { + "ft": 32768, + "iS": 11710, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arcpic11.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2012\/arcpic12.png": { + "ft": 32768, + "iS": 17472, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arcpic12.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2012\/arcpic13.png": { + "ft": 32768, + "iS": 48935, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arcpic13.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2012\/arcpic14.png": { + "ft": 32768, + "iS": 9657, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arcpic14.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2012\/arcpic15.png": { + "ft": 32768, + "iS": 18996, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arcpic15.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2012\/arcpic2.png": { + "ft": 32768, + "iS": 139562, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arcpic2.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2012\/arcpic3.png": { + "ft": 32768, + "iS": 158102, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arcpic3.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2012\/arcpic4.png": { + "ft": 32768, + "iS": 151862, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arcpic4.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2012\/arcpic5.png": { + "ft": 32768, + "iS": 134765, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arcpic5.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2012\/arcpic6.png": { + "ft": 32768, + "iS": 163276, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arcpic6.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2012\/arcpic7.png": { + "ft": 32768, + "iS": 125824, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arcpic7.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2012\/arcpic8.png": { + "ft": 32768, + "iS": 27625, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arcpic8.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2012\/arcpic9.png": { + "ft": 32768, + "iS": 16230, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arcpic9.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2012\/arctitle.png": { + "ft": 32768, + "iS": 9130, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2012\/arctitle.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/1-ourmoney-login.png": { + "ft": 32768, + "iS": 232573, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/1-ourmoney-login.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/2-ourmoney-month.png": { + "ft": 32768, + "iS": 239770, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/2-ourmoney-month.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/3-ourmoney-stat.png": { + "ft": 32768, + "iS": 220672, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/3-ourmoney-stat.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/4-ourmoney-invite.png": { + "ft": 32768, + "iS": 147527, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/4-ourmoney-invite.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/5-ourmoney-push.png": { + "ft": 32768, + "iS": 47642, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/5-ourmoney-push.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/6-ourmoney-offline.png": { + "ft": 32768, + "iS": 167071, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/6-ourmoney-offline.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/blend_1.png": { + "ft": 32768, + "iS": 36957, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/blend_1.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/blend_2.png": { + "ft": 32768, + "iS": 42728, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/blend_2.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/blend_3.png": { + "ft": 32768, + "iS": 44781, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/blend_3.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/blend_origin.png": { + "ft": 32768, + "iS": 44781, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/blend_origin.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/blend_title.png": { + "ft": 32768, + "iS": 63077, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/blend_title.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/cannot-connect-its.png": { + "ft": 32768, + "iS": 62445, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/cannot-connect-its.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/code-xib-sb.png": { + "ft": 32768, + "iS": 100497, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/code-xib-sb.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/custom-vc-transition-1.gif": { + "ft": 4194304, + "iS": 55553, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/custom-vc-transition-1.gif", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/custom-vc-transition-2.gif": { + "ft": 4194304, + "iS": 101756, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/custom-vc-transition-2.gif", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/IB-tip1.png": { + "ft": 32768, + "iS": 41552, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/IB-tip1.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/IB-tip2.png": { + "ft": 32768, + "iS": 50125, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/IB-tip2.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/IB-tip3.png": { + "ft": 32768, + "iS": 31573, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/IB-tip3.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/IB-tip4.png": { + "ft": 32768, + "iS": 27175, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/IB-tip4.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/ios-7-logo.png": { + "ft": 32768, + "iS": 30764, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/ios-7-logo.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/ios-multitask-ios6.png": { + "ft": 32768, + "iS": 13246, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/ios-multitask-ios6.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/ios-multitask-ios7.png": { + "ft": 32768, + "iS": 15475, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/ios-multitask-ios7.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/ios-transition-banner.jpg": { + "ft": 16384, + "iS": 48569, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/ios-transition-banner.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/ios7-back-fetch-scheme.png": { + "ft": 32768, + "iS": 29124, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/ios7-back-fetch-scheme.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/ios7-message-app-spring.gif": { + "ft": 4194304, + "iS": 572817, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/ios7-message-app-spring.gif", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/ios7-multitask-background-fetch.png": { + "ft": 32768, + "iS": 19880, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/ios7-multitask-background-fetch.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/ios7-multitasking.jpg": { + "ft": 16384, + "iS": 31045, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/ios7-multitasking.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/itc-special-character.png": { + "ft": 32768, + "iS": 89351, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/itc-special-character.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/iTunesArtwork-ios7.png": { + "ft": 32768, + "iS": 41312, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/iTunesArtwork-ios7.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/iTunesArtwork.png": { + "ft": 32768, + "iS": 346313, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/iTunesArtwork.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/oculus-me.png": { + "ft": 32768, + "iS": 136759, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/oculus-me.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/ourmoney-banner.jpg": { + "ft": 16384, + "iS": 15218, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/ourmoney-banner.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/ourmoney_icon.png": { + "ft": 32768, + "iS": 23792, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/ourmoney_icon.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/OurMoneyIcon.png": { + "ft": 32768, + "iS": 23585, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/OurMoneyIcon.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/projectAT.keystore": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/assets\/images\/2013\/projectAT.keystore", + "oF": 0 + }, + "\/_site\/assets\/images\/2013\/QQ.app.zip": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/assets\/images\/2013\/QQ.app.zip", + "oF": 0 + }, + "\/_site\/assets\/images\/2013\/ResourcePackSpriteKit.zip": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/assets\/images\/2013\/ResourcePackSpriteKit.zip", + "oF": 0 + }, + "\/_site\/assets\/images\/2013\/shader-create-in-unity.png": { + "ft": 32768, + "iS": 10450, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/shader-create-in-unity.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/shader-select.png": { + "ft": 32768, + "iS": 14203, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/shader-select.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/shader-structure.png": { + "ft": 32768, + "iS": 29765, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/shader-structure.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/shader-toturial-hl.jpg": { + "ft": 16384, + "iS": 68440, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/shader-toturial-hl.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/shader-tutorial-banner.jpg": { + "ft": 16384, + "iS": 35309, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/shader-tutorial-banner.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/shader-tutorial2-compare.jpg": { + "ft": 16384, + "iS": 111895, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/shader-tutorial2-compare.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/shader-tutorial2-light.jpg": { + "ft": 16384, + "iS": 17387, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/shader-tutorial2-light.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/shader-tutorial2-normal.jpg": { + "ft": 16384, + "iS": 84951, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/shader-tutorial2-normal.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/shader-tutorial2-snow-vert.jpg": { + "ft": 16384, + "iS": 107809, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/shader-tutorial2-snow-vert.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/shader-tutorial2-snow.jpg": { + "ft": 16384, + "iS": 83195, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/shader-tutorial2-snow.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/spring-collection-view-over-ios7.gif": { + "ft": 4194304, + "iS": 664593, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/spring-collection-view-over-ios7.gif", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/spring-list-ios7.png": { + "ft": 32768, + "iS": 43685, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/spring-list-ios7.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/sprite-kit-add-player.png": { + "ft": 32768, + "iS": 15328, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/sprite-kit-add-player.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/sprite-kit-begin-screen.png": { + "ft": 32768, + "iS": 12604, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/sprite-kit-begin-screen.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/spritekit-add-moving-monster.png": { + "ft": 32768, + "iS": 15614, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/spritekit-add-moving-monster.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/spritekit-add-projectile.gif": { + "ft": 4194304, + "iS": 322193, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/spritekit-add-projectile.gif", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/spritekit-create.png": { + "ft": 32768, + "iS": 84262, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/spritekit-create.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/spritekit-hit.gif": { + "ft": 4194304, + "iS": 196410, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/spritekit-hit.gif", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/spritekit-import-images.png": { + "ft": 32768, + "iS": 20834, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/spritekit-import-images.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/spritekit-intro.png": { + "ft": 32768, + "iS": 21231, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/spritekit-intro.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/spritekit-math.png": { + "ft": 32768, + "iS": 8896, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/spritekit-math.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/spritekit-result.png": { + "ft": 32768, + "iS": 7059, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/spritekit-result.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/spritekit-update_loop.png": { + "ft": 32768, + "iS": 77330, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/spritekit-update_loop.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/sprtekit-monsters.gif": { + "ft": 4194304, + "iS": 79596, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/sprtekit-monsters.gif", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/uikit-dynamics-collider.gif": { + "ft": 4194304, + "iS": 49412, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/uikit-dynamics-collider.gif", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/uikit-dynamics-dragdrop.gif": { + "ft": 4194304, + "iS": 347013, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/uikit-dynamics-dragdrop.gif", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/uikit-dynamics-gravity.gif": { + "ft": 4194304, + "iS": 70066, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/uikit-dynamics-gravity.gif", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/unirate-icon.png": { + "ft": 32768, + "iS": 16749, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/unirate-icon.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/UniRate.jpg": { + "ft": 16384, + "iS": 54568, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/UniRate.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/unirate0.png": { + "ft": 32768, + "iS": 49334, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/unirate0.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/unirate1.png": { + "ft": 32768, + "iS": 23041, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/unirate1.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/unirate2.png": { + "ft": 32768, + "iS": 42982, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/unirate2.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/unity-xuporter-logo.jpg": { + "ft": 16384, + "iS": 14810, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/unity-xuporter-logo.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/VR_icon.png": { + "ft": 32768, + "iS": 19779, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/VR_icon.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/VVDocumenter.png": { + "ft": 32768, + "iS": 26016, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/VVDocumenter.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/warning-detail.png": { + "ft": 32768, + "iS": 15542, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/warning-detail.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/welcome-to-xcode.png": { + "ft": 32768, + "iS": 50797, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/welcome-to-xcode.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/weverything.png": { + "ft": 32768, + "iS": 62964, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/weverything.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/xcode-warning.png": { + "ft": 32768, + "iS": 135254, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/xcode-warning.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/xcode5-add-ac.png": { + "ft": 32768, + "iS": 39856, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/xcode5-add-ac.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/xcode5-asset-catalog.png": { + "ft": 32768, + "iS": 17075, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/xcode5-asset-catalog.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/xcode5-capabilities.png": { + "ft": 32768, + "iS": 32616, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/xcode5-capabilities.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/xcode5-comment-doc.png": { + "ft": 32768, + "iS": 26894, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/xcode5-comment-doc.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/xcode5-debug-image.png": { + "ft": 32768, + "iS": 25253, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/xcode5-debug-image.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/xcode5-debug-mouseover.png": { + "ft": 32768, + "iS": 28058, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/xcode5-debug-mouseover.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/xcode5-debug-profiler.png": { + "ft": 32768, + "iS": 29175, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/xcode5-debug-profiler.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/xcode5-header.png": { + "ft": 32768, + "iS": 14226, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/xcode5-header.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/xcode5-quickhelp.png": { + "ft": 32768, + "iS": 17990, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/xcode5-quickhelp.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/xcode5-slicing-image.png": { + "ft": 32768, + "iS": 12830, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/xcode5-slicing-image.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/xcode5-slicing.png": { + "ft": 32768, + "iS": 27420, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/xcode5-slicing.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/xcode5-sourcecontrol.png": { + "ft": 32768, + "iS": 26044, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/xcode5-sourcecontrol.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2013\/xcode5-title.png": { + "ft": 32768, + "iS": 22070, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2013\/xcode5-title.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/apl-layout.png": { + "ft": 32768, + "iS": 38104, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/apl-layout.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/bye-kayac.jpg": { + "ft": 16384, + "iS": 178928, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/bye-kayac.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/cat_big.jpg": { + "ft": 16384, + "iS": 238187, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/cat_big.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/cowsay-lolcat.png": { + "ft": 32768, + "iS": 77358, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/cowsay-lolcat.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/define-title.png": { + "ft": 32768, + "iS": 78693, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/define-title.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/extension-demo-1.JPG": { + "ft": 16384, + "iS": 12801, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/extension-demo-1.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/extension-demo-2.JPG": { + "ft": 16384, + "iS": 31162, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/extension-demo-2.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/extension-demo-3.JPG": { + "ft": 16384, + "iS": 30733, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/extension-demo-3.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/extension-demo-4.JPG": { + "ft": 16384, + "iS": 30929, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/extension-demo-4.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/extension-demo-5.JPG": { + "ft": 16384, + "iS": 13837, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/extension-demo-5.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/extension-tutorial-2.jpg": { + "ft": 16384, + "iS": 17596, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/extension-tutorial-2.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/extension-tutorial-3.jpg": { + "ft": 16384, + "iS": 27407, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/extension-tutorial-3.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/extension-tutorial-4.jpg": { + "ft": 16384, + "iS": 37219, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/extension-tutorial-4.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/extension-tutorial-5.jpg": { + "ft": 16384, + "iS": 48418, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/extension-tutorial-5.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/extension-tutorial-6.jpg": { + "ft": 16384, + "iS": 32208, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/extension-tutorial-6.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/extension-tutorial-7.jpg": { + "ft": 16384, + "iS": 39066, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/extension-tutorial-7.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/extension-tutorial-8.jpg": { + "ft": 16384, + "iS": 17330, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/extension-tutorial-8.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/extension-tutorial-9.jpg": { + "ft": 16384, + "iS": 51483, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/extension-tutorial-9.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/extension-tutorial.jpg": { + "ft": 16384, + "iS": 39216, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/extension-tutorial.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/ibdesign-1.png": { + "ft": 32768, + "iS": 32336, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/ibdesign-1.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/ibdesign-2.png": { + "ft": 32768, + "iS": 6321, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/ibdesign-2.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/ibdesign-3.png": { + "ft": 32768, + "iS": 13981, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/ibdesign-3.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/ibdesign-4.png": { + "ft": 32768, + "iS": 3938, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/ibdesign-4.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/ibdesign-5.png": { + "ft": 32768, + "iS": 4122, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/ibdesign-5.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/ibdesign-6.png": { + "ft": 32768, + "iS": 20908, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/ibdesign-6.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/ibdesign-7.png": { + "ft": 32768, + "iS": 85707, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/ibdesign-7.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/img001-mock-test.jpg": { + "ft": 16384, + "iS": 32279, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/img001-mock-test.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/kiwi-1-1.png": { + "ft": 32768, + "iS": 71215, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/kiwi-1-1.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/kiwi-1-2.png": { + "ft": 32768, + "iS": 16622, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/kiwi-1-2.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/kiwi-1-3.png": { + "ft": 32768, + "iS": 22606, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/kiwi-1-3.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/kiwi-1-4.png": { + "ft": 32768, + "iS": 7853, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/kiwi-1-4.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/kiwi-manga.png": { + "ft": 32768, + "iS": 32592, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/kiwi-manga.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/kiwi-title.jpg": { + "ft": 16384, + "iS": 236576, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/kiwi-title.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/lldb_optional-compressor.png": { + "ft": 32768, + "iS": 15479, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/lldb_optional-compressor.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/mock.jpg": { + "ft": 16384, + "iS": 51488, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/mock.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/multi-threading.jpg": { + "ft": 16384, + "iS": 115395, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/multi-threading.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/photocell.png": { + "ft": 32768, + "iS": 152261, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/photocell.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/shipit.png": { + "ft": 32768, + "iS": 33770, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/shipit.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/size-classes-1.jpg": { + "ft": 16384, + "iS": 39796, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/size-classes-1.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/size-classes-2.gif": { + "ft": 4194304, + "iS": 198288, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/size-classes-2.gif", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/size-classes-3.gif": { + "ft": 4194304, + "iS": 173741, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/size-classes-3.gif", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/size-classes-header.png": { + "ft": 32768, + "iS": 70730, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/size-classes-header.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/swift.png": { + "ft": 32768, + "iS": 28118, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/swift.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/swift_print_raw-compressor.png": { + "ft": 32768, + "iS": 17665, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/swift_print_raw-compressor.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/swift_substring-compressor.png": { + "ft": 32768, + "iS": 25691, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/swift_substring-compressor.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/swift_unshare_array.png": { + "ft": 32768, + "iS": 21722, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/swift_unshare_array.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/swifter-preview.zip": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/assets\/images\/2014\/swifter-preview.zip", + "oF": 0 + }, + "\/_site\/assets\/images\/2014\/watchkit-0.png": { + "ft": 32768, + "iS": 29365, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/watchkit-0.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/watchkit-1.png": { + "ft": 32768, + "iS": 66505, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/watchkit-1.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/watchkit-2.png": { + "ft": 32768, + "iS": 12866, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/watchkit-2.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/watchkit-3.png": { + "ft": 32768, + "iS": 29636, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/watchkit-3.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/watchkit-4.png": { + "ft": 32768, + "iS": 46546, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/watchkit-4.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/watchkit-5.png": { + "ft": 32768, + "iS": 14395, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/watchkit-5.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2014\/wwdc2014-badge.jpg": { + "ft": 16384, + "iS": 66735, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2014\/wwdc2014-badge.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/apple-tv-1.jpg": { + "ft": 16384, + "iS": 33266, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/apple-tv-1.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/apple-tv-10.jpg": { + "ft": 16384, + "iS": 87382, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/apple-tv-10.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/apple-tv-11.jpg": { + "ft": 16384, + "iS": 35400, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/apple-tv-11.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/apple-tv-12.jpg": { + "ft": 16384, + "iS": 81023, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/apple-tv-12.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/apple-tv-13.jpg": { + "ft": 16384, + "iS": 59016, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/apple-tv-13.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/apple-tv-14.jpg": { + "ft": 16384, + "iS": 67325, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/apple-tv-14.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/apple-tv-15.jpg": { + "ft": 16384, + "iS": 59497, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/apple-tv-15.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/apple-tv-2.jpg": { + "ft": 16384, + "iS": 54996, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/apple-tv-2.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/apple-tv-3.jpg": { + "ft": 16384, + "iS": 44074, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/apple-tv-3.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/apple-tv-4.jpg": { + "ft": 16384, + "iS": 43909, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/apple-tv-4.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/apple-tv-5.jpg": { + "ft": 16384, + "iS": 40484, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/apple-tv-5.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/apple-tv-6.jpg": { + "ft": 16384, + "iS": 64251, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/apple-tv-6.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/apple-tv-7.jpg": { + "ft": 16384, + "iS": 58835, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/apple-tv-7.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/apple-tv-8.jpg": { + "ft": 16384, + "iS": 46090, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/apple-tv-8.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/apple-tv-9.jpg": { + "ft": 16384, + "iS": 75150, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/apple-tv-9.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/cons2.png": { + "ft": 32768, + "iS": 3692, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/cons2.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/conss2.png": { + "ft": 32768, + "iS": 4452, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/conss2.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/cross-platform.png": { + "ft": 32768, + "iS": 40342, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/cross-platform.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/github-2015.png": { + "ft": 32768, + "iS": 82786, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/github-2015.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/hybrid-app.jpg": { + "ft": 16384, + "iS": 31630, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/hybrid-app.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/list2.png": { + "ft": 32768, + "iS": 7515, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/list2.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/manxia.jpg": { + "ft": 16384, + "iS": 200330, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/manxia.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/multitasking-1.jpg": { + "ft": 16384, + "iS": 105476, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/multitasking-1.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/multitasking-2.jpg": { + "ft": 16384, + "iS": 31670, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/multitasking-2.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/nativescript-architecture.png": { + "ft": 32768, + "iS": 11519, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/nativescript-architecture.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/nativescript-ui.png": { + "ft": 32768, + "iS": 34335, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/nativescript-ui.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/scheme-terminal.png": { + "ft": 32768, + "iS": 18463, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/scheme-terminal.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/size_classes.png": { + "ft": 32768, + "iS": 30502, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/size_classes.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2015\/step-1.png": { + "ft": 32768, + "iS": 21697, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-1.png", + "oF": 0, + "opt": 0 }, - "\/_site\/2015\/10\/apple-tv\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/2015\/10\/apple-tv\/index.html", - "oF": 0 + "\/_site\/assets\/images\/2015\/step-10.png": { + "ft": 32768, + "iS": 50831, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-10.png", + "oF": 0, + "opt": 0 }, - "\/_site\/2015\/12\/2015-final\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/2015\/12\/2015-final\/index.html", - "oF": 0 + "\/_site\/assets\/images\/2015\/step-11.png": { + "ft": 32768, + "iS": 43333, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-11.png", + "oF": 0, + "opt": 0 }, - "\/_site\/2016\/01\/create-framework\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/2016\/01\/create-framework\/index.html", - "oF": 0 + "\/_site\/assets\/images\/2015\/step-12.png": { + "ft": 32768, + "iS": 24383, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-12.png", + "oF": 0, + "opt": 0 }, - "\/_site\/2016\/02\/swift-performance\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/2016\/02\/swift-performance\/index.html", - "oF": 0 + "\/_site\/assets\/images\/2015\/step-13.png": { + "ft": 32768, + "iS": 39338, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-13.png", + "oF": 0, + "opt": 0 }, - "\/_site\/2016\/03\/swift-throws\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/2016\/03\/swift-throws\/index.html", - "oF": 0 + "\/_site\/assets\/images\/2015\/step-14.png": { + "ft": 32768, + "iS": 24930, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-14.png", + "oF": 0, + "opt": 0 }, - "\/_site\/2016\/04\/first-wwdc\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/2016\/04\/first-wwdc\/index.html", - "oF": 0 + "\/_site\/assets\/images\/2015\/step-15.png": { + "ft": 32768, + "iS": 7004, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-15.png", + "oF": 0, + "opt": 0 }, - "\/_site\/2016\/04\/objccn-plan\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/2016\/04\/objccn-plan\/index.html", - "oF": 0 + "\/_site\/assets\/images\/2015\/step-16.png": { + "ft": 32768, + "iS": 12797, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-16.png", + "oF": 0, + "opt": 0 }, - "\/_site\/2016\/06\/ios-10-ats\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/2016\/06\/ios-10-ats\/index.html", - "oF": 0 + "\/_site\/assets\/images\/2015\/step-17.png": { + "ft": 32768, + "iS": 17240, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-17.png", + "oF": 0, + "opt": 0 }, - "\/_site\/2016\/06\/ios-10-sdk\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/2016\/06\/ios-10-sdk\/index.html", - "oF": 0 + "\/_site\/assets\/images\/2015\/step-18.png": { + "ft": 32768, + "iS": 9588, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-18.png", + "oF": 0, + "opt": 0 }, - "\/_site\/2016\/08\/notification\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/2016\/08\/notification\/index.html", - "oF": 0 + "\/_site\/assets\/images\/2015\/step-19.png": { + "ft": 32768, + "iS": 11348, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-19.png", + "oF": 0, + "opt": 0 }, - "\/_site\/2016\/11\/pop-cocoa-1\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/2016\/11\/pop-cocoa-1\/index.html", - "oF": 0 + "\/_site\/assets\/images\/2015\/step-2.png": { + "ft": 32768, + "iS": 19378, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-2.png", + "oF": 0, + "opt": 0 }, - "\/_site\/2016\/12\/concurrency\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/2016\/12\/concurrency\/index.html", - "oF": 0 + "\/_site\/assets\/images\/2015\/step-20.gif": { + "ft": 4194304, + "iS": 107538, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-20.gif", + "oF": 0, + "opt": 0 }, - "\/_site\/2016\/12\/pop-cocoa-2\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/2016\/12\/pop-cocoa-2\/index.html", - "oF": 0 + "\/_site\/assets\/images\/2015\/step-3.png": { + "ft": 32768, + "iS": 21151, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-3.png", + "oF": 0, + "opt": 0 }, - "\/_site\/2017\/02\/personal-app\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/2017\/02\/personal-app\/index.html", - "oF": 0 + "\/_site\/assets\/images\/2015\/step-4.png": { + "ft": 32768, + "iS": 33418, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-4.png", + "oF": 0, + "opt": 0 }, - "\/_site\/about\/index.html": { - "ft": 8192, - "oA": 2, - "oAP": "\/_site\/about\/index.html", - "oF": 0 + "\/_site\/assets\/images\/2015\/step-5.png": { + "ft": 32768, + "iS": 19580, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2015\/step-5.png", + "oF": 0, + "opt": 0 }, "\/_site\/assets\/images\/2015\/step-6.png": { "ft": 32768, @@ -6398,6 +8062,12 @@ "oF": 0, "opt": 0 }, + "\/_site\/assets\/images\/2015\/WatchWeatherImage.zip": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/assets\/images\/2015\/WatchWeatherImage.zip", + "oF": 0 + }, "\/_site\/assets\/images\/2015\/wwdc15.jpg": { "ft": 16384, "iS": 19082, @@ -6664,6 +8334,22 @@ "oF": 0, "opt": 0 }, + "\/_site\/assets\/images\/2017\/compiling-sb.png": { + "ft": 32768, + "iS": 3970, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2017\/compiling-sb.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2017\/font-style.png": { + "ft": 32768, + "iS": 59698, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2017\/font-style.png", + "oF": 0, + "opt": 0 + }, "\/_site\/assets\/images\/2017\/mail-me-1.mp4": { "ft": 8192, "oA": 2, @@ -6688,6 +8374,22 @@ "oAP": "\/_site\/assets\/images\/2017\/mail-me-4.mp4", "oF": 0 }, + "\/_site\/assets\/images\/2017\/runtime-attribute.png": { + "ft": 32768, + "iS": 25018, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2017\/runtime-attribute.png", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/2017\/setting-localized-ib.png": { + "ft": 32768, + "iS": 11944, + "oA": 0, + "oAP": "\/_site\/assets\/images\/2017\/setting-localized-ib.png", + "oF": 0, + "opt": 0 + }, "\/_site\/assets\/images\/avatar.jpg": { "ft": 16384, "iS": 12307, @@ -6704,6 +8406,22 @@ "oF": 0, "opt": 0 }, + "\/_site\/assets\/images\/background-cover981.jpg": { + "ft": 16384, + "iS": 118068, + "oA": 0, + "oAP": "\/_site\/assets\/images\/background-cover981.jpg", + "oF": 0, + "opt": 0 + }, + "\/_site\/assets\/images\/background-cover982.jpg": { + "ft": 16384, + "iS": 71456, + "oA": 0, + "oAP": "\/_site\/assets\/images\/background-cover982.jpg", + "oF": 0, + "opt": 0 + }, "\/_site\/assets\/images\/background-cover983.jpg": { "ft": 16384, "iS": 187530, @@ -7268,21 +8986,24 @@ "oAP": "\/_site\/feed.xml", "oF": 0 }, + "\/_site\/Gemfile": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/Gemfile", + "oF": 0 + }, + "\/_site\/Gemfile.lock": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/Gemfile.lock", + "oF": 0 + }, "\/_site\/index.html": { "ft": 8192, "oA": 2, "oAP": "\/_site\/index.html", "oF": 0 }, - "\/_site\/js\/highlight.pack.js": { - "ft": 64, - "mi": 1, - "oA": 0, - "oAP": "\/_site\/js\/highlight.pack-min.js", - "oF": 0, - "sC": 1, - "tS": 0 - }, "\/_site\/js\/main.js": { "ft": 64, "mi": 1, @@ -7292,6 +9013,12 @@ "sC": 1, "tS": 0 }, + "\/_site\/keybase.txt": { + "ft": 8192, + "oA": 2, + "oAP": "\/_site\/keybase.txt", + "oF": 0 + }, "\/_site\/page\/10\/index.html": { "ft": 8192, "oA": 2, @@ -9346,6 +11073,22 @@ "oF": 0, "opt": 0 }, + "\/assets\/images\/2017\/compiling-sb.png": { + "ft": 32768, + "iS": 3970, + "oA": 0, + "oAP": "\/assets\/images\/2017\/compiling-sb.png", + "oF": 0, + "opt": 0 + }, + "\/assets\/images\/2017\/font-style.png": { + "ft": 32768, + "iS": 59698, + "oA": 0, + "oAP": "\/assets\/images\/2017\/font-style.png", + "oF": 0, + "opt": 0 + }, "\/assets\/images\/2017\/mail-me-1.mp4": { "ft": 8192, "oA": 2, @@ -9370,6 +11113,22 @@ "oAP": "\/assets\/images\/2017\/mail-me-4.mp4", "oF": 0 }, + "\/assets\/images\/2017\/runtime-attribute.png": { + "ft": 32768, + "iS": 25018, + "oA": 0, + "oAP": "\/assets\/images\/2017\/runtime-attribute.png", + "oF": 0, + "opt": 0 + }, + "\/assets\/images\/2017\/setting-localized-ib.png": { + "ft": 32768, + "iS": 11944, + "oA": 0, + "oAP": "\/assets\/images\/2017\/setting-localized-ib.png", + "oF": 0, + "opt": 0 + }, "\/assets\/images\/avatar.jpg": { "ft": 16384, "iS": 12307, @@ -9386,6 +11145,22 @@ "oF": 0, "opt": 0 }, + "\/assets\/images\/background-cover981.jpg": { + "ft": 16384, + "iS": 118068, + "oA": 0, + "oAP": "\/assets\/images\/background-cover981.jpg", + "oF": 0, + "opt": 0 + }, + "\/assets\/images\/background-cover982.jpg": { + "ft": 16384, + "iS": 71456, + "oA": 0, + "oAP": "\/assets\/images\/background-cover982.jpg", + "oF": 0, + "opt": 0 + }, "\/assets\/images\/background-cover983.jpg": { "ft": 16384, "iS": 187530, @@ -9971,15 +11746,6 @@ "oAP": "\/index.html", "oF": 0 }, - "\/js\/highlight.pack.js": { - "ft": 64, - "mi": 1, - "oA": 0, - "oAP": "\/js\/highlight.pack-min.js", - "oF": 0, - "sC": 1, - "tS": 0 - }, "\/js\/main.js": { "ft": 64, "mi": 1, @@ -9988,6 +11754,12 @@ "oF": 0, "sC": 1, "tS": 0 + }, + "\/keybase.txt": { + "ft": 8192, + "oA": 2, + "oAP": "\/keybase.txt", + "oF": 0 } }, "hooks": [