HCompass
模块化、可复用的 HarmonyOS 快速开发框架
介绍
HCompass 是一个基于 HarmonyOS NEXT / ArkTS / ArkUI 的快速开发框架,设计初衷是打造一个"模块化、可复用、开源"的开发生态。让研发人员能够像搭积木一样,通过组合不同功能包快速构建应用,而非每次都从零开始开发。
核心理念
模块化
以"功能包"为核心单元,每个功能包都是一个独立的业务模块,可以单独开发、测试和复用。
可复用
通过封装通用组件、工具或页面等模块,让研发人员无需深入了解细节,即可专注于上层业务的开发。
开源生态
鼓励开发者贡献开源功能包,不断积累迭代通用的,甚至是不同行业的,不同场景特有的核心模块,形成共享生态,减少重复劳动。
适用场景
- 需要快速搭建 HarmonyOS 应用的团队或个人
- 希望通过模块化方式组织代码的项目
- 需要在多个项目间复用功能模块的场景
- 对代码规范和架构设计有明确要求的团队
核心特性
四层架构
- Core(框架核心):框架基础能力,不涉及具体业务。包括基础父类、设计系统、通用组件、数据库、依赖注入、导航系统、网络请求、工具类等。
- Shared(共享契约层):定义功能包之间的共享契约。如果功能包需要对外提供服务或资源,都需要在 Shared 层定义好共享业务属性。
- Packages(业务功能包层):具体的业务功能包,每个功能包都是一个独立的业务模块。通过 DI 注入实现功能包之间的解耦。
- Entry(应用入口):应用入口,负责初始化框架和配置应用。
依赖注入
通过依赖注入(DI)实现模块间解耦,功能包可以独立开发、测试和复用。功能包通过 Shared 层定义的契约对外提供服务,其他模块通过 DI 注入获取服务实例。
设计系统
内置设计系统,提供统一的颜色、间距、字体等视觉规范,以及封装好的基础组件。集成 IBest-UI-V2 组件库,提供丰富的 UI 组件。
状态管理
强制使用 V2 版本的状态管理 API(@ObservedV2 / AppStorageV2 / PersistenceV2),确保代码的一致性和可维护性。