資料介紹
對(duì)象間交互模式2017-06-22 11:32程序設(shè)計(jì)/設(shè)計(jì)推薦人:feizhu422
前言
直白的對(duì)象間交互
輕度抽象的對(duì)象間交互
使用Target-Action淡化接口概念的對(duì)象間交互
響應(yīng)式的對(duì)象間交互
基于閉包的對(duì)象間交互
推導(dǎo)過(guò)程
總結(jié)
前言
閉包在什么場(chǎng)景下才是最優(yōu)選擇?理由?補(bǔ)充說(shuō)明一下:很多場(chǎng)景都適用閉包,但不是所有場(chǎng)景下閉包都是最優(yōu)選擇。
這篇文章主要就是回答這個(gè)問(wèn)題的。
但是在直接切入閉包之前,我們需要有一個(gè)推導(dǎo)的過(guò)程,在推導(dǎo)過(guò)程之前,我們還需要梳理一下現(xiàn)有的交互模式。所以,關(guān)于這篇文章的內(nèi)容,更確切地說(shuō)應(yīng)該是討論了對(duì)象間各種交互方式。
這個(gè)主題其實(shí)很早之前業(yè)界也討論過(guò),objc.io很早就有《Communication Patterns》這篇文章詳細(xì)講過(guò)這個(gè)問(wèn)題。這篇文章在很多地方說(shuō)得都是對(duì)的,但這篇文章在block的討論上不夠全面。國(guó)內(nèi)也有很多人關(guān)于對(duì)象間交互的問(wèn)題寫(xiě)過(guò)文章,但這些文章相比《Communication Patterns》來(lái)說(shuō),就已經(jīng)錯(cuò)得十分離譜了。
本文是從另一個(gè)角度討論了同樣的問(wèn)題,文末給的決策圖可以作為《Communication Patterns》的補(bǔ)充去做參考。
直白的對(duì)象間交互
解決對(duì)象間交互問(wèn)題的最直白樸素的做法就是直接傳值,直接調(diào)用。
適用這種做法的前提是你非常確認(rèn)A對(duì)象的信息來(lái)源只可能是B對(duì)象,而且在未來(lái)這個(gè)前提也是不會(huì)產(chǎn)生任何改變。這個(gè)前提在某些場(chǎng)景下是成立的,例如你要取timestamp,那么只可能從NSDate中取。你要操作字符串,也只可能使用NSString。我這里說(shuō)的是通常的環(huán)境,當(dāng)然,針對(duì)NSDate或NSString這類(lèi)對(duì)象做二次封裝導(dǎo)致不直接依賴NSDate或NSString的場(chǎng)景也是有的,其本質(zhì)依舊不變。
這種做法的好處在于可以限制實(shí)現(xiàn)手段的多樣性,在維護(hù)代碼的時(shí)候工程師能夠更加容易地去聚焦問(wèn)題所在。
存在限制不一定是壞的,靈活度高也不一定是好的。當(dāng)一個(gè)工程中為了解決同一個(gè)問(wèn)題而存在多種方案的
- 設(shè)計(jì)模式_可復(fù)用面向對(duì)象軟件的基礎(chǔ).pdf 0次下載
- 反激詳細(xì)推導(dǎo)過(guò)程 39次下載
- 面向CU和PU模式選擇的SCC幀間快速算法 7次下載
- 基于Logit動(dòng)態(tài)的交通方式選擇演化博弈模型 10次下載
- 在線學(xué)習(xí)的交互網(wǎng)絡(luò)模型和質(zhì)量評(píng)價(jià)方法 11次下載
- Logistic回歸數(shù)學(xué)推導(dǎo)以及python實(shí)現(xiàn) 7次下載
- 面向過(guò)程和面向對(duì)象有什么區(qū)別
- 面向對(duì)象的程序設(shè)計(jì)總結(jié)與過(guò)程化程序設(shè)計(jì)有什么區(qū)別? 0次下載
- 基于C++11的輕量級(jí)對(duì)象間通信機(jī)制 0次下載
- SVPWM的原理及法則推導(dǎo)和控制算法詳解 0次下載
- H.264快速幀間模式選擇算法
- 基于面向對(duì)象的過(guò)程實(shí)時(shí)數(shù)據(jù)庫(kù)引擎設(shè)計(jì)
- 基于AVS-M的幀間模式快速選擇算法
- 過(guò)程對(duì)象模型在線閉環(huán)頻域辨識(shí)
- 基于統(tǒng)計(jì)的SVC層間編碼快速模式決策算法
- 熔纖機(jī)熔接模式如何選擇 1847次閱讀
- 設(shè)計(jì)模式中代理模式的使用場(chǎng)景 742次閱讀
- C#模式匹配完全指南 389次閱讀
- UVM設(shè)計(jì)模式之訪問(wèn)者模式 633次閱讀
- Java反射技術(shù)實(shí)現(xiàn)對(duì)象的創(chuàng)建 2123次閱讀
- LLC諧振變換器的公式推導(dǎo) 3217次閱讀
- JavaScript創(chuàng)建對(duì)象的方式 3711次閱讀
- 適配器模式和裝飾模式的區(qū)別 6901次閱讀
- 適配器模式和代理模式的區(qū)別 5231次閱讀
- 迪士尼最新研究:虛擬對(duì)象能夠自動(dòng)與其周?chē)奈锢憝h(huán)境自主智能交互 2112次閱讀
- C++:全局對(duì)象、局部對(duì)象、靜態(tài)對(duì)象 3034次閱讀
- 基于SRIO的FPGA間數(shù)據(jù)交互系統(tǒng)設(shè)計(jì)與應(yīng)用 4265次閱讀
- 適配器模式、裝飾器模式、代理模式的區(qū)別 1.6w次閱讀
- 如何選擇電壓測(cè)試模式 1966次閱讀
- CAN協(xié)議的錯(cuò)幀漏檢率推導(dǎo)及改進(jìn)過(guò)程簡(jiǎn)介 4155次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費(fèi)下載
- 0.00 MB | 1490次下載 | 免費(fèi)
- 2單片機(jī)典型實(shí)例介紹
- 18.19 MB | 92次下載 | 1 積分
- 3S7-200PLC編程實(shí)例詳細(xì)資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識(shí)別和講解說(shuō)明
- 4.28 MB | 18次下載 | 4 積分
- 5開(kāi)關(guān)電源原理及各功能電路詳解
- 0.38 MB | 10次下載 | 免費(fèi)
- 6基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
- 0.11 MB | 4次下載 | 免費(fèi)
- 7藍(lán)牙設(shè)備在嵌入式領(lǐng)域的廣泛應(yīng)用
- 0.63 MB | 3次下載 | 免費(fèi)
- 89天練會(huì)電子電路識(shí)圖
- 5.91 MB | 3次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費(fèi)
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費(fèi)
- 4LabView 8.0 專(zhuān)業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費(fèi)
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33562次下載 | 免費(fèi)
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費(fèi)
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費(fèi)
- 8開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21539次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537791次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191183次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183277次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138039次下載 | 免費(fèi)
評(píng)論
查看更多