首页 > 解决方案 > 哪种架构适合whatsapp等实时聊天应用?

问题描述

我想在 Android 中开发一个实时聊天应用程序,例如 WhatsApp 或电报,用于通用客户端应该通过 WebSockets 连接到服务器,甚至离线或在线都必须正常工作。我决定使用像 MVP、MVVM 和 MVI 这样的 Android 架构,但我很困惑哪一个适合我的应用程序

谁能帮我选择其中之一?

我的第二个问题:是否可以将 WebSockets 用于所有 API,或者最好将 WebSockets 和 REST API 一起使用?

谢谢你的帮助

标签: androiddesign-patternswebsocketchat

解决方案


应用架构有很多模式。最著名的是经典的三层架构,例如:

  1. MVC:模型-视图-控制器。
  2. MVP:模型-视图-演示者。
  3. MVVM:模型-视图-视图模型。

所有这些模式都代表了一个主要的类似想法——以一种由不同的通用层分隔的方式来构建项目的代码。每一层都有自己的责任。这就是您的项目变得模块化的原因:分离的代码部分更具可测试性,并且您的应用程序足够灵活,可以进行持续更改。

强烈推荐MVP,因为现在很多开发人员都在使用它。甚至,谷歌也在Github 上提供了它的最佳实践示例。您可以在此处查看完整文档。


推荐阅读