2017-04-26 134 views
0

我開始在一個已經有Realm和MVVM結構的項目中工作。截至目前,所有Realm方法都是靜態的,並且在RealmHelper類中,除了它的相應Activity的ViewModel類中的一些方法。但RealmHelper班開始變得越來越大,有點雜亂。我想知道在使用Realm時重新排列我的方法和類的建議是什麼。Android領域項目結構

+0

你可能想看看http://stackoverflow.com/a/31560557/2413303並決定它 – EpicPandaForce

+0

謝謝你,我會看看,看起來很有趣 – julioribeiro

回答

0

如果您想保持管理您的應用可以訪問的所有方法的類RealmHelper,那就太好了。您可能想嘗試將方法轉換爲一個內部定向到另一個類的內襯。

所以結構可能是這個樣子:

co.your.app.realmhelper

  • RealmHelper [公用]
  • WriterHelper [包專用]
  • ReaderHelper [包裝私人]

所以你所有的邏輯實際上是發生在包私人c但其餘的應用程序會與RealmHelper進行交互。 RealmHelper只會管理包私有類的實例,並確定應爲這些類調用哪些方法。

你的另一種選擇是擺脫RealmHelper而轉向較小的班級。不知道你的RealmHelper實際上在做什麼,很難提供額外的建議。

+0

謝謝你的答案。今天的RealmHelper並不是那麼大,但它對每個模型都有各種方法(讀者和作家以及其他檢查),看起來很亂。我想創建一個模式。 WriterHelper和ReaderHelper的想法聽起來非常好。 – julioribeiro

+0

因此,當我在Realm中完成一個項目時,我基本上擁有了我在Realm中代表的每個模型的助手,這些模型共享一個基本實現。 所以像'AbstractDao'這樣的東西,然後就會有CRUD操作的基礎實現。然後每個模型都會有自己的Dao,可以添加額外的操作。這可能是您探索的另一條有用路線,遺憾的是,我現在還沒有開源的解決方案。 – CodyEngel

+0

上面鏈接的那個將是一個非常相似的模式,除了我將'Dao'稱爲'repository'。 – EpicPandaForce