2017-09-15 48 views
2

使用MVP模式構建Android應用時,我想知道應該使用演示者活動智能還是功能智能?在MVP模式中,Presenter應該是Android應用的活動智能還是功能智能

活動方式,主持人數量相當於活動數量。

功能明智的意思,爲每個功能,應使用單獨的Presenter。

+1

這似乎不是一個SO的問題,但程序員.stackexchange.com –

+1

檢查代碼實驗室由谷歌MVP模式 – Raghunandan

+0

@Raghunandan嘿感謝兄弟,好的代碼實驗室對MVP谷歌..想法: - ) –

回答

0

對我來說,它應該是活動明智的,因爲屏幕可能具有更多的功能,並且每個人都有一個主持人需要太多主持人,並且將它們組織成一個屏幕將是一種痛苦。 它是一個基於意見的問題。

+0

如果一個活動有多個片段並且只有一個演講者適用於所有這些演講者,並且將來想要在另一個演練中使用某些片段,那該怎麼辦呢? –

+1

其實,我是怎麼做的,我會每屏幕有一個主持人。所以如果你的活動有很多片段有每個片段的主持人,並且如果你的活動有一些視圖呈現有主持人活動也。列表視圖的情況下,我會有主持人對列表中的每個視圖 –

2

功能明智,因此您可以在多個活動中重複使用演示者。

另外:爲了測試目的,演示者不應該具有視圖或甚至上下文的引用。

2

我個人的方法是它依賴於邏輯,每一個都有其優點和缺點。 讓我們假設一個活動有一個列表片段和一個細節片段,如果這些片段非常確定它們只能用於這個活動,那麼你可以有一個演示者,但是如果你想使用細節或列表片段其他活動,或者如果是人員列表和每個人的詳細信息,那麼您可以打開登錄的用戶詳細信息視圖(從人員列表以外的地方)?你將使用同一個活動的主持人(不是那麼好的架構明智的),所以在這種情況下,在我看來有2個主持人是更好的方法!

爲了簡化它,沒有規則,它只取決於您是要在其他場景中使用視圖還是視圖僅附加到此活動。

+1

現在我決定讓演示者屏幕明智。因爲我必須在很多地方重新使用這些屏幕..謝謝你的回答。 –