Swift 5 发布 发掘出2个新特性(含代码,快来看吧)

Swift 5 和 Xcode 10.2 发布

General

Swift 5 支持命令行工具包了

App Thinning (App瘦身)

Swift制作的App体积过大,一直是众多OC开发者指摘Swift的槽点,看来这次苹果是下决心进行改善了。

抛弃标准库轻装前行

在iOS12.2,watchOS 5.2和tvOS12.2版本上运行的Swift程序可以不再包含Swift standard library了。也就是说如果您更新到最新版系统,那么新更新app体积可能会小很多。

语言新特性

告别烦人的斜杠转移,轻松使用双引号

字符串处理是编程的基础,我们经常会遇到一个字符串需要包含“”号,传统的方式就是young斜杠进行转移。在新语法中可以通过使用#号来解决这个问题

// 新用法
print(#""#)
// 之前的写法
print("")

重名问题用户优先

加入您定义了一个类型和标注库重名了,在调用时用你的还是用标准库呢?现在都可以用,优先用你的,如果需要标准库在类型前面加个Swift前缀即可

// 您闲得没事定义了Result类型
public enum Result {
    case value(T)
    case error(Error)
}
//然后又到处import这个类型包
import Foo
func doSomething() -> Result { /* … */ }
运行时默认使用Foo.Result 而不是苹果给您提供的标准库
//我又想用Swift的标准库了,该怎么办?
import Foo
func useStandardLibraryResult() -> Swift.Result { /* … */ }
//添加个Swift前缀吧,骚年

你可能感兴趣的:(Swift 5 发布 发掘出2个新特性(含代码,快来看吧))