您的位置:首页 > 移动开发 > Swift

对于swift中delegate的个人理解

2016-05-27 00:00 274 查看
摘要: 详情在正文。

前言:delegate的中文翻译就是委托。

个人认为委托是有三个角色共同完成的。

分别是:委托人、中介、任务执行。

看别人的博文是将delegate比作是老板的一个秘书的,委托人是老板,执行任务的技术员。

1. 中介,就是一个委托协议,如下:

protocol AgencyDelegate {
func out(str: String)
}


2. 委托人,委托要做的工作就是提供情报(传参)

class Client {
var delegate: AgencyDelegate?
delegate.out("i am delegate")   //提供情报”i am delegate“
}


3.任务执行,根据委托人提供的情报,完成相应工作(具体实现协议的函数)

class Execute: AgencyDelegate {
let test = Client();
test.delegate = self
func out(str: String) {
print(str)
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: