美文网首页ios开源项目ios学Swift挣美金
Swift 5 发布 发掘出2个新特性(含代码,快来看吧)

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

作者: iCloudEnd | 来源:发表于2019-03-27 08:47 被阅读78次

    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(#"<a href="\#(url)" title="Apple Developer">"#)
    // 之前的写法
    print("<a href=\"\(url)\" title=\"Apple Developer\">")
    

    重名问题用户优先

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

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

    相关文章

      网友评论

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

        本文链接:https://www.haomeiwen.com/subject/oxravqtx.html