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