澳门新葡亰信誉平台游戏Swift 5将帮助iOS 12.2应用瘦身 启动加快

by admin on 2020年3月5日

10年来,苹果开发者生态系统的最大变化是引入了 Swift 语言。在今年的 WWDC
上,我们将会看到另外一个巨大更新:在 Mac 上将支持导入第三方 UIKit 。

IT之家1月29日消息这十年来在苹果开发者生态系统最重大的变化就是引入了Swift编程语言,并且今年WWDC上可能会看到的下一个重大变化是在Mac上引入第三方UIKit应用程序。

Swift 5要来解决一个大问题。

Swift 在2014年 WWDC 上宣布的。目前版本为4.2.1。Swift
从第一个版本以来,对用户影响最大的是 ABI 不稳定。这意味着在不同版本的
Swift 之间的代码不能兼容。解决方法是,将其兼容代码包含在 App Store
的应用程序中,这会使安装包变得很大。

Swift,这种新语言是在WWDC
2014上宣布的。在苹果工程师和开源社区的贡献下,它进行了多次迭代更新,现在是4.2.1版本。

澳门新葡亰信誉平台游戏 1

在 Swift 5 中有很大可能解决 ABI 不稳定的问题。新版本支持 iOS12.2、 tvOS
12.2、watchOS 5.2 和 macOS 10.14.4
,所有的这些版本目前都处于开发人员测试版中。当新版本的苹果系统的新版本向公众开放下载时,发布到
App Store 上,使用 Swift 5 开发的应用程序安装包将变小。

自第一个版本以来一直影响用户的Swift一个重要方面是它的应用程序二进制接口不稳定。这在实践中意味着苹果不能在其操作系统中包含Swift语言支持,因为使用Swift
3编写的应用程序将不能与Swift
4的语言支持二进制文件一起使用。而其解决方案是包含Swift从App
Store下载的app
bundle中的语言库,但是这样增加了应用程序所需的带宽和存储空间。

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

澳门新葡亰信誉平台游戏 ,此外,另一个好处是,应用启动时间更快,之前是因为应用程序使用的每个动态库都时都会略微增加启动时间,但新版本中,操作系统把包含的库缓存在内存中,并给所有应用程序之间共享,从而使应用启动更快。

据外媒新闻,苹果已经开始使用最新的Swift
5,该语言变为二进制兼容。新版本包含在iOS 12.2,tvOS 12.2,watchOS
5.2和macOS
10.14.4中,所有这些版本目前都处于开发者测试阶段。这意味着,当新版本的苹果操作系统可供用户使用时,使用Swift
5编程语言发布到App
Store的应用程序对于运行新操作系统的用户来说将会小得多。

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

澳门新葡亰信誉平台游戏 2

另一个好处是更快的启动时间,因为应用程序使用的每个动态库都会稍微增加其启动时间,但操作系统附带的库将会缓存在内存中并在所有应用程序之间共享。

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

到底能够省多少空间呢?下面我们举个例子:

但具体减小了多少的存储空间呢?从App
Store下载一些应用程序,并检查了Swift库占用了多少空间,以下是一些示例:

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

Apollo for
Reddit的安装包大小为
35.7 MB,其中包括 7.5 MB 的 Swift 库,当更新到 IOS 12.2 的 Swift
5时,安装包大小减少 20% 以上,为 30 MB
以下;PCalc的安装包大小为
86.8 MB,包括 7.5 MB 的 Swift 库。当更新到 Swift 5 时,安装包大小将减少
9%,降至 80 MB 以下。

Apollo for Reddit的大小为35.7 MB,包括7.5 MB的Swift库。而在iOS
12.2中更新为Swift 5时,应用程序大小将减少20%以上,降至30
MB以下。PCalc的大小为86.8 MB,包括7.5 MB的Swift库。更新到Swift
5后,应用程序大小将减少9%,降至80 MB以下。

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

Chirp
的 Apple Watch 程序安装包大小为 28.8 MB,包括 11.6 MB 的 Swift
库。当更新到 Swift 5 时,安装包大小将减少 30% 以上,降至 20 MB 以下。

苹果 Watch的Chirp大小为28.8 MB,包含11.6 MB的Swift库。更新到Swift
5后,应用程序大小将减少30%以上,降至20
MB以下。这个应用程序与我们计算的应用程序相比节省了最多,因为它包含一个用Swift编写的苹果
Watch应用程序,其中包括用于watchOS的Swift库。

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

根据设备的不同,其大小和节省的空间也各不相同。

节省的存储空间因设备而异。上面使用了iPhone XS
Max上的应用程序大小作为参考,但考虑到安装了许多应用程序的设备,可以节省更多空间。

澳门新葡亰信誉平台游戏 3

当然,上面这些情况都是假定开发人员使用 Swift 5
开发应用程序,同时,为了方便开发人员便于对现有的应用程序进行维护和版本迁移,Swift
5 提供了与 Swift 4.2 代码兼容的方法。

当然,这建立在开发人员将采用Swift
5的假设上,但大多数使用Swift编写的应用程序都会得到积极维护,迁移也不会太困难。该语言的新版本还包括一个与为Swift
4.2编写的代码兼容的模式,这将使具有大量代码的开发人员迁移变得更加容易。

使用 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%
以上。

(文/开源中国)    

所有用户都必须利用这一点来更新到iOS 12.2,tvOS 12.2,watchOS 5.2和macOS
10.14.4,并等待开发人员更新他们的应用程序。目前,所有系统都已经开始面向开发人员。使用Swift
5构建并发布到TestFlight的应用程序已经为运行测试版的用户节省了空间。

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

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

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图