说我们有一个受限制的类型MyClass
,例如到模块(internal
)或文件(fileprivate
)。它具有变量和函数,任何可以访问该类型本身的人都应该可以使用。我可以:
- 将其公开。该限制已在类型级别上强制执行,因此变量/函数的访问级别是否过高无关紧要。而且,如果我想在其他模块或文件中使用该类型,则只需要提高该类型的访问级别,就不必遍历所有变量/函数并也提高它们的访问级别。 / li>
- 或者使每个变量/函数的访问级别尽可能严格。我喜欢将其作为一种普遍的哲学,但在这里建议这样做吗?
我想知道:
- 是否有支持这两种方法的公约,最佳实践或建议?
- 我是否正确陈述了两种方法的后果?
- 还有第三种可能更好的方法吗?