0

所以我有一个Swift包含一些类的文件Whatever。这个类有许多私有属性。像这样:

class Whatever
{
    private let privateString = "Blabla"
    private let privateInt    = 125
    
    // a lot of code here
 }

我想在一个单独的文件中为这个类创建一个扩展。只是为了避免拥有包含大量代码的大文件。但我不能。单独文件中的扩展不能访问类的私有属性。所以我不得不要么将私有属性设置为内部,要么维护一个大文件。除了为此功能创建模块外,是否有任何技术解决方案可以解决此问题?

4

2 回答 2

1

您无法从其他文件访问私有属性。我能想到的唯一可能对您有所帮助的方法是使用 to 替换privateprivate(set)您提供从其他文件的只读访问权限。

于 2022-02-16T10:08:14.243 回答
0

这在 iOS 编程中很少出现,但我认为很多 iOS 程序员本能地知道这一点,让你的模型类只存储值,也许还有一些非常基本的方法,然后你就有可以修改模型的模型控制器类,在 Mac OS 中,我们总是谈论模型、模型控制器、视图控制器和视图,但实际上我认为这是模型、视图、控制模式和模型、视图、演示者模式的组合,而模型控制才是真正的控制器和视图控制器。

于 2022-02-16T11:45:50.007 回答