Redian新闻
>
苹果宣布使用 Swift 全面重写 Foundation 框架

苹果宣布使用 Swift 全面重写 Foundation 框架

公众号新闻

推荐关注↓

转自:infoq

作者 | Sergio De Simone,译者 | 明知山

Swift 团队已经开始 Foundation 框架的一个新的开源实现。新的实现完全采用 Swift 编写,旨在通过消除 Objective-C 和 Swift 之间的转换成本来提升性能,并对其进行模块化和清理。
因为采用了原生的 Swift 实现,Foundation 框架不再需要在 C 和 Swift 之间进行转换,从而获得更高的性能。

正如苹果工程师 Tony Parker 在 Swift 论坛上所解释的那样,性能方面带来的好处是非常显著的:

使用 Swift 重新实现的日历应用的速度是 C 的 1.5 到 18 倍(在创建、日期计算等各种测试基准中调用 Swift)。

Foundation 框架是大多数 macOS 和 iOS 应用程序的基石,提供了大量的抽象,包括 NSObject、NSString、NSArray 和 NSDictionary 等等。

Foundation 最初是用 Objective-C 编写的,很大程度上利用了它的动态特性,由于 Swift 与 Objective-C 运行时的互操作性,Foundation 目前可以用于运行苹果操作系统上的 Swift 应用程序。不过,对于其他支持 Swift 但只有原始 GNUstep Objective-C 运行时的平台(如 Linux)来说就不是这样了。为了规避这一限制,苹果在开源 Swift 时推出了 swift-corelibs-foundation,一个 Core Foundation 的 Swift 包装器,一个位于 Foundation 核心的底层 C API,并提供了映射到 Foundation 的“桥接”抽象,包括 CFString、CFDictionary 等。

如前所述,使用 Swift 重写将是一个重构 Foundation 框架的机会。目前,有五个不同的包进行了重新设计,包括 FoundationEssentials、FoundationInternationalization、FoundationNetworking、FoundationXML 和 FoundationObjCCompatibility。开发者可以只引入特定应用程序实际需要的依赖项。例如,一个从头开始开发应用程序并且想要切断与 Darwin Foundation 层所有联系的开发者,可以完全跳过 Obj-C 兼容层。

在做出重写 Foundation 决定的同时,苹果正在调整 C、Objective-C 和 Swift 层之间的顺序,并让 Swift 层成为 Foundation 的基础。这将有机会删除一些目前可以直接由 Swift 语言和标准库提供的特性,如 NSCoding 和 NSKeyedArchiver,取而代之的是 Codable,或者 Lock、OperationQueue,以及其他被 Swift 结构化并发取代的并发原语。不过,这些特性将由 Darwin 平台上的一个单独包提供,以确保与现有代码兼容。

这一声明在 Swift 论坛上引发了许多评论,其中大多数都暗示重新考虑现有的几个 API 的便利性,确保 Swift 类型(如 Codable)或结构化并发足够强大,以便在核心基础层完全取代 Obj-C 类型。

可以预见的是,Foundation 重写是一项中期的努力,目前还没有宣布具体的时间表,苹果正在邀请 Swift 社区加入讨论,一起定义它的未来。

原文链接:

https://www.infoq.com/news/2022/12/apple-swift-foundation-rewrite/

- EOF -




推荐阅读  点击标题可跳转

0、极客专属:几十款程序员秒懂的卫衣

1、支付宝大整改,花呗、借呗退出江湖

2、从前,有两个卖水果的公司……

3、今年这情况,咱还是留个心眼吧!


关注「程序员的那些事」加星标,不错过圈内事

点赞和在看就是最大的支持❤️

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
[评测]NVIDIA GeForce RTX 4080 Founders Edition 评测中国全面重开,澳旅游业阴霾难散!入境新规恐成最大阻碍,华女:缺乏科学依据跨境游全面重启!新马签证环比增长100%,有游客已下单2024年海外酒店15家英国签证中心全面重新开放BB鸭 | 特斯拉最高降价3.7万元;​iPhone 15顶配或升级钛金属外壳;苹果宣布App Store将投放更多广告Methuselah Foundation:布局20年的长寿科技投资基金爆了!瑞信正式官宣全面重组那年火车上的故事(下集)(十三)Out with the old, in with the new. JuniorCoach is here for you42%英国房东计划今年扩大投资!英国连锁超市Poundland将开设50家新店!高德曼促布碌仑大桥头翻新 社区人士:柏路未全面重开、影响有限在美国266.奇怪的进出中国全面重开,大批华人来澳过年!悉尼春节庆祝活动规模或创历史之最太火爆!Taylor Swift 南加巡演 Eras Tour增加三场!11/18开票拼手速[电脑] 众里寻她千百度 Fractal Ridge: 3090 Ti Founder Edition 最佳归宿a16z和First Round Capital下注,Rewind完成1000万美元种子轮融资丨创业邦Ousted Luckin Founder Charts Comeback With New Coffee Business中国全面重开,大批华人来澳过年!春节庆祝活动规模或创历史之最大战世界2023苹果宣布使用Swift全面重写Foundation框架往事----值得回味(圖)苹果宣布AppStore内购全新定价机制,韩国开发者不再强缴增值税中国全面重开,每天6趟航班飞抵澳洲!专家:航班数量短期内难以恢复Logitech Z506 Surround Sound Home Theater Speaker System速揽2500星,Andrej Karpathy重写了一份minGPT库【AHA2022速递】FOURIER和FOURIER-OLE研究二次分析:低一点好一点——LDL-C水平越低,远期心血管结局越好FastTrack Universität 2023莱比锡大学公立语言项目招生简章硅谷全面重启实习生+全职招聘! 从项目助理到数据, 开启留美新篇章!价值百万的一张纸苹果宣布这些服务涨价,还正式允许iOS程序发行NFT!Redpanda:用C++重写的Kafka到底有多牛逼。。。How Hangzhou Freed West Lake and Upended Chinese Tourism苹果将对 Foundation 框架用 Swift 重写并开源,网友:iOS/macOS 应用程序用吗?寻找联合创始人 Generative AI Co-Founder Matching | 活动报名Yuan Foundation 2022年度颁奖典礼小记
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。