|
|
51CTO旗下网站
|
|
移动端

Swift 5将帮助iOS 12.2应用瘦身 启动加快

十年对任何人来说都是意义非凡的,对苹果开发者生态系统来说也一样。要说苹果开发者生态系统最重要的变化,当属 Swift 编程语言的发展。

作者:佚名来源:威锋网|2019-01-30 11:21

 

十年对任何人来说都是意义非凡的,对苹果开发者生态系统来说也一样。要说苹果开发者生态系统最重要的变化,当属 Swift 编程语言的发展。今年的 WWDC 上我们可以期待最新的进度,其中有一项重大改变,那就是第三方 UIKit 应用登陆 Mac 平台。

Swift 语言最早在 2014  WWDC 上亮相,在苹果工程师和开源社区的共同努力下,它不断更新,现在已经达到了 4.2.1 版本。

自第一版以来,Swift 一直存在一个问题,那就是它的应用程序二进制接口(ABI)并不稳定。简单的说,就是苹果不能在其操作系统中包含 Swift 语言支持,因为使用 Swift 3 编写的应用程序将不能与 Swift 4 的语言支持二进制文件一起使用。

为了解决这个问题,苹果系统的 App 需要自己的安装包中内置 Swift 语言库,这就增加了 App 的容量。

现在,Swift 5 要出来解决问题了。

Swift 5 兼容二进制接口,它已经包含在 iOS 12.2、tvOS 12.2、watchOS 5.2 和 macOS 10.14.4 这四个系统中,这几大系统目前正在测试阶段,很快会带来首个公众测试版。

使用 Swift 5 的所有 App 将共享 Swift 动态库,就可以缩小容量,举个例子,Apollo for Reddit 目前的容量为 35.7 MB,其中包含 7.5 MB Swift 库。当升级至 iOS 12.2 后,容量会缩小 20%,也就是不到 30 MB。PCalc 的容量为 86.8 MB,其中也包含 7.5 MB Swift 库,升级后可以缩小 9%,也就是不到 80 MB。Apple Watch 的 Chirp 大小为 28.8 MB,包含 11.6 MB 的 Swift 库,更新到 Swift 5 后大小将减少 30% 以上。

Swift 5 的另一个好处是让 App 启动速度变快,因为每个动态库都会增加其启动时间,而新系统的动态库会缓存在内存中,并在所有应用程序之间共享。

所以,等到几大系统的新版本上线,最终与 Swift 语言相关的限制将在一夜之间消除,这是令人欣喜的成果。

 

【编辑推荐】

  1. 阿里开发强制要求的11条索引创建规范,提高性能
  2. 2019年Web应用开发的6大趋势转变!
  3. AWS 开源 SageMaker,帮助开发人员优化机器学习模型
  4. 如何从传统软件开发顺利过渡到互联网技术开发:硬技能
  5. 开发者技能报告:开发者在 2019 年想要学习的编程语言及框架
【责任编辑:张燕妮 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢
24H热文
一周话题
本月最赞

读 书 +更多

Java for Flash动态网站开发手札

本书深入浅出地说明了如何利用Java、Flash及XML进行Flash富媒体应用程序的开发。 本书知识丰富,内容结构合理,包括:Flash影片应用程序与...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊