在过去的一段时间里,我有机会出于个人原因开发了一些应用程序,看看今天的公司在 Android 生态系统中组织他们的工作,我遇到了很多很多次这种项目配置:
- MVP (Model-View-Presenter) 作为应用架构的设计模式;
- RxJava 用于基于事件的响应式编程;
- 用于依赖注入(inject)的 Dagger2;
- ButterKnife,用于与注释绑定(bind)的字段,与 Dagger2 结合使用,使您的生活更简单;
- Espresso 和 Mockito 用于测试(非常适合在这种环境中使用这种设置)
那么,您认为这会成为新标准吗?如果是这样,你认为应用这个(相对)新指南是个好主意吗?你通常会在你的应用程序中使用这种项目工具/模式/库,或者你认为有更好的东西吗?如果你不喜欢,它,为什么?您认为什么是更好的方法?
(显然每个项目都是不同的,并且对于每个项目总是更好地为所涉及的用户/团队/开发人员设计最佳解决方案/架构。我正在尝试理解/讨论这种模型似乎在很多很多公司中广泛使用他的概念)
感谢您抽出宝贵时间,我希望就此论点进行有趣的讨论,以提高我们的技能/项目。
祝你今天愉快!
最佳答案
我们不能说上述方法是标准的,因为 Android-Sdk 的库和 API 没有任何官方支持。但就现在考虑的开发环境而言,开发人员正在使用这些方法为他们的应用程序编写更好的代码库,更好地理解 future 的开发。
据我所知,只有在开发人员的良好支持下使用这些库才有用,因为它们是开源库。例如我正在使用 AndroidMVC现在是 MVP 模式。据我所知,这是一个非常好的库,因为我从去年开始就在使用它,但是由于只有一个开发人员在该库上工作,所以很难获得对错误修复的支持(忘记增强功能)。
因此,在选择任何开源库时,您应该始终查看所有参数,如支持、增强、错误等。
类似 Glide 的库, ButterKnife , OkHttp , Couchbase lite , retrofit , Volley etc 是 Android 的一些常青库。
但是 OkHttp、Retrofit 和 Volley 再次用于类似的目的,即用于网络。现在开发人员必须根据每个库的优缺点进行选择。
至于问题 - 我们是否应该使用库? 已被考虑。我想是的。我们应该使用这些稳定的库,因为它可以节省大量时间,而且如果我们已经以库的形式拥有它,则重写代码也没有用。
关于android - Model View Presenter 和依赖注入(inject)是否正在成为 Android 开发的新标准?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39346063/