舉個(gè)例子:
1442903803236718.png
block
使用block代替delegate倒得,這個(gè)沒啥可多說的选泻,把代碼變得非常緊湊,減少文件的消息數(shù)量茶宵,最主要的是關(guān)系沒那么緊密了桐愉。對(duì)于有大量的delegate方法才考慮使用protocol實(shí)現(xiàn)财破,這個(gè)時(shí)候block太多也影響閱讀。
同時(shí)从诲,對(duì)于傳遞target/selector左痢,也盡量使用block吧,這種閱讀查找起來太不方便了。
提交代碼
及時(shí)stage抖锥,這個(gè)非常重要,開發(fā)過程中經(jīng)常需要經(jīng)常比對(duì)上一步的代碼碎罚,這樣才能最大程度上確保自己的改動(dòng)是正確的磅废。如果有一些小問題,也可以即使找到歷史版本荆烈。
及時(shí)commit拯勉,每完成一個(gè)相對(duì)完整的需求,就commit憔购,小提交是個(gè)好習(xí)慣宫峦。
PR code review要做好,要花大量的時(shí)間做玫鸟,有條件的話导绷,最好每個(gè)版本開一次總結(jié)會(huì)。
RAC封裝網(wǎng)絡(luò)請(qǐng)求
返回的signal要避免多次出現(xiàn)side effect屎飘,但不使用replay/replayLazily妥曲,因?yàn)閐ispose不會(huì)被調(diào)用。
使用RACCommand封裝請(qǐng)求钦购,查看這幾篇文章:http://codeblog.shape.dk/blog/2013/12/05/reactivecocoa-essentials-understanding-and-using-raccommand/檐盟,https://github.com/ReactiveCocoa/ReactiveCocoa/issues/963,https://github.com/ReactiveCocoa/ReactiveCocoa/issues/1326押桃。
結(jié)合RACCommand和takeUntil:來封裝一個(gè)可以cancel的請(qǐng)求葵萎。