当前位置: 首页 > 科技观察

Swift3APIDesignGuidelines

时间:2023-03-12 02:05:37 科技观察

一门编程语言标准库的设计理念,往往对这门编程语言的整体感觉有很大的影响。一个好的标准库就像是语言本身的延伸,保证标准库内部的一致性可以有效提升整体的开发体验。为了制作一个好的Swift标准库,Swift3的主要目标之一是定义一组API设计指南并一致地应用这些指南。SwiftAPI设计指南包含几个主要目标,所有这些目标都旨在统一Swift中的开发风格。这些主要目标是:SwiftAPI设计指南:我们目前正在积极开发的实际API设计指南。SwiftAPI设计指南的初稿现已可供查看!Swift标准库:正在审查和更新整个Swift标准库,以遵循SwiftAPI设计指南。实际工作在Swift存储库的swift-3-api-guidelines分支中进行。导入Objective-CAPI:将Objective-CAPI转换为Swift正在进行中,采用多种启发式方法以更好地将Objective-CAPI与SwiftAPI设计指南相匹配。SwiftTranslationGuidelinesforObjective-CAPIs这个提案描述了哪些翻译是可用的。当然,由于这个过程采用了一系列启发式逻辑方法,我们将跟踪对Cocoa和CoocaTouch的影响,包括使用这些框架的Swift代码的工作。Swift3API设计指南审查存储库提供了一种查看此自动翻译过程的方法,以便查看对使用Cocoa和CocoaTouch的Swift代码的影响。一些不会转换为Swift的特殊Objective-CAPI将被标记(例如使用NS_SWIFT_NAME宏)以提高生成的Swift代码的质量。虽然这一变化主要影响Apple平台,但它也会对提供与Objective-C框架相同API的跨平台Swift核心库(例如Swift中使用的Objective-C运行时)产生一些直接影响。Swift设计指南检查:现有的Swift代码遵循不同的编码风格,甚至包括Cocoa的Objective-C代码指南。通过用于导入Objective-CAPI的启发式逻辑,Swift编译器可以(可以)检查常见的API设计模式,发现不遵循SwiftAPI设计指南的API,并提供建议。Swift2到Swift3的迁移:Swift标准库和Objective-CAPI的导入将是Swift的重大更新,对源代码进行了全新的更正。因此,我们还需要创建一个能够将Swift2代码迁移到Swift3API的迁移器。所有这些重大努力都在积极发展中。如果您对上述工作感兴趣,可以查看SwiftAPI设计指南、Swift标准库更改、Objective-CAPI导入器更改提案和当前审查存储库,然后加入swift-evolution邮件列表上的讨论组。