android - Model View Presenter 和依赖注入(inject)是否正在成为 Android 开发的新标准?

标签 android design-patterns rx-java mvp dagger-2

在过去的一段时间里,我有机会出于个人原因开发了一些应用程序,看看今天的公司在 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/

相关文章:

ios - 在iOS的适当位置放置应用程序宽日期格式?

java - RxJava Android 压缩许多不同类型的请求

android - AppWidgetHost 不更新小部件

android - 音频无法通过 HTTPS 在 chrome-android(LG G Pro 2 D838 上的 Kitkat 4.4.2)上播放

android - SQLite数据库在android中运行

c# - 您如何对此类设计进行分类?

android - 使用 OkHttp 分段上传大文件

design-patterns - 静态工厂方法或创建方法

android - Rxjava2 只是方法 - 如何在另一个线程上运行房间插入?

java - RxJava 线程安全