iOS類似朋友圈的結(jié)構(gòu)設(shè)計(jì)(下層)

1:接上一篇

圖 1

這里我們看到了 除了Manager 上面的都是上層做的事情 Manager對(duì)上層只是提供的一個(gè)你能獲取到我這里的數(shù)據(jù)的這樣的一些接口而已.讓我們看下下層的Manager應(yīng)該是如何設(shè)計(jì)的.

2:Manager 如何設(shè)計(jì)


圖 2

Manager: 他包含了 這個(gè)上面所有需要用到的服務(wù)?

Service: 他 包含了 需要對(duì)外的提供的接口 , 一個(gè)Service 他擁有一個(gè)或者多個(gè)Cache Manager 和 ?Request Manager.?

Cache Manager : 需要被下層所做的一些緩存機(jī)制 比如登錄信息 比如離線點(diǎn)贊 評(píng)論 等

Request Manager: 最原始的接口請(qǐng)求 , ?從服務(wù)器拿取到最原始的數(shù)據(jù).?


下面 我們還是來(lái)看一個(gè)點(diǎn)贊的流程

3:Feed Service 點(diǎn)贊流程



圖 3

這里很明顯 對(duì)上層來(lái)說(shuō) 他只要知道一個(gè)點(diǎn)贊的接口 然后回調(diào)給他成功了就可以了.?

接下來(lái)的事情都是下層去做了. 如點(diǎn)贊請(qǐng)求失敗了,那么依舊在Like Cache Manager 里面, 下次有時(shí)機(jī)的再觸發(fā)點(diǎn)贊的請(qǐng)求.

4:總結(jié)

一般來(lái)說(shuō) 只有和UI無(wú)關(guān)的操作 都可以放在 下層去操作, 畢竟下層做邏輯上處理結(jié)構(gòu)上會(huì)更加簡(jiǎn)單和清晰. 如果你非要拿到上層去讀緩存或者變量修改 , 那會(huì)一件很混亂不討好的事情.?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,781評(píng)論 25 709
  • iOS網(wǎng)絡(luò)架構(gòu)討論梳理整理中。。。 其實(shí)如果沒(méi)有APIManager這一層是沒(méi)法使用delegate的,畢竟多個(gè)單...
    yhtang閱讀 5,466評(píng)論 1 23
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,506評(píng)論 19 139
  • 根據(jù)某公布排行榜, 根據(jù)福布斯指數(shù), 根據(jù)美聯(lián)儲(chǔ)指數(shù), 根據(jù)那誰(shuí)的信用評(píng)級(jí), 根據(jù)那誰(shuí)的和平榜公布, 根據(jù)。。。。...
    loster閱讀 516評(píng)論 2 1
  • 樹(shù)影照清風(fēng),飄渺孤身處。何處幽涼短袖長(zhǎng),夢(mèng)里參天木。 獨(dú)坐憶闌珊,望月難停步。顧盼蟬鳴送我思,日夜床頭復(fù)。
    雅俗共賞Y閱讀 385評(píng)論 0 5

友情鏈接更多精彩內(nèi)容