明道云的应用能不能单独部署和二次开发?

分享 二次开发扩展开发  收藏
27 / 3584

有过低代码开发工具使用经验的用户初识明道云后,总有一个想法,希望明道云也能够像过去的快速开发工具一样提供应用独立编译和部署的能力,最好还要能够输出源代码,再进行二次开发。

明道云今天肯定是不能支持的,但用户的诉求我们肯定要想办法满足。在路线图上,我们规划了插件架构(Plug-in Architect),允许用户在控件、视图、工作流节点、自定义页面组件等环节创建自定义插件。这才是二次开发的正确姿势。它能够保证核心产品能力尽力满足大多数场景,也能够让衍生场景需求能够被有效满足。确定这个路线的主要原因包括几个:

  1. 明道云定位于零代码应用平台,意思是让大多数的应用搭建过程能够被非开发人员掌握。因此,保证产品主体的零代码“应用”特色是很关键的。二次开发也好,集成开发也好,都只是一个可选的扩展方式,不是使用产品的基本条件。
  2. 无论怎样的二次开发和扩展开发,都不应该影响产品的迭代更新。我们要保证客户能够持久用上最新的版本,而不会和任何扩展开发产生冲突。所以,插件模式能够很好地解决这组矛盾。
  3. 独立部署明道云搭建的应用是不可能的,因为明道云是一个“应用平台”,应用需要在平台上运行。所以,哪怕是一个单项应用,也需要平台首先运行。在软件领域,基于平台(框架)的运行时是一个普遍现象。Java 开发的应用也需要 Java 环境支持,更不要说各种依赖的中间件、数据库等环境了。明道云应用平台封装了应用运行所需要的所有环境,私有部署客户可以通过容器快速部署,SaaS 客户则完全不用操心这些基础设施问题。这种套娃式的安排,其实是软件业持续进步的基本方式。利用明道云这些能力,用户可以从昂贵和复杂的 DevOps 过程中解脱出来,专注于应用实现本身。

我们理解有一部分用户需要源代码是出于安全可控的目的,可能并非是用于二次开发过程。这是另外一个话题了。