专访趣拼周楷雯:文艺程序员眼中的 Swift

  • 徐川

2015 年 10 月 29 日

话题:移动iOS语言 & 开发架构

2016 年 1 月 10 日,第一次由国内社区主办的 iOS 开发盛会Swift 开发者大会将在北京举行,本次大会旨在推动 Swift 语言在国内的发展,不但邀请了国外资深专家,社区的传奇人物,还邀请了拥有 Swift 实践经验的国内专家,为你在实际项目中使用 Swift 扫清障碍。

其中一位讲师周楷雯(@周楷雯 Kevin),来自广州,拥有多年 iOS 开发经验,在 Github 上拥有超过 5000 star 的开源项目PNChart,但同时他还自学设计,钢琴,撰写并出版了横跨编程、设计、营销的电子书《Producter》,还为女友录制了给女朋友的 iOS 开发视频教程,他还创立了自己的公司,电子书和视频课程是他在创业工作之余写出来的。InfoQ 记者对他进行了采访,了解这位文艺程序员是如何看待 Swift 的。

InfoQ:您学习 Swift 花费了多长时间,和您了解的其它语言相比,它的语法是否足够“美”?

周楷雯:从 Swift 诞生开始我就在学习这门语言,一直以来我觉得写起来最优雅的是 Python,直到 Swift 诞生。如果不是因为目前的 Xcode 写起 Swift 来很慢,我最爱的语言就是 Swift 了。Swift 严谨、优雅、现代,写起来着实是一种享受,函数编程、协议编程都是很爽的地方。我也很期待这次大会关于开源部分的 Topic,只是不知道那时候起不起得来。

InfoQ:前阵子看到您在微博上招募 Swift 开发人员,请问你们团队已经在用 Swift 开发应用吗?

周楷雯:我们现在所有的 App 都是用 Swift 开发,而且也会坚定 Swift 的路线,毕竟团队里的人已经都忘记怎么写 Objective-C 了。

InfoQ:前段时间您完成了一本使用 Swift 进行 iOS 开发的电子书《Producter》,Swift 作为教学语言写起来流畅吗?是否遇到过坑?

周楷雯:Swift 作为教学语言没有了 Objective-C 的那些令人困惑的特性,上手其实容易得多,Producter 近期也使用 Swift 2.1 进行一次内容更新,Swift 确实让编程变得更加愉快了。

InfoQ:这次 Swift 大会您会分享性能优化方面的一些话题,Swift 调试起来和 Objective-C 相比如何?

周楷雯:就调试而言,Swift 制造的麻烦可能更多一些,毕竟是一门年轻的语言,但是 Xcode 7.1 后表现要好了很多,深感欣慰。因为底层都是用的 Objective-C 的 runtime,所以其实调试的差别不大。

InfoQ:Xcode 在编写和调试 Swift 上面有哪些坑?如果您能对负责 Xcode 的苹果工程师说句话,您会说什么?

周楷雯:和 Objective-C 时代相比,慢,Xcode 特别慢,浪费时间是最主要的坑。我说一句别人说的话吧:“Engineers in Apple never test their product. Everything is confirmed by QA team with hand!”

InfoQ:Swift 编写的应用压榨性能起来和传统 Objective-C 写的有什么不同吗?能否透露一下有什么奇技淫巧?

周楷雯:两者性能差异并不大,但是从写代码的角度来说的话,Swift 敏捷,快速,可以极大的提高生产力,奇技淫巧就谈不上啦,主要是语言层面上的一些用法,像万能的 enum,extension 等,写起来更安全,但是 Objective-C 更有想象力,掌控力是要超过 Swift 的,Objective-C 中的 runtime 的奇技淫巧才是近乎无所不能。两个比起来,Swift 是凌波微步, Objective-C 是如来神掌。

InfoQ:如今有越来越多的资深开发者走上了技术管理岗位,我比较好奇您是创业公司 CEO,为何还能抽出时间关注并学习新技术,还写出一本书,您是如何平衡技术学习和管理的?

周楷雯:白天工作,晚上写书,日拱一卒嘛,那本书写了一年之久,也是慢慢积累出来的,其实很多事情都是这样,只要开始做了,不在乎每天做多少,坚持下来的意义比尽早做完更大。

移动iOS语言 & 开发架构