Foundation 提供了许多应用程序中有用的基础功能层,包括数字、数据、集合和日期的基本类型,以及任务管理、文件系统访问等功能。
它的设计目标包括:
这个名为 swift-foundation 的项目为所有平台提供了关键 Foundation API 的共享实现。
在 macOS、iOS 和其他 Apple 平台上,应用程序应使用操作系统自带的 Foundation。Foundation 框架包含了这些代码。
在所有其他 Swift 平台上,swift-foundation 作为工具链的一部分提供。只需 import FoundationEssentials 或 import FoundationInternationalization 即可使用其 API。它也被重新导出到 swift-corelibs-foundation 的 Foundation、FoundationXML 和 FoundationNetworking 模块中。
[!注意] 构建 swift-foundation 需要开发中的 Swift 6.0 工具链。你可以从 Swift 网站 下载 Swift 6.0 每夜构建工具链。
在构建 Foundation 之前,首先确保已安装 Swift 工具链。接下来,查看 Foundation 构建过程 指南中的"入门"部分,了解构建和测试的详细步骤。
Foundation 以不同的配置构建,由几个项目组成。
graph TD; FF[Foundation.framework]-->SF subgraph GitHub SCLF[swift-corelibs-foundation]-->SF SF[swift-foundation]-->FICU[swift-foundation-icu] SF-->SC[swift-collections] end
一个随 Swift 工具链一起发布的共享库,用 Swift 编写。它提供了许多关键类型的核心实现,包括 URL、Data、JSONDecoder、Locale、Calendar 等,这些都在 FoundationEssentials 和 FoundationInternationalization 模块中。其源代码在所有平台上共享。
swift-foundation 依赖于有限的包,主要是 swift-collections 和 swift-syntax。
一个随 Swift 工具链一起发布的共享库。它为需要 Foundation 中 Swift 之前 API 的客户端提供兼容性 API。它用 Swift 和 C 编写。它提供了 NSObject、基于类的数据结构、NSFormatter 和 NSKeyedArchiver 等类型。它重新导出了 FoundationEssentials 和 FoundationInternationalization 模块,允许在引入 swift-foundation 项目之前编写的源代码保持兼容性。由于这些实现与用 Objective-C 编写的实现不同,兼容性只能尽力而为。
swift-corelibs-foundation 仅为非 Darwin 平台构建。它安装了 Foundation 伞形模块、FoundationXML 和 FoundationNetworking。
Foundation 的私有库,封装了 ICU。使用标准版本的 ICU 可以提供国际化 API 行为的稳定性,并与 Darwin 平台上的最新版本保持一致。它仅由 FoundationInternationalization 模块导入。不需要依赖 ICU 提供的数据的 API 的客户端可以改为导入 FoundationEssentials。
一个内置于 macOS、iOS 和所有其他 Darwin 平台的框架。它用 C、Objective-C 和 Swift 的组合编写。Foundation 框架将 swift-foundation 的源代码编译到其二进制文件中,并提供一个包含所有功能的 Foundation 模块。
Foundation 的目标是创建最佳的基本数据类型和国际化功能,并使其对所有 Swift 开发者可用。它利用语言中新增的特性,使库和应用程序作者能够自信地构建更高级的 API。
该项目是整个 Swift 项目 的一部分。它有一个工作组负责 (a) 监督社区 API 提案,以及 (b) 与 Swift 项目和 Apple 平台的发展密切协调。工作组定期开会审查提案,关注 Swift 生态系统中的新兴趋势,并讨论库应如何发展。
Foundation 欢迎来自社区的贡献,包括错误修复、测试、文档和对新平台的移植。
我们使用 Swift 论坛进行讨论,使用 GitHub Issues 跟踪错误、功能请求和其他工作。
请查看 CONTRIBUTING 文档以获取更多信息,包括接受社区对 Foundation 新 API 贡献的流程。


全球首个AI音乐社区
音述AI是全球首个AI音乐社区,致力让每个人都能用音乐表达自我。音述AI提供零门槛AI创作工具,独创GETI法则帮助用户精准定义音乐风格,AI润色功能支持自动优化作品质感。音述AI支持交流讨论、二次创作与价值变现。针对中文用户的语言习惯与文化背景进行专门优化,支持国风融合、C-pop等本土音乐标签,让技术更好地承载人文表达。


一站式搞定所有学习需求
不再被海量信息淹没,开始真正理解知识。Lynote 可摘要 YouTube 视频、PDF、文章等内容。即时创建笔记,检测 AI 内容并下载资料,将您的学习效率提升 10 倍。


为AI短剧协作而生
专为AI短剧协作而生的AniShort正式发布,深度重构AI短剧全流程生产模式,整合创意策划、制作执行、实时协作、在线审片、资产复用等全链路功能,独创无限画布、双轨并行工业化工作流与Ani智能体助手,集成多款主流AI大模型,破解素材零散、版本混乱、沟通低效等行业痛点,助力3人团队效率提升800%,打造标准化、可追溯的AI短剧量产体系,是AI短剧团队协同创作、提升制作效率的核心工具。


能听懂你表达的视频模型
Seedance two是基于seedance2.0的中国大模型,支持图像、视频、音频、文本四种模态输入,表达方式更丰富,生成也更可控。


国内直接访问,限时3折
输入简单文字,生成想要的图片,纳米香蕉中文站基于 Google 模型的 AI 图片生成网站,支持文字生图、图生图。官网价格限时3折活动


职场AI,就用扣子
AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!


多风格AI绘画神器
堆友平台由阿里巴巴设计团队创建,作为一款AI驱动的设计工具,专为设计师提供一站式增长服务。功能覆盖海量3D素材、AI绘画、实时渲染以及专业抠图,显著 提升设计品质和效率。平台不仅提供工具,还是一个促进创意交流和个人发展的空间,界面友好,适合所有级别的设计师和创意工作者。


零代码AI应用开发平台
零代码AI应用开发平台,用户只需一句话简单描述需求,AI能自动生成小程序、APP或H5网页应用,无需编写代码。


免费创建高清无水印Sora视频
Vora是一个免费创建高清无水印Sora视频的AI工具


最适合小白的AI自动化工作流平台
无需编码,轻松生成可复用、可变现的AI自动化工作流
最新AI工具、AI资讯
独家AI资源、AI项目落地

微信扫一扫关注公众号