2017-04-26 78 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