加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

方法 – 计算只读属性vs Swift中的函数

发布时间:2020-12-14 06:10:47 所属栏目:百科 来源:网络整理
导读:在Swift WWDC会话简介中,演示了只读属性描述: class Vehicle { var numberOfWheels = 0 var description: String { return "(numberOfWheels) wheels" }}let vehicle = Vehicle()println(vehicle.description) 相对于使用方法,选择上述方法有什么影响:
在Swift WWDC会话简介中,演示了只读属性描述:
class Vehicle {
    var numberOfWheels = 0
    var description: String {
        return "(numberOfWheels) wheels"
    }
}

let vehicle = Vehicle()
println(vehicle.description)

相对于使用方法,选择上述方法有什么影响:

class Vehicle {
    var numberOfWheels = 0
    func description() -> String {
        return "(numberOfWheels) wheels"
    }
}

let vehicle = Vehicle()
println(vehicle.description())

在我看来,你选择只读计算属性的最明显的原因是:

>语义 – 在这个例子中,描述是类的属性,而不是它执行的动作是有意义的。
> Brevity / Clarity – 避免在获取值时需要使用空括号。

显然,上面的例子过于简单,但是有其他的理由选择一个呢?例如,是否有功能或属性的一些功能,将指导您决定使用哪个?

N.B.乍一看,这似乎是一个常见的OOP问题,但我想知道任何Swift特有的功能,将指导使用这种语言的最佳实践。

在我看来,它主要是一种风格问题:我强烈喜欢使用属性:属性;这意味着您可以获取和/或设置的简单值。我在实际工作时使用函数(或方法)。也许某些东西必须从磁盘或数据库计算或读取:在这种情况下,我使用一个函数,即使只返回一个简单的值。这样我可以很容易地看到呼叫是便宜(属性)还是可能昂贵(功能)。

当Apple发布一些Swift编码约定时,我们可能会更清楚。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读