苹果公司发布了Swift 2.2 ,这将是苹果公司移动端和服务端最新版本的编程语言。该版本是第一次官方发布,它是由包括212 位非苹果贡献者在内的开源开发者完成的。在 Swift 开源的最初几天里,发现存在一些拼写错误,Chris Lattner 宣布:
该版本还包括依据 Swift 发展路线图实现的一些改进,包括非苹果贡献者提供的一些建议:
- SE-0001:允许(大多数)关键字用作参数名
- SE-0015:Tuple 对比操作符
- SE-0014:约束 AnySequence.init
- SE-0011:关联类型声明时用 associatedtype 关键字代替原来的 typealias
- SE-0021:函数签名包括参数名
- SE-0022:引进 Objective-C selector 方法
- SE-0020:Swift 语言版本构建配置
Swift 项目已经扩展为允许在过去有优秀表现的人直接提交到知识库中。
Swift 2.2 包含在苹果 Xcode7.3 中发布,这一消息已经被公布。官方发布意味着 iOS 应用程序现在可以使用 Swift 2.2 提交到 AppStore。对于 Linux 版本,官方程序包可用于Ubuntu 14.04 和15.10。但是,Linux 端口尚未完全实现;在标准的swift 核心库(swift core libraries)中有一些组件的缺失,这些组件被安排在今年晚些时候在Swift 3 中实现。 IBM 的 Swift sandbox 目前运行在 Swift 3.0 开发版本中,也可能会在不久的将来增加对 Swift 2.2 的支持。
Swift 包管理器(Swift Package Manager)持续的开发意味着它也不是一个官方版本;它也将计划在 Swift3.0 版本中发布。
对于版本升级,苹果公司提供了 Swift 编程语言 ePub 文档和 HTML 版。
Swift 2.2 版本变化
Swift 2.2 中的一些更新会影响以前版本中编写的源代码。包括:
- C 风格 for 循环的去除以及递增 ++ 和递减–运算符的去除。
- 函数不能直接通过参数名进行定义,而是返回一个函数接受一个运算符。
- Objective-C selectors 可以用#selector(doSomething),而不是 Selector(“doSomething”),并且是在编译时进行检查。
- 大所数的关键字可以被用作参数名。
- 关联类型可以与协议相关,允许使用协议时在类中采用泛型。
该语言书中还包括自动引用计数(Automatic Reference Counting )的描述,可能并没有完全明确。
Swift 2.2 版本可以在Swift 网站下载。
查看英文原文: Apple Releases Swift 2.2 for OSX and Linux
感谢张龙对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ , @丁晓昀),微信(微信号: InfoQChina )关注我们。
活动推荐:
2023年9月3-5日,「QCon全球软件开发大会·北京站」 将在北京•富力万丽酒店举办。此次大会以「启航·AIGC软件工程变革」为主题,策划了大前端融合提效、大模型应用落地、面向 AI 的存储、AIGC 浪潮下的研发效能提升、LLMOps、异构算力、微服务架构治理、业务安全技术、构建未来软件的编程语言、FinOps 等近30个精彩专题。咨询购票可联系票务经理 18514549229(微信同手机号)。
评论