开发者社区> 玄学酱> 正文

Swift 3.0 及展望:彻底的泛型、精简的语言

简介:
+关注继续查看

screenshot2015 年 12 月 3 日,Swift 正式开源。同时,官方也公布了 Swift 3 的最新消息,即 Swift 3 将会在 2016 年秋天发布。

API 设计指南与 Swift 中 Objective-C 的导入

Swift 3 的 API 设计指南将与 Objective-C 中 Cocoa 的完全不同。这就意味着 Objective-C 中的 API 映射到 Swift 时会与以往不同。这里有一个相关的例子可以研究一下。以下这行代码的方法调用是从现有的 Objective-C 中「翻译」成 Swift 的:

let contentString = listItemView.stringValue.stringByTrimmingCharactersInSet(
   NSCharacterSet.whitespaceAndNewlineCharacterSet())

而在 Swift 3 中同样的方法调用将会是下面这个样子的:

let content = listItem.stringValue.trimming(.whitespaceAndNewlines)

这样让语法看上去更「Swift 化」。然而,这也意味着已经导入的 Objective-C API 将会有很大变动,因此,现有的这些代码将会报错。

彻底的泛型

Swift 有泛型,但是这次是为了引进新的特性,就像递归协议约束(使得受限的扩展遵循新协议的能力),比如遵循 Equatable 的数组的元素也是遵循 Equatable 的。

精简的语言

对于那些「和 Swift 语法不是很配」的语言特性仍然会有一些小改动。同样的,这也会使得现有的这些代码报错。

展望 Swift 3

Swift 目前还没有在语言层面支持并发操作。取而代之的是使用 NSOpertion 或 dispatch queues 来处理。这种状况在 Swift 3 中仍然不会改变。但是,在未来(Swift 4?)可能会有一个语言层面上并发操作的支持。

Swift 和 C,特别是 Objective-C,现在已经有了很好的兼容。但是,却缺乏与 C++ 的兼容。虽然,这也不会在 Swift 3 上有所改变,但是这需要一个比较长期的目标来引进它。

小结

首先,Swift 将会在未来大规模的改善和提升,这是一个非常好的消息。另一方面,Swift 3 的发布会使得现有的 Swift 2 代码报错,因此,需要做一些代码迁移的工作才行。

====================================分割线================================
文章转载自 开源中国社区[http://www.oschina.net]

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Swift实用小册21: Generics泛型的使用
在本章中,你将学会Generics泛型的使用方法。
80 0
Swift-进阶 14:泛型
Swift-进阶 14:泛型
103 0
swift语言之函数的基本构架
swift语言之函数的基本构架
41 0
Apple 正式开源 Swift 语言及其核心库和包管理器
Swift 语言自去年发布以来,就成为了历史上发展最快的编程语言之一。本周四,Swift 团队宣布 Swift 编程语言正式开源,一同开源的还有 Swift 核心库及包管理器。
118 0
Swift专题讲解二十二——泛型
Swift专题讲解二十二——泛型
50 0
Swift解读专题一——Swift2.2语言预览(二)
Swift解读专题一——Swift2.2语言预览
58 0
Swift中的泛型语法实践
先来简单的, 由浅入深嘛。
1286 0
在windows上操练swift语言:类和结构体
条件所限,只能在WINDOWS上学习SWIFT的基本语法。 还有,有swift for windows 1.9帮忙, 看书没那么燥。。。。
2557 0
+关注
玄学酱
这个时候,玄酱是不是应该说点什么...
文章
问答
文章排行榜
最热
最新
相关电子书
更多
OpenStack Swift 海量小文件性能优化之路
立即下载
From Java_Android to Swift iOS
立即下载
Swift在Airbnb的应用实践
立即下载