使用 Firebase 进行 Flutter 清洁架构

欢迎免费预览完整的 Flutter 社交媒体应用项目,该项目采用清洁架构设计模式构建,并以 Firebase 作为后端。此预览包括用户认证模块的实现。

本项目演示了诸如清洁架构、Firebase 集成、用于状态管理的 Bloc 模式以及用于本地存储的 Hive 等高级主题的使用。

完整课程将进一步扩展,包括发布动态和聊天系统等功能。

获取课程

App Screenshot

结构

该应用程序遵循清洁架构的原则,并分为三个主要层

  • 数据层:此层包括模型、数据源(远程和本地)以及存储库。它与 Firebase 交互以获取远程数据,并与 Hive 交互以获取本地数据。

  • 领域层:此层包含核心业务逻辑(用例)和实体定义。

  • 表示层:这里是 UI 相关逻辑的所在地。它使用 Bloc 进行状态管理。

该应用程序具有三个主要功能/模块

  • 认证:处理用户认证,包括本地认证和通过 Firebase 进行的远程认证。

  • 动态发布(预览中不包含):处理用户帖子的创建、获取和管理。

  • 聊天(预览中不包含):管理用户之间的实时聊天功能。

所有模块均遵循上述架构层,并相应地组织在其各自的目录中。

用法

  • 用户认证:用户可以注册、登录和注销。

  • 动态发布:用户可以查看动态。即将推出:添加和删除动态。

  • 聊天:用户可以与其他用户实时聊天。

请注意,代码的编写方式易于阅读、扩展和维护。这符合清洁架构的原则,旨在分离关注点,使代码库更易于理解和灵活。

自定义

您可以根据自己的需求随意自定义代码。代码库是模块化和灵活的,易于添加、删除或修改功能。

依赖项

该应用程序构建时使用了各种有助于实现其功能的依赖项

  • Firebase Core、Firestore 和 Auth 用于后端操作。
  • Hive 用于本地数据库操作。
  • Bloc 用于状态管理。
  • Equatable、UUID、Built Value 用于数据处理。
  • Google Fonts 和 Flex Color Scheme 用于 UI 样式。
  • 使用 fpdart 进行函数式错误处理(预览中不包含)
  • 以及其他几个用于测试和模拟的。

完整课程

有关完整的 Thus 功能集,包括动态发布和实时聊天功能,请考虑购买完整课程。完整课程将指导您构建更广泛的应用,从而加深对 Flutter、Firebase 和清洁架构原理的理解。

获取课程

GitHub

查看 Github