Android体系结构设计 - 如何做到这一点?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (17)

Android应用程序的良好体系结构如何?是否所有的“工作/业务逻辑”都是在后台服务中完成的,并且Activity只与服务进行通信以从某处(本地/远程)查询/获取数据?

你会实施该活动称为真正的Android服务的“服务”吗?或者做一个POJO-Singleton(可能使用后台线程)。或者在您的活动中实例化后台线程以查找耗时的操作(查询web服务)。

你如何以正确的方式抽象你的数据访问?你会用ContentProvider来访问/抽象你的数据吗?如何/从哪里查询?活动?服务?..?

提问于
用户回答回答于

这个问题没有人回答。良好的OO设计不是特定于Android的。我会说规则是 - 如果框架为您提供适合您的用例的高级对象(例如适用于Android的服务),请使用它。如果你发现自己使用框架免费获得相同的东西的POJO实现,请使用框架。

就问题的分离而言,这是标准的面向对象的东西。不要把任何东西放在你的Activity类中,这不是Activity的工作。使用Activity需要的方法和属性来填充Activity,但这并不是Activity的工作,这很糟糕 - 会让您的Activity的意图难以理解。

我通常在我的应用程序中将东西分成子包。

  • com.myname.myproject.app - 基类,全局应用程序功能
  • com.myname.myproject.net - 网络资料,网络相关的应用
  • com.myname.myproject.data - db助手,提供者等
  • com.myname.myproject.model - 对象模型

等等

扫码关注云+社区