为什么iOS SDK不封装其所有库数据成员?

时间:2015-04-29 10:52:12

标签: ios swift

在Java和Android的世界中,几乎所有类都有getter和setter来访问和改变其数据成员。

然而,在Swift和iOS开发中,我看到的开发模式与我以前的模式不同。

iOS SDK倾向于允许直接访问和突变其许多数据成员(属性)。

Java和Android中的示例:

textView.setText("Android Development");

String aText = textView.getText();

Swift和iOS中的示例:

label.text = ""
let aText = label.text

如您所见,iOS SDK提供对其属性的直接访问。

1 个答案:

答案 0 :(得分:2)

你的例子没有区别。在第二种情况下(快速代码)将被称为方法func setText(text: String)func text() -> String

这对开发者来说只是一种糖。 请阅读swift或objective-c中的properties

每个属性(具有读写权限)都会创建两个方法:一个用于设置,另一个用于获取数据。所以实际上你的代码没有区别。