是时候该学 Swift 了

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
查看查看573 回复回复9 收藏收藏 分享淘帖 转播转播 分享分享 微信
查看: 573|回复: 9
收起左侧

是时候该学 Swift 了

[复制链接]
SwiftRobot 发表于 2016-10-10 19:11:22 | 显示全部楼层 |阅读模式
快来登录
获取优质的苹果资讯内容
收藏热门的iOS等技术干货
拷贝下载Swift Demo源代码
订阅梳理好了的知识点专辑

我绝对是一个闲不下来,且喜欢自虐的人。早在一两个星期前,Yui 同学一直很纠结于她正在使用的“Shadowrocket”不好用。主要体现在程序在开启的状态下,很多国内的网站访问不正常,而相比之下“Surge”的表现则要良好的多得多,然而 50 刀(刚刚降价)的价钱,则不是人人都愿意买单的。后来发现有个叫“Potatso”的 App 有着类似的功能,而且在 GitHub 上开放源码

有 Apple 开发者账号的我和 Jason 很跃跃欲试地尝试了一下编译该工程,结果无疾而终。一堆一堆的依赖错误和无法解决的编译错误,纵然就算我们拿到了很多人梦寐以求的 Network Extensions Entitlement 也是无功而返。而这个“土豆丝”正是用 Swift 来编写的,由于我的才疏学浅,从 Swift 发布至今,一直尚未染指 Swift。但是因为这个倒霉的 App 编译不过,反而激起了我极大地学习兴趣。

仔细研究过后发现,编译不过一方面是作者的 Podfile 写得不好(各种依赖关系没有很严格限制,出现了 2.0 -> 3.0 这种大版本的跨度),另一方面是我刚好赶在了苹果发布 Xcode 8 和 Swift 3 的时候。嗯,没错,新版本不兼容旧版本的语法哦,是不是很开心?反正我是炒(ping)鸡(guo)开(qu)心(si)的啦,欢喜之情溢于言表。

是时候该学 Swift 了

是时候该学 Swift 了 - 敏捷大拇指 - 是时候该学 Swift 了


但是伟大的苹果总得照顾下这么多的开发者吧?当然有照顾了,苹果很贴心地提供了语法转换工具。好,那我们就看看这个强大的转换工具吧!转换之后,好开心,编译错误从几百变成了 999+,我的内心OS:!#(&!@#&!(@*$&

最后的最后,无论是 Jason 还是我,都没有能成功的把这个程序编译出来,更不要说解决签名问题了。但是,这确引发了我的兴趣,到处了解一下 Swift 现在的情况,这一看不要紧,厉害了。

不是我不知道,这世界变化快啊。首先是 IBM 在 2015 年底出了个 IBM Swift Sandbox,这货可以直接在线体验 Swift 编程、还可以跟同事分享代码,具体介绍早已在敏捷大拇指上有网友报导了:《IBM推出Swift Sandbox编辑器》。我就想说,IBM 的人都这么无聊么?每次出什么新东西,他们都可以跟进的这么快吗?感兴趣的同学可以去体验下,跟 Xcode 里面跑 Swift Playground 的感觉类似。

然后上半年又有消息传出说 Google 可能用 Swift 作为 Android 第一语言英文)。而 Facebook 和 Uber 也在考虑把 Swift 作为中心运营使用的语言。我觉得 Google 这也是被 Oracle 给欺负的吧。不了解的同学可以自行搜索一下 Java 语言的前世今生以及 Google 与 Oracle 之间因为 Java 而产生的恩怨情仇。

接下来我又在敏捷大拇指上发现了用 Swift 构建的服务端框架 Perfect,详见《Perfect:用Swift来开发服务器端应用/服务》。好吧,连名字都这么大(xiao)气(zhang)!我就好奇,这个域名得多少钱呢?一个开源的软件,能买得起这么好的域名,背后必然有「黑手」啊。感情这是要跟 Node.js、Ruby on Rails 和 PHP 大打出手的节奏啊!什么时候出个浏览器前端专用,iOS 工程师可以改变世界了啊!

然后,连 C# 背后的大佬 Microsoft 都按耐不住了,有文章说为了吸引更多的 iOS 开发者来开发 Windows 10 应用,微软已经在努力开发 Swift 编译器了!太可怕了,这简直就是要逆天的节奏啊。

虽然大家都这么 high,但是我实在不觉的一个商业公司推动的一个像玩具一样的语言,从推出仅仅 2 年左右的时间,就给这么多人洗了脑