使用dependency injection与Roboguice?

我正在开发一个Android项目,我想知道什么是build立一个Android应用程序的好架构的build议。

我想使用Roboguice的dependency injection,我一直在阅读有关MVVM模式或MVC模式( Android MVVMdevise模式示例 )。

另外我知道roboguice有一个非常酷的基于Context的事件的提升和处理function,可以非常容易testing,因为代码是分离的。

任何关于工作devise模式的build议? 一个可testing和可扩展的架构,你曾经或开发?

Android平台提供了一套通用的devise模式,与Web应用程序相比,通过使用有限的硬件资源,仍然最好坚持直接在生产代码中使用这些模式。 还有其他的框架可以“包装”基础平台。 如果您有特定目的(或者可能用于原型devise/实验),这些值得深入研究,但是对于最佳支持水平,您通常最好使用标准组件。

在使用UI解决scheme时,这是一个很好的资源: http : //www.androidpatterns.com/

特别是对于DI:有一个Android的Spring框架 ,我已经玩了一下,看起来相当有前途。 您已经提到Roboguice作为另一种替代scheme。 然而,为了避免性能和库的开销,我仍然发现最简单的方法是编写一个简单的基于reflection的类来注册和注入我自己代码中的依赖关系。 类似于这种方法 ,除了我通常将注入代码移动到一个单独的单例,并从那里引用它。

根据我的经验,大多数第三方产品还不够成熟,现在依靠的不是什么基础平台提供的东西。 但是,他们不断进步,所以一定要不时地尝试大牌。