即使不是框架,也要迅速明确指定'public'?

问题描述 投票:0回答:1

我目前在我的主应用中这样声明我的属性:

public var thingA: String?
private var thingB: String?
private var thingC: String?

我应该在主模块中省略'public'声明,因为没有其他模块需要使用thingA。这样看起来更像:

var thingA: String?
private var thingB: String?
private var thingC: String?

如果我们在这里省略“公共”,它的意思是,如果它在框架中,就不能再从其他地方访问了,但是在主应用程序/模块中,这根本就不用担心,因此使用时不仅没有意义。公开的,但是提供比所需的更大的访问权限可能是个坏习惯……(也许与编译器相关的效率低下?)

达成共识的标准是什么,我似乎无法在文档或stackoverflow中找到解决此问题的任何方法?

ios swift xcode swift5
1个回答
0
投票

访问控制定义为here。如果未定义特定的访问控制,则意味着它将具有internal访问控制,该访问控制允许访问同一模块中的该实体。默认访问控制也是internal,如上面的链接所述,如果您使用的是单个目标应用程序,则可以省略定义特定的访问控制(即不需要public访问控制)。

但是,我相信您应该始终从private访问控制开始,然后根据要求对其进行更改。

© www.soinside.com 2019 - 2024. All rights reserved.