使用 Firebase 进行 Flutter 清洁架构
欢迎免费预览完整的 Flutter 社交媒体应用项目,该项目采用清洁架构设计模式构建,并以 Firebase 作为后端。此预览包括用户认证模块的实现。
本项目演示了诸如清洁架构、Firebase 集成、用于状态管理的 Bloc 模式以及用于本地存储的 Hive 等高级主题的使用。
完整课程将进一步扩展,包括发布动态和聊天系统等功能。
结构
该应用程序遵循清洁架构的原则,并分为三个主要层
-
数据层:此层包括模型、数据源(远程和本地)以及存储库。它与 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 和清洁架构原理的理解。
