我正在编写一个Android应用程序,随着代码的增长,我意识到它需要使用依赖注入框架来实现更好的架构。
(1)对于Android应用来说,Spring太重了吗?
(2)如果是,为此目的是否有替代的轻量级框架?
谢谢!
答案 0 :(得分:3)
答案 1 :(得分:2)
Android的弹簧有一个特殊的扩展:Spring Android。
Spring Android是Spring Framework的扩展,旨在简化原生Android应用程序的开发。
所以我认为Spring一般不会对Android很重。
但当然你不要使用spring-all-in-one.jar
。
另一方面,Google-Guice可能是更自然的选择。有一个关于Android和Guice的Stack Overflow问题:Guice Performance on Android
答案 2 :(得分:1)
在Android上成功移植Spring框架(core,webmvc,hidernate,aop)+ DWR + H2。 四个月前,我决定调查此事,以迁移使用Spring框架构建的服务器应用程序 在Android平台上。目前,我已成功移植这两个应用程序。
答案 3 :(得分:1)
您可能还会考虑Dagger这是一个符合JSR-330标准的Android优化依赖注入系统。它的灵感来自Guice并由Guice贡献者撰写。
它支持代码生成方法,避免了android虚拟机中大量的反射成本,同时推迟链接以避免类加载直到最后一个负责任的时刻。这样做的好处是编译时错误和图形分析。
答案 4 :(得分:1)
请查看我的名为 RoboSpring 的项目。从描述:
RoboSpring是Android平台的Spring框架的(真实)端口。此外,它还为RoboGuice引入的功能提供了初步支持,例如将View引用注入活动等。 RoboSpring基于Spring的核心, bean , context 和 aop 组件的3.1.0 RELEASE版本。它提供以下功能:
https://github.com/dthommes/RoboSpring
快乐注射!
答案 5 :(得分:1)
您可能会发现Feather有趣,如果您的目标是低占地面积和高性能。该项目包括一些基准,将它与PicoContainer,Guice,Dagger,Spring进行比较。
答案 6 :(得分:1)
答案 7 :(得分:0)
Android还有一个新的Spring项目:Tiny Spring。它解决了XML配置的基础知识,但没有完成Spring所做的一切。