VTJ.PRO 在线应用开发平台的术语表

0 阅读3分钟

术语表

本术语表定义了 VTJ.PRO 代码库中使用的核心技术术语、领域概念和架构缩写。它为工程师理解 AI 驱动的低代码引擎及其周边生态的特定命名法提供了参考。

iShot_2026-01-04_15.59.29.png

1. 核心平台概念

DSL(领域特定语言)

应用元数据的结构化 JSON 表示,包括页面结构、状态、动作和样式。VTJ.PRO 使用与 @vtj/core 兼容的特定 DSL 格式。

  • 实现:由 DslService 管理,负责处理 CRUD 操作和生命周期转换。
  • 类型
    • project:低代码应用的根配置。
    • file:单个页面或组件的定义。
    • history:用于回滚的版本快照。
    • material:可复用 UI 组件的定义。

Coder(出码)

将 JSON DSL 转换为可执行源代码(Vue 3、TypeScript、Vite)的过程。

  • 关键功能dslToVue 使用 @vtj/coder 库生成人类可读的代码。
  • 项目生成genProject 根据平台模板(Web、H5 或 UniApp)将生成的代码打包成 ZIP 压缩包。

Workbench(工作台)

开发者管理资源的主要用户界面。

  • 实体:包括“我的应用”(LowcodeAppEntity)、“我的模板”(TemplateEntity)和“协作者”。
  • 路由:前端中定义在 /workbench 前缀下。

自然语言到代码实体的映射

下图展示了高层领域概念如何映射到代码库中的特定类和服务。

“领域到代码的映射”

flowchart TD
    subgraph Natural Language Space
        A[低代码应用]
        B[可视化模式]
        C[AI助手]
        D[代码生成]
    end
    subgraph Code Entity Space
        E[LowcodeAppEntity]
        F[DslService]
        G[AIService]
        H[DslService.dslToVue]
    end
    A -- 存储元数据 --> E
    B --> F
    C --> G
    D --> H
    G -- 生成 --> B
    F -- 馈入 --> H

2. AI 与大语言模型术语

Agent(智能体)

利用大语言模型(LLM)执行代码生成、UI 设计或 Bug 修复等任务的自主或半自主工作流。

  • 实现AgentModule 编排用户与模型之间的交互。

Prompt System(提示系统)

用于指导 LLM 完成特定任务的预定义指令集。

  • Coder Prompt:专门用于生成 DSL 或 Vue 代码。
  • Image Prompt:用于多模态任务(图像转 UI)。
  • 实现PromptService 从数据库或文件系统中获取模板。

Topic & Chat(主题与对话)

“Topic”是一个持久的对话线程,“Chat”代表该线程中的单条消息。

  • 实体TopicEntityChatEntity

3. 基础设施与架构

多平台运行时

允许同一低代码 DSL 在不同环境中运行的抽象层。

  • 支持的平台WebH5UniApp
  • 提供者createProvider 根据平台类型初始化运行时环境。

RBAC(基于角色的访问控制)

用于管理权限的安全模型。

  • 实体UserEntityRoleEntityPermissionEntity

数据流:DSL 生命周期

“从编辑器到生产的 DSL 数据流”

sequenceDiagram
    participant IDE/Designer
    participant DslService
    participant MySQL (DslEntity)
    participant @vtj/coder
    participant Object Storage

    Note over IDE/Designer, MySQL: 开发迭代
    IDE/Designer->>DslService: saveDsl (DslType.dev)
    DslService->>MySQL (DslEntity): 更新开发记录
    IDE/Designer->>DslService: publishFromDev()
    DslService->>MySQL (DslEntity): 复制开发记录到生产记录
    DslService->>@vtj/coder: dslToVue()
    @vtj/coder-->>DslService: 生成的源代码
    DslService->>Object Storage: 上传 ZIP (genProject)

4. 技术缩写

缩写全称描述代码示例
OSS对象存储服务用于存储上传的资产和生成的项目 ZIP 包。backend/src/core/oss/oss.service.ts
LLM大语言模型平台使用的底层 AI 模型(OpenAI、DeepSeek 等)。backend/src/core/llm/llm-model.entity.ts
CRUD创建、读取、更新、删除标准的数据库操作,通过 BaseCrudService 抽象。backend/src/core/base/base-crud.service.ts
JWTJSON Web 令牌用于前端和后端之间的无状态认证。backend/src/core/auth/auth.service.ts
DTO数据传输对象用于定义 API 请求和响应模式的对象。backend/src/business/lowcode/dto/dsl.dto.ts

5. 开发工具术语

模板打包

将基线项目结构(Web、H5、UniApp)压缩成 ZIP 包的过程,以便作为新低代码应用的脚手架。

  • 脚本scripts/template.mjs 自动将 templates/ 目录压缩到 backend/zip/

发布变体

  • vtj-pro-full:包含完整的 monorepo 源代码和部署脚本。
  • vtj-pro-cloud:针对云部署优化的精简版本,包含特定的环境配置。
  • 脚本scripts/publish.mjs

参考资料