首页 科技正文

Apple发布了具有ABI稳定性 库演进等的Swift 5

科技 2019-06-16 13:19:42

新的高级电视产品(Apple TV +),新闻和杂志订阅服务(Apple News +)以及信用卡(Apple Card)并不是Apple今天推出的唯一产品。在Swift.org的博客文章中,Apple的语言和运行时团队经理Ted Kremenek宣布推出最新版本的Apple编译编程语言,适用于iOS,macOS,watchOS,tvOS,Linux,z / OS和其他平台现在已经正式上市,在Xcode 10.2的2月测试版和Swift Playgrounds 3.0的首次亮相后获得了支持。

Swift 5与Swift 4,Swift 4,1和Swift 4.2兼容,Xcode 10.2有一个代码迁移器,可以自动处理一些必要的源代码更改。可以下载Ubuntu 18.04,Ubuntu 16.04和Ubuntu 14.04的官方二进制文件以及工具链,Apple已经在Swift.org上发布了Swift编程语言指南的更新版本。

对于初学者来说,Swift编程语言旨在与Apple的Cocoa和Cocoa Touch框架以及为iPhone,Apple TV和iPad等Apple产品编写的现有Objective-C代码配合使用。它使用LLVM编译器框架构建,并于2014年与Xcode 6一起推出,它使用Objective-C运行时库,允许它在一个程序中与C,Objective-C和C ++一起运行。

那么Swift 5带来了什么呢?ABI稳定性可能是亮点 - 它可以实现使用不同版本的Swift编译的应用程序和库之间的二进制兼容性,即使使用与旧语言的兼容模式也是如此。(例如,使用Swift 5构建的应用程序将在安装了Swift 5标准库的系统上运行,以及具有假设的Swift 6的应用程序。)此外,Swift运行时和标准库现在随操作系统一起移动,从而避免了需要部署到即将发布的OS版本的应用程序,以在应用程序包中嵌入标准Swift库和覆盖库。

截至目前,Swift已宣布ABI在macOS,iOS,watchOS和tvOS上保持稳定。

一个相关的新功能是模块稳定性,它使客户端可以使用库而不必担心构建它们的编译器和库演变,它允许开发人员在不必重新编译客户端的情况下发布新版本的库。由于应用程序细化,运行iOS 12.2,watchOS 5.2和tvOS 12.2的设备上的Swift应用程序不再包含标准库和Swift SDK叠加层的动态链接库,从而缩小了打包尺寸并缩短了启动时间。

另外,与Swift 5的标准库相结合,改进了对字符串文字(源字符集中表示字符串值的字符序列)和结果和SIMD矢量类型的原始文本的支持,以及对字符串插值的增强(评估a的过程)包含一个或多个占位符的字符串文字)以及字典和集合的性能改进。Swift 5还将ASCII和Unicode丰富的字符串的首选编码从UTF-16切换到UTF-8,Apple称这可以使内存使用率降低50%。

那不是全部。Swift 5默认为调试和发布版本强制执行对内存的独占访问(在Swift 4中,运行时检查仅在调试版本中启用),并支持动态可调用类型,Apple称这应该有助于提高与动态语言(如Python,JavaScript)的互操作性和Ruby。最后,Swift Package Manager包括依赖镜像和特定于目标的构建设置,以及自定义部署目标和生成代码覆盖率数据的能力。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

头条推荐

评测三星A80和iPhoneXR以及Instagram将不再提供WP系统程序

评测三星A80和iPhoneXR以及Instagram将不再提供WP系统程序

评测65W SuperVOOC 2.0与One Vision新机的价值在哪

评测65W SuperVOOC 2.0与One Vision新机的价值在哪

图文推荐

评测插件完善应用以及vivo X20Plus屏幕指纹版的质感怎样

评测插件完善应用以及vivo X20Plus屏幕指纹版的质感怎样

评测荣耀畅玩7C和三星S10的性能怎么样

评测荣耀畅玩7C和三星S10的性能怎么样

评测努比亚V18与三星S10相机相比谁的拍照技术好

评测努比亚V18与三星S10相机相比谁的拍照技术好