ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、视频、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
可以这么说,在iphone开发过程中,处处都离不开委托与数据源,他们是Cocoa框架的一种设计模式。 控制器拥有委托与数据源的对象,当赋给委托与数据源对象实例时(如delegate=self,把当前对象传给delegate),这时委托 或 数据源 就获得了执行操作的权利。 # 委托与数据源的相同之处: 先拿delegate举例,在这一点与数据源一样:在一般的程序当中不难发现,当delegate被实例后,它的具体工作是什么?当然这也得看是什么样的程序需要哪些功能,这里简单来说就是控制器(UIViewController)需实现委托对象的类型的相关的协议(protocol),然后根据功能需要实现其协议方法。关于委托的例子讲解,参见:博文第(1)篇讲的也很详细:[(1) iphone开发,自定义Window-based Application 模板及委托运行机制](http://blog.csdn.net/dongstone/article/details/7421967) # 不同之处: 数据源:顾名思义是数据集中营,也可以说是持有了数据的引用,管理着数据,如把数据呈现在屏幕上。 委托:是定制的控制器的对象,它具有明显的执行能力。 之间的联系: 数据源管理着数据在必要时会提供给委托数据。