我使用MVP模式编写Android应用程序。我的问题是关于数据库层。我希望它最大程度地独立,因此将来可以用Presenter中的代码更改来替换它。我决定使用没有ORM的纯SQLite,因为用户表在不同的地方使用不同的字段进行更新(在某些地方我更新用户的名字,在其他地方更新代码 - 令牌等)。 ORM(我使用过realm)不允许这样做,你必须编写单独的方法来更新名称,分开 - 用于令牌等。
另一个问题是Mathematica
:当您更新用户时,您必须在Presenter中通过G(u) = P + r*(1-u**2)/(1+u**2)*n1 + r*2*u/(1+u**2)*n2
integral of (1-|X-G(t)|^2/R^2)^3 over t
指定要更改的字段,然后指定Presenter调用ContentValues
,以便我的Presenter依赖于数据层(如果我决定将ORM添加到项目中,我将需要转到每个Presenter并删除ContentValues
)。所以架构很糟糕。您能否以最佳方式建议如何组织应用程序的体系结构?