第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

MVP Clean Architecture - 計算和非數(shù)據(jù)相關(guān)任務(wù)屬于哪里?

MVP Clean Architecture - 計算和非數(shù)據(jù)相關(guān)任務(wù)屬于哪里?

人到中年有點甜 2023-06-14 14:36:30
我一直在做大量研究并嘗試在我的應(yīng)用程序中使用 MVP 和 Clean Architecture,但我仍然有很多困惑并且不完全理解它。我最大的疑問是:非數(shù)據(jù)庫相關(guān)的,比如復(fù)雜的ma數(shù)學(xué)計算,邏輯應(yīng)該去哪里?我在互聯(lián)網(wǎng)上找到的每個示例應(yīng)用程序都必須簡單地從數(shù)據(jù)庫中保存和檢索一些數(shù)據(jù)。例如,我有一個屏幕,用戶需要在其中插入 4 個值,然后我有采用這些值的代碼,執(zhí)行一些計算并返回表示要顯示的數(shù)據(jù)的對象。我現(xiàn)在的問題是:在具有以下結(jié)構(gòu)的具有干凈架構(gòu)項目的 MVP 中,我應(yīng)該將負(fù)責(zé)生成結(jié)果的類或代碼放在什么位置:view <--> presenter <--> use cases <--> repositories視圖將輸入發(fā)送給演示者,但是隨后呢?還有許多示例使用不同的“服務(wù)”類,在其中一些示例中,它們連接到演示者,在其他示例中連接到存儲庫。
查看完整描述

2 回答

?
慕蓋茨4494581

TA貢獻(xiàn)1850條經(jīng)驗 獲得超11個贊

用例是模型的一部分。在模型中有數(shù)據(jù)(用于定義數(shù)據(jù)如何存儲在內(nèi)存中的 pojo)和用例。作為這種復(fù)雜的數(shù)學(xué)計算的所有業(yè)務(wù)邏輯都必須在一個或多個用例中。

視圖將獲取數(shù)據(jù)并將其傳遞給演示者,演示者應(yīng)該創(chuàng)建一個線程(以異步運行代碼的多種方式之一,我喜歡為此使用線程池執(zhí)行器)來運行將進(jìn)行數(shù)學(xué)計算并回答演示者的用例. 最后,Presenter 會將數(shù)據(jù)發(fā)送回視圖。

除非您必須檢索任何數(shù)據(jù)(來自傳感器、文件、數(shù)據(jù)庫、url 響應(yīng)...)或永久存儲它,否則我認(rèn)為在這種情況下您不需要存儲庫。


查看完整回答
反對 回復(fù) 2023-06-14
?
DIEA

TA貢獻(xiàn)1820條經(jīng)驗 獲得超2個贊

您應(yīng)該在 Presenter 本身中編寫復(fù)雜且合乎邏輯的代碼,為什么?-> 如果您需要任何數(shù)據(jù)庫值,那么您可以通過運行線程從 Presenter 獲取它并進(jìn)行進(jìn)一步計算。

如果有任何驗證,您應(yīng)該使用通用類來獲取結(jié)果

例如。

view 需要一些輸入結(jié)果,您可以將其傳遞給 presenter ,presenter 將處理輸入并將數(shù)據(jù)返回給 view。

查看完整回答
反對 回復(fù) 2023-06-14
  • 2 回答
  • 0 關(guān)注
  • 151 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號