1
A UITableView
對象有兩個屬性:一個delegate
和一個dataSource
。他們是完全一樣的設計模式嗎?我沒有看到書籍或參考dataSource
第二代表UITableView
。UITableView的dataSource是否像表信息提供程序委託一樣是委託設計模式?
A UITableView
對象有兩個屬性:一個delegate
和一個dataSource
。他們是完全一樣的設計模式嗎?我沒有看到書籍或參考dataSource
第二代表UITableView
。UITableView的dataSource是否像表信息提供程序委託一樣是委託設計模式?
不,他們不是一回事,但他們使用委託模式。
他們都是不同的和不同的代表,服務於不同的目的。一個屬性用於UITableViewDataSource,另一個屬性用於UITableViewDelegate。
下面是他們UITableView.h定義:
@property(nonatomic, assign) id<UITableViewDataSource> dataSource
@property(nonatomic, assign) id<UITableViewDelegate> delegate
的委託模式是非常簡單和Wikipedia進入概括起來相當不錯:
在軟件工程中,代表團模式是 中的一種設計模式,其中一個對象不是執行其所述任務的一個 ,而是將該任務委託給關聯的幫助對象 。有一個責任倒置,其中助理 對象(稱爲委託人)有責任爲委託人執行 任務。委託模式是構成其他軟件模式(如組合(也稱爲聚合),mixin和 )的基礎抽象模式之一。
似乎書或參考文獻「不敢」將dataSource稱爲「委託」,所以我想知道爲什麼 –