`.myp` 插件如何把传统代码与工业领域能力组合起来?

工业软件不可能把所有能力都预先写进平台核心。客户的行业模型、设备协议、计算规则和特殊流程经常需要扩展;如果每次扩展都修改平台核心,升级、测试和客户隔离都会变得困难。

牧言使用 .myp 插件承载传统代码与领域能力。MES、EM、工艺仿真与授权管理都可以采用插件形态,在共享平台运行时的同时保持业务边界清晰。

插件应该承载什么

插件适合承载稳定、可测试、需要代码表达的领域能力,例如:

  • 设备和工艺领域模型;
  • OPC UA 或其他协议适配;
  • 复杂计算、规则和数据转换;
  • MES、EM 的业务对象和服务;
  • 工艺仿真与授权校验;
  • 对外 REST、Webhook 和事件处理。

平台通用能力则保留在运行时,例如租户、权限、元数据、动态逻辑、任务调度、文件和插件生命周期。

为什么不把所有代码放进平台核心

平台核心一旦和某个行业流程强耦合,就会出现三个问题:不同客户的需求互相影响,平台升级变得谨慎,领域代码难以单独测试和交付。插件把这些变化隔离出来,平台只依赖稳定的扩展契约。

插件解耦不意味着插件可以随意访问数据库或绕过权限。插件仍然需要遵循平台的租户边界、权限模型、序列和审计规则;涉及数据迁移和公共 API 的变更,也要有明确的版本策略。

配置、动态逻辑与插件如何分工

可以用一个简单的判断:变化频繁且需要业务人员调整的内容,优先使用元数据和动态逻辑;稳定且需要代码测试的领域能力,放入插件;涉及现场安全和实时控制的能力,留在专用控制系统。

这样既不会把低代码误用成任意代码执行环境,也不会把每个行业场景都硬编码进平台核心。

相关入口:AI 原生低代码平台