【问题标题】:Import framework vs module导入框架与模块
【发布时间】:2018-07-16 11:51:08
【问题描述】:

想知道:如果我只使用CLLocationManager 是否有任何重要的胜利/专业:

import CoreLocation.CLLocationManager

结束:

import CoreLocation

?

【问题讨论】:

    标签: ios swift import core-location swift4.1


    【解决方案1】:

    据我所知,有了这个blog post,它对性能没有影响,Swift 编译器在编译期间避免了未使用的符号。它只会更改您可以在文件中使用的内容,并避免使用 CoreLocation 中不需要的对象。

    【讨论】:

      【解决方案2】:

      正如thoughtbot 博客所述,除了有助于删除您正在处理的特定文件中可能不需要的过多符号之外,不会有任何性能提升。

      就性能和二进制大小而言,任何未使用的符号都已由 Swift 编译器从最终二进制文件中优化出来。如果在编译时没有引用它,那么它就会被删除,这意味着导入一个框架但不使用它的特定部分不应该有任何负面影响。

      只有当您有两个模块定义具有相同名称的特定类型时,您可能需要指定导入 Module.SubModule。

      注意:尚未在苹果开发者网站上找到任何相关文档。 Apple 有关这方面的文档将有助于了解更多信息。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-10-06
        • 1970-01-01
        • 1970-01-01
        • 2019-08-04
        • 2016-03-10
        • 2018-08-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多