swift - 为什么访问控制有用?

标签 swift private access-control

<分区>

我已经阅读了 Apple 出版的 iBook 中有关访问控制的部分,但我不明白为什么需要或有用。

为什么我需要使用 private 将部分代码隐藏到应用中的其他代码文件中?

最佳答案

最重要的是,访问修饰符是一种传达有关应如何使用您的 API 的意图的方式。通过将某些东西标记为私有(private),它不再显示为该类型接口(interface)的一部分,从而避免混淆哪些变量和函数是要使用的,哪些只是内部实现细节。

对于框架作者(如 Apple,但在任何大型团队环境中也是如此),访问修饰符还提供了一种控制是否必须支持某些内容的方法。如果某些内容是私有(private)的,则使用相关框架的程序无法使用它,因此框架的 future 版本可以更改或删除它,而不必担心破坏现有应用程序。

最后,通过提供有关如何使用函数或变量的保证,访问修饰符允许编译器进行它原本无法进行的优化。例如,所有私有(private)事物都可以被视为“最终”,这可以通过允许内联和避免动态调度来显着提高性能。

关于swift - 为什么访问控制有用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25298544/

相关文章:

ios - 在代码中更改纵横比值

ios - 是否可以在 ViewController 文件之外设置约束和对象?

swift - 对象是 nil,尽管它是在 init 中设置的

java - 比较类 equals 函数适用于私有(private)变量?

iOS 扩展和受限 API

php - 基于对象的父=>子关系构建访问矩阵?

swift - 将可选内容展开为实现接口(interface)的条件对象

javascript - 检查是否可以使用 JavaScript 访问在线资源,而不需要同源策略来允许它

git - 在服务器上使用 Git 进行访问控制(不是 gitosis 或 gitolite)

C++类模板函数可以访问嵌套类私有(private)成员