为什么很多大公司继续使用 Objective-C,不用 Swift

898 阅读2分钟
原文链接: mp.weixin.qq.com

这是我这周一的文章 《罗辑思维的「逻辑」问题 - 谈独立思考》 中提到的一个留给大家思考的问题。今天我想分享一下我的看法,不一定对,仅供参考。


我觉得这个问题最核心的原因就一点:历史包袱。


猿题库算是比较新兴的应用了,代码量级也是 10 万的级别。很多稍微有些年头的应用,代码行数超过百万行其实是挺常见的,上次和去哪儿网的一个朋友聊天,他说去哪儿的 iOS 端有超过百万行代码。这么大体量的代码,公司可能把业务都停下来,让你专门用 Swift 来重写代码么?绝对不可能的。


所以,可以肯定的是:国内 AppStore 上流行的,开发时间超过三年的应用,都有着极大的历史包袱。从公司商业角度,是不能接受整个 iOS 开发团队没有产品功能贡献,只做代码重构的。


上周和来自 uber 的道长聊了聊,即便是在美国 uber,他们也是抽非常小的一部分人力来做 Swift 重写的部分。而 Facebook,完全还是用 Objective-C 。所以你看,这一点上硅谷也一样。


当然,新的应用没有历史包袱,可以用 Swift 来写,比如国内的 Enjoy 就是这样的例子。


除开历史包袱之外,其实还有一些别的原因。我个人认为的第二个最大的原因就是:Swift 及其相关生产力环境并不完全成熟。包括语言,IDE,第三方库,包管理(Swift Package Manager)都还没有非常成熟。这就造成了更多人的观望。


如果还有第三个原因的话,就是我们公司尝试 OC 和 Swift 混编的经历并不轻松。所以,还是打算再等等。


如果你问我,Swift 是不是趋势?答案肯定是 YES。

如果你问我,什么时候用 Swift?我的答案是:再等等。


就酱。