抱歉,我是Android注释和依赖注入的新手。我试图了解事情的运作方式以及使用Android Annotations获得的好处
我已经研究了示例,在Android开发中,@EActivity, @ViewById, @App
和其他广泛使用的注释都很清楚
我对理解Ebean
的概念有疑问。我使用spring for Java,很明显我们在xml文件中声明bean并且只是在代码中使用它们,我们可以在xml文件中轻松更改,只提供具体的实现,并且它将在我们使用的任何地方更改来自AppContext
的Id的bean
但我不明白在Android Annotations的情况下使用bean的目的,可能是我一般不理解DI。
@EBean
public class MyClass {
// ...
}
@EActivity
public class MyActivity extends Activity {
@Bean
MyClass myClass;
}
我们在这有什么好处?我们是否只省略了一行
myClass = new MyClass();
?
这就是全部?
另一个例子是Singletone范围。
@EBean(scope = Scope.Singleton)
public class MyClass {
// ...
}
在这种情况下我们有一些好处,我们不必手动创建实例,私有构造函数并检查它是否为null(延迟初始化).....
对于这种情况,我理解它可以节省时间,但在第一个例子中似乎对我没有任何好处,我们没有xml文件,我们可以在bean之间构建我们的bean依赖关系注释。
请帮我理解这一点
提前谢谢大家。