平台开发
约 1018 字大约 3 分钟
2026-10-16
取得平台源码权限后,可在平台主仓修改 Core、Things、公共组件和管理前端。先跑通现有服务,再选择需要修改的模块;新增独立业务应用请从应用开发开始。
推荐阅读顺序
- 环境安装与本地运行:安装平台工具链,启动本机服务与管理端。
- 平台后端开发:API/RPC、权限、迁移、缓存与调度。
- 平台前端开发:管理页面、共享组件与生成客户端。
- 接口合同与 SDK 维护:生成、同步与兼容性检查。
- AI 开发与验证交付:仓库规范、定向验证与发布准备。
专题手册
入门页说明开发流程;下面的专题提供配置、代码示例、调用语义和验证步骤,可按当前任务直接查阅。
后端基础与扩展
| 专题 | 内容 |
|---|---|
| 服务初始化 | 工具、骨架、模块归属、依赖与启动生命周期 |
| 配置文件 | common.yaml、环境变量、前后缀与可选模块 |
| 连接平台服务 | direct/grpc、客户端注入、身份与重试边界 |
| HTTP/RPC 中间件 | 认证、上下文、错误转换和安全边界 |
| 数据库 | 模型、仓储、事务、子查询与幂等迁移 |
| 分布式缓存 | 分层读取、业务键、失效与并发回源 |
| 消息队列 | 广播/队列、信封、启动与投递语义 |
| 定时任务 | Cron、延时处理、注册与多实例幂等 |
| 接口权限 | 资源/动作、路由同步与角色授权 |
| 对象存储 | 上传、临时确认、私有下载与删除补偿 |
| 第三方与 Hook | 开放令牌、服务/能力注册、签名、扩展点 |
实时通信与业务能力
| 专题 | 内容 |
|---|---|
| WebSocket | 连接、频道、授权、心跳与重连 |
| 设备消息 | 上下线、属性/事件/行为、内部主题与控制确认 |
| 数据分析 | 数据源、查询配置、聚合、批量与权限过滤 |
| 项目与区域数据权限 | 资源模型、区域优先级、分享与物模型控制 |
| 字典扩展 | 列表/树、扩展字段、页面接入和种子更新 |
前端生成客户端与页面接入示例在平台前端开发,Swagger 的生成、检查和发布在合同维护。旧插槽的迁移说明并入 Hook 专题。
仓库与模块
| 位置 | 职责 | 修改前确认 |
|---|---|---|
backend/core/ | 用户、企业、角色、路由、菜单、任务等平台通用服务 | 身份和权限是否影响其他服务 |
backend/things/ | 产品、设备、项目、物模型、数据与消息处理 | 设备归属、项目范围和上下行合同 |
backend/share/ | 平台内部公共组件与工具 | 调用方与序列化兼容性 |
backend/cmd/ | AllInOne、云端、边缘等运行入口 | 本次实际启用的服务及运行配置 |
backend/apps/ | 平台内行业服务及兼容网关 | 模块是否属于当前运行入口 |
apps/web/ | 平台前端 workspace 和共享包 | 业务页面与共享能力的归属 |
后端通过 Go Workspace 组织,backend/go.work 是模块入口清单;并非每个服务目录都应新建 go.mod。AllInOne 是一种运行方式,Core/Things 的 API 与 RPC 合同仍由对应服务维护。
从平台到独立应用
平台维护 .api/.proto 原始定义、服务实现和合同生成器。ur-kit 按固定平台提交导出公开合同、SDK 与共享快照,应用按发布标签消费。平台内部直连调用不能当作外部应用接入方式。
平台文档面向有源码权限的开发者,源码地址由授权渠道提供。下文相对路径均相对获得的主仓根目录;无需把私有仓地址或运行凭据写进公开文档。
更新日志
2026/10/16 19:46
查看所有更新日志
b3b4d-docs(平台开发): 恢复有效专题并更新当前实现示例于1a4a7-docs(开发指南): 重建平台与应用开发路线于
