項目總結--Version 1.0(四)

歡迎加入【iOS/Swift/OC開發(fā)交流群|127183325】交流學習

關于我們在開發(fā)的時候是用Block還是Delegate失都,網(wǎng)上已經(jīng)有了很多的討論匿级,個人感覺這一篇很不錯,開發(fā)該選擇Blocks還是Delegates媳板,原文地址在這桑腮,推薦大家看看。所以蛉幸,在此就不細說是選擇Blocks還是Delegates了破讨,只將關鍵點放這丛晦,更詳細的內容可以點擊上面放的鏈接查閱。

  • 大多數(shù)delegate protocols 都擁有幾個消息源提陶。
  • 一個對象只能有一個delegate烫沙。
  • 一般的delegate方法會有返回值。
  • Delegates更關注過程隙笆,Blocks更關注結果锌蓄。

如果能在開發(fā)中遵循以上幾點的話,Blocks和Delegate基本上就不會用在不合適的地方了撑柔,是不是挺簡單的瘸爽。
但是我們應該從這篇文章中獲得更多的內容。比如乏冀,如果再遇到類似的疑惑蝶糯,我們應該怎么做。首先辆沦,我們可以在搜索引擎中直接搜索昼捍,這是最簡單也是最直接的方法。在開發(fā)中我們遇到的大部分的問題在網(wǎng)上都能查到相關的解決方案肢扯,我們應該更好的利用這個巨大的知識庫妒茬。其次,如過很不巧的我們遇到了別人沒有遇到的問題蔚晨,首先乍钻,這得恭喜你,因為你走到了大部分開發(fā)者的前面铭腕,如過你能找到好的解決方法银择,你會從中學到很多。另外累舷,要解決這樣的問題需要花費更多的時間和精力浩考,最終結果只有兩種,解決或者沒有解決被盈。
在上面提到的文章中給了我們一個很好的示范析孽。我們要利用好蘋果的官方文檔,在官方文檔中我們不僅僅能了解各種API的用法只怎,更重要的是我們還能在文檔中看到蘋果官方在編程中的習慣袜瞬,這個習慣能給我們一個很好的參考。
下面看一下我在1.0 版本中使用的Blocks身堡,以及為什么要在2.0種放棄使用它邓尤。
這是一段文件傳輸?shù)拇a:

[[FBSocketTool shareInstance] sendTCPData:transferDatasArray[fileDataIndex] withTag:tag didWritePartialDataOfLengthBlock:^(NSUInteger partialLength) { sendSize += partialLength; CGFloat progress = (sendSize*1.0/allFilesSize)*100; [[NSNotificationCenter defaultCenter] postNotificationName:FBUpdateNavigationBarProgress object:[NSNumber numberWithFloat:progress]]; }];

方法的實現(xiàn):

- (void)sendTCPData:(NSData *)data withTag:(long)tag didWritePartialDataOfLengthBlock:(void (^)(NSUInteger))block { if (self.TCPSocket.isConnected) { self.WritePartialDataOfLengthBlock = block; [self.TCPSocket writeData:data withTimeout:-1 tag:tag]; }else { NSLog(@"socket未連接"); } }

為了能獲取文件傳輸?shù)倪M度,專門創(chuàng)建了一個Block
@property (nonatomic, copy)void (^WritePartialDataOfLengthBlock)(NSUInteger partialLength);

很明顯,我們在上傳文件的時候需要獲取傳輸?shù)娜齻€狀態(tài):開始傳輸裁赠,傳輸中和傳輸結束殿漠。根據(jù)我們查看蘋果的官方文檔,這個地方最好的方法還是使用Delegates來實現(xiàn)佩捞,所以在2.0中根據(jù)上面總結的幾點做了一些修改绞幌。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市一忱,隨后出現(xiàn)的幾起案子莲蜘,更是在濱河造成了極大的恐慌,老刑警劉巖帘营,帶你破解...
    沈念sama閱讀 218,858評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件票渠,死亡現(xiàn)場離奇詭異,居然都是意外死亡芬迄,警方通過查閱死者的電腦和手機问顷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來禀梳,“玉大人杜窄,你說我怎么就攤上這事∷阃荆” “怎么了塞耕?”我有些...
    開封第一講書人閱讀 165,282評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長嘴瓤。 經(jīng)常有香客問我扫外,道長,這世上最難降的妖魔是什么廓脆? 我笑而不...
    開封第一講書人閱讀 58,842評論 1 295
  • 正文 為了忘掉前任筛谚,我火速辦了婚禮,結果婚禮上停忿,老公的妹妹穿的比我還像新娘驾讲。我一直安慰自己,他們只是感情好瞎嬉,可當我...
    茶點故事閱讀 67,857評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著厚柳,像睡著了一般氧枣。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上别垮,一...
    開封第一講書人閱讀 51,679評論 1 305
  • 那天便监,我揣著相機與錄音,去河邊找鬼。 笑死烧董,一個胖子當著我的面吹牛毁靶,可吹牛的內容都是我干的。 我是一名探鬼主播逊移,決...
    沈念sama閱讀 40,406評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼预吆,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了胳泉?” 一聲冷哼從身側響起拐叉,我...
    開封第一講書人閱讀 39,311評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎扇商,沒想到半個月后凤瘦,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,767評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡案铺,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年蔬芥,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片控汉。...
    茶點故事閱讀 40,090評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡笔诵,死狀恐怖,靈堂內的尸體忽然破棺而出暇番,到底是詐尸還是另有隱情嗤放,我是刑警寧澤,帶...
    沈念sama閱讀 35,785評論 5 346
  • 正文 年R本政府宣布壁酬,位于F島的核電站次酌,受9級特大地震影響,放射性物質發(fā)生泄漏舆乔。R本人自食惡果不足惜岳服,卻給世界環(huán)境...
    茶點故事閱讀 41,420評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望希俩。 院中可真熱鬧吊宋,春花似錦、人聲如沸颜武。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,988評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鳞上。三九已至这吻,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間篙议,已是汗流浹背唾糯。 一陣腳步聲響...
    開封第一講書人閱讀 33,101評論 1 271
  • 我被黑心中介騙來泰國打工怠硼, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人移怯。 一個月前我還...
    沈念sama閱讀 48,298評論 3 372
  • 正文 我出身青樓香璃,卻偏偏與公主長得像,于是被迫代替她去往敵國和親舟误。 傳聞我的和親對象是個殘疾皇子葡秒,可洞房花燭夜當晚...
    茶點故事閱讀 45,033評論 2 355

推薦閱讀更多精彩內容

  • *面試心聲:其實這些題本人都沒怎么背,但是在上海 兩周半 面了大約10家 收到差不多3個offer,總結起來就是把...
    Dove_iOS閱讀 27,149評論 30 470
  • iPhone的標準推薦是CFNetwork 庫編程,其封裝好的開源庫是 cocoa AsyncSocket庫脐帝,用它...
    Ethan_Struggle閱讀 2,245評論 2 12
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理同云,服務發(fā)現(xiàn),斷路器堵腹,智...
    卡卡羅2017閱讀 134,659評論 18 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,166評論 25 707
  • Blocks編程要點 目錄 簡介............................................
    xuejunjun閱讀 1,239評論 0 5