写点什么

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

  • 2015-10-29
  • 本文字数:1425 字

    阅读完需:约 5 分钟

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,为何还能抽出时间关注并学习新技术,还写出一本书,您是如何平衡技术学习和管理的?

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

2015-10-29 20:416291
用户头像

发布了 164 篇内容, 共 117.2 次阅读, 收获喜欢 392 次。

关注

评论

发布
暂无评论
发现更多内容

Forrester发布中国数据治理生态报告,亚信科技AntDB数据库等四款数智产品入选

亚信AntDB数据库

AntDB AntDB数据库

AntDB数据库与鼎甲科技完成产品互认证,共筑数据安全防线

亚信AntDB数据库

AntDB AntDB数据库

javascript 高级编程 之 Array 用法总结

hellocoder2029

Vue

一文读懂“云游戏”

Finovy Cloud

人工智能 云渲染 云游戏

AX200NGW//2×2.4GHz 2x5GHz MT7915 MT7975 //AR9582 2x 2 900M 802.11an//network card//wallys

wallys-wifi6

MT7915 AX200NGW AR9223

【redis】Redis cluster是AP架构还是CP架构?

非晓为骁

redis 分布式架构 redis cluster 分布式理论

边缘计算在视频直播场景的应用与实践

火山引擎边缘云

边缘计算 视频直播 火山引擎边缘计算

数据中台打造企业数据能力组件中心

元年技术洞察

数据中台 SaaS服务应用 PaaS平台化能力

SaaS时代,您的企业与团队需要知识管理工具

Baklib

AntDB入选《爱分析:2022数据智能厂商全景报告》

亚信AntDB数据库

AntDB AntDB数据库

千亿流量并发治理!Alibaba实战Sentinel笔记,为微服务保驾护航

Geek_0c76c3

Java 数据库 开源 程序员 架构

区块链商城dapp系统开发,代币模式定制

开发微hkkf5566

架构---作业1

李某人

架构实战营

双非二本程序员,年近30,5年间在大厂中横跳,工资翻了三番

程序知音

Java java面试 后端技术 秋招 Java面试八股文

仅靠一文便火爆全网!开源阿里绝密800页JDK源码笔记:霸榜GitHub

Geek_0c76c3

Java 数据库 程序员 架构 开发

存储资源盘活系统,“盘活”物联网架构难题(上)

天翼云开发者社区

led显示屏的合理亮度很有必要

Dylan

LED显示屏 全彩LED显示屏 led显示屏厂家

架构三原则学习心得

Jack

架构 #架构训练营

健康信息化不断建设——2022年8月互联网医疗月度观察

易观分析

医疗

企业知识管理怎样做?一些解决方案分享!

Baklib

计算机网络——媒体接入控制——静态划分信道

StackOverflow

编程 计算机网络 9月月更

分布式系统中自适应统计信息收集策略

KaiwuDB

英特尔发力“系统级代工”,为芯片制造带来全新可能

科技之家

知识经济时代的基石:知识协同

Baklib

MySQL查询数据库表记录数

源字节1号

计算机网络——媒体接入控制的基本概念

StackOverflow

编程 计算机网络 9月月更

易观分析对《上海市促进人工智能产业发展条例》的解读

易观分析

人工智能 上海

元年洞察|数字化转型进程中的创新技术菜谱

元年技术洞察

数据中台 数字化转型 趋势研究

计算机网络——点对点协议PPP

StackOverflow

编程 计算机网络 9月月更

Netty高性能之Reactor模型

C++后台开发

后台开发 reactor 多线程 网络io模型 C++开发

数据中台与数据平台有什么区别?

雨果

数据中台 数据平台

专访趣拼周楷雯:文艺程序员眼中的Swift_移动_徐川_InfoQ精选文章