氛围编码 Mendix 小部件 | Mendix

跳到主要内容

氛围编码 Mendix 小工具 

关键要点

  • 像 Copilot、Cursor 和 Warp 这样的 AI 工具可以显著加快速度 Mendix 通过生成完整的功能代码来开发小部件,最大限度地减少手动编码的需求。
  • 这些工具通过处理复杂的 JavaScript/TypeScript 实现,弥合了低代码开发人员的知识差距,而只需要清晰的说明和反馈。
  • AI 辅助方法将组件开发从一个多步骤的技术过程转变为一个对话式工作流程,开发人员在其中描述需求并通过测试进行迭代。
  • AI 生成的代码虽然功能强大,但需要仔细审查其安全性、性能和代码质量问题,因此版本控制和专业代码审查至关重要。

过份给与 Mendix 使用 Copilot、Warp 和 Cursor 等工具进行小部件开发!以下是这一强大组合如何彻底改变了我构建自定义组件的方式。 Mendix 以空前的速度和效率提供小部件和高代码组件。

小部件挑战

作为一个 Mendix 几乎没有或完全没有高代码经验的开发人员,正在开发自定义程序 Mendix 像控件和 JavaScript 操作这样的组件可能看起来有点(或者非常)令人生畏。传统上,这涉及到终端命令、管理多个开发环境以及在不同工具之间切换,前提是您至少已经掌握了基本的 JavaScript/TypeScript 知识。

氛围编码工作流程的颠覆者

我发现了一种改变游戏规则的工作流程,它结合了 微软副驾驶,  or 光标 这彻底改变了我的组件开发流程,速度也提高了好几倍!

传统小部件开发流程

传统组件开发流程:

  • 如果缺少依赖项,请安装 Node、npm 等。这是清单。)
  • 使用终端命令创建一个空的控件
  • 在 VS Code 等编辑器中打开此项目。
  • 添加小部件属性
  • 添加代码
  • 调查
  • 解决问题
  • 构建,测试 Mendix 应用程序,重复

人工智能驱动的方法

Copilot、Cursor 和 Warp 等工具如何利用智能 AI 加速运行:

  • 使用终端命令创建一个空的小部件(与之前相同)。
  • 告诉客服你希望这个小部件实现什么功能。
  • 工具中的代理会为你编写代码。
  • 代理将构建代码,如果出现错误,代理将尝试修复它们。
  • 准备就绪后,它会告诉你做了哪些更改。
  • 在应用程序中进行测试,向客服人员提供反馈,然后重复此操作。

这里有一个视频,展示了我是如何使用 Copilot 构建待办事项列表小部件并将其集成到系统中的。 Mendix 应用程序。

您可以看到:

  1. 创建一个空的组件项目
  2. 利用人工智能代理分析项目并理解这是一个 Mendix 小部件项目
  3. 我解释我希望这个小部件做什么
  4. AI代理生成符合我要求的代码并构建小部件
  5. 我将小部件导入到我的应用程序中时出现错误
  6. 向人工智能代理反馈存在错误
  7. 人工智能解决了这个问题
  8. 我重新导入小部件并在页面上对其进行配置
  9. 运行项目并测试小部件。

视频结尾你会注意到待办事项功能虽然能用,但它们实际上并没有链接到我配置的数据源(而且,有些设置有点奇怪,也完全没必要)。经过反复修改需求、提供错误详情和反馈、询问实现方面的问题、以及仅针对提示或我不喜欢的设置进行调试之后,我终于让它按预期运行了。相信我,这个组件里我一行代码都没写。详情见下文。 您可以在这里查看完整的组件代码。

我们能获得什么

• 利用人工智能代理实现超快速开发。
• 无需学习,只需清晰的说明和反馈即可。
• 可选择不同的AI模型(取决于您的订阅套餐)。免费版也有多种选择!
• 利用项目上下文进行构建意味着代理可以在进行新更改之前读取您现有的代码。
• 此过程不仅限于创建新组件,还可以用于重构和修复现有组件。
• 不仅限于小部件或 JS 操作,还可以用于 Java 开发、样式设置等。
• 自动添加评论、自述文件、说明文档等。
• 弥合知识差距——帮助不熟悉高代码方法的开发人员。
• 不同组件之间代码质量保持一致。
• 学习机会——研究人工智能生成的代码模式可以提高你的技能。
• 快速原型制作——轻松尝试不同的组件方案。
• 现有的高代码开发人员可以真正利用这些工具将速度提高数倍。

警惕这些挑战

当然,它并非完美无缺。以下几点需要注意:

  • 人工智能会产生幻觉(虽然不如以前那么频繁了)。给予清晰的反馈是有效的。
  • 你可能会陷入循环。找出这些循环并告诉代理——如果它让你陷入循环,它也能帮你摆脱循环。
  • 有些错误具有迷惑性,可能并非根本原因。人工智能可能无法识别这一点。
  • 代码就像一锅乱炖(或者如果你喜欢的话,也可以叫它“意大利面条”)。很容易忘记项目中已经存在的代码,或者曾经在其他地方使用过但现在不再使用的函数。人工智能也会犯同样的错误,忘记清理代码,或者在不需要的时候把事情搞复杂。但你可以让智能体进行自我检查,看看是否有更简单的方法来实现同样的功能。
  • 你可以质疑代理的选择!如果代码/功能/修复/逻辑看起来过于复杂或奇怪,可以要求它进行自我审查并简化。
  • 使用版本控制!使用 GitHub,或者更确切地说,让代理将其设置为 Git 仓库,并在每次测试稳定版本后提交。这样,如果出现严重问题(这种情况偶尔会发生),就可以回滚更改。
  • 如果可能,请专业人士审核(强烈推荐)。
  • 性能考量——人工智能未必总能生成最优代码。务必提出质疑!要求生成注释、解释生成的代码以及执行流程。
  • 安全警惕——始终审查生成的代码是否存在安全漏洞。
  • 对特定 LLM 版本的依赖性——不同模型或版本的结果可能有所不同。

最后的一些想法

我一直在构建自定义小部件、Java 和 JavaScript 组件。 Mendix 多年来我一直在开发应用程序,所以这次体验对我来说是一次颠覆性的变革。作为一名经验丰富的开发者,我发现代理程序几分钟就能生成代码,而我自己可能需要花费数小时甚至数天才能完成。无论遇到什么问题,例如方法或逻辑不符合我的预期,或者事情变得过于复杂,我都能针对具体问题提供反馈,进行修复并继续前进。可以肯定地说,我以后一定会继续使用这项功能!

所以……这会取代开发人员吗?我不这么认为。

这并非取代开发人员,而是颠覆。人工智能工具正逐渐成为熟练的协作伙伴,负责处理重复性的编码任务和实现细节,而人类开发人员则可以专注于架构决策、业务逻辑和创新。我相信,最成功的开发人员将是那些学会与人工智能有效合作的人——他们能够提供正确的指导,并懂得何时进行人工控制。开发人员现在无需花费数小时来实现组件功能,而是可以将他们的专业知识投入到真正重要的事情上——学习、创新和价值交付! Mendix 特别是对于开发者而言,这只会提升核心性能。 Mendix 优势:发展迅速。

常见问题

选择你的语言