Swift - 关于导入包与类的关系

时间:2016-11-22 19:53:09

标签: ios swift3

我需要在我的这个类中使用MKMapViewDelegate,所以我想知道导入是否是一个好习惯

import MapKit.MKMapView

而不是

import MapKit

导入整个软件包是否会影响应用程序性能,还是在性能方面我应该考虑什么?

2 个答案:

答案 0 :(得分:1)

不会影响你的应用程序性能这是一个好习惯,但是我强烈建议只导入Mapkit,这样你就可以在导入中使用任何东西,而不是从同一个包中导入多个东西。

答案 1 :(得分:1)

import MapKit.MKMapView没有实际意义。它仍然导入所有MapKit(例如尝试创建MKShape()或任何其他MapKit类)。 Swift不支持以这种方式导入单个类。我不知道为什么它甚至允许语法(可能值得打开一个关于它的错误,因为它令人困惑)。

有少数情况下实际存在子模块,然后你必须直接导入子模块(导入伞总是不够好)。例如,要从SceneKit获取一些类别方法,您必须明确import SceneKit.ModelIO(但我希望这不是真正意图的行为)。

但无论如何,今天还没有一个很好的理由来限制你的进口。最终,希望Swift能够获得更好的导入功能,让我们更好地控制命名空间,但是现在,只需导入模块。

相关问题