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,为何还能抽出时间关注并学习新技术,还写出一本书,您是如何平衡技术学习和管理的?
周楷雯:白天工作,晚上写书,日拱一卒嘛,那本书写了一年之久,也是慢慢积累出来的,其实很多事情都是这样,只要开始做了,不在乎每天做多少,坚持下来的意义比尽早做完更大。