提高应用程序性能的机会
应用程序性能是影响无缝和愉悦用户体验的关键因素之一。在当今快节奏的环境中,用户对于缓慢的加载时间和连接问题几乎没有耐心。
虽然应用程序性能取决于许多因素,但有几个 Mendix- 可以遵循特定和常见的开发模式,以避免出现性能下降的情况 Mendix 应用程序部署。这些是多年来辛苦积累的最佳实践。 Mendix 社区并在不同的地方产生共鸣,例如 Mendix 学院课程、论坛、培训等文档。
我们经常看到 Mendix 开发团队花费大量时间来培训和执行这些最佳实践。即便如此,新开发人员也会经常犯下难以发现或耗时的反模式。对数千份匿名调查的统计分析 Mendix 研究表明,许多应用程序都有相当大的空间来实施性能最佳实践。例如,70% 的 Mendix 应用程序有一个或多个反模式“在循环内提交每个更改的对象”,大约 45% 的 Mendix 项目有几个微流可以转换为纳流以获得更好的性能。
为了解决这个问题, Mendix 开发团队使用昂贵的同行评审流程。 Mendix 客户甚至提到了“四眼原则”,即团队成员应在提交之前检查每位开发人员的工作,以查找反模式。这意味着需要大量的检查时间,通常需要昂贵的经验丰富的开发人员。

推出 MxAssist Performance Bot
如果我们可以将这种同行评审或至少部分评审自动化,结果会怎样?如果有一位虚拟的共同开发人员(而不是您忙碌、经验丰富的同事)可以监督您发现甚至修复这些问题,结果会怎样?这就是我们在构建 MxAssist Performance Bot 时所追求的目标 Mendix 9.
MxAssist Performance Bot 是一款智能虚拟协同开发者机器人,可帮助您提高应用的性能。它通过检查您的项目模型来实现这一点 Mendix 在构建应用程序时实时了解开发最佳实践 Mendix 工作室专业版。
它是通过对数千份匿名 Mendix 应用程序来学习常见的反模式以及最佳实践 Mendix 专家服务和 Mendix 在开发微流程、领域模型、页面等时最有价值合作伙伴 (MVP)。
罗纳德·卡特塞尔斯 Mendix Daywize 的 MVP 认为,“这类工具的优势在于你已经培训了开发人员,因为初级开发人员在开发完某些东西后可能会通过性能机器人查看他们所做工作的统计数据。我认为初级建模人员会非常喜欢这样的东西……这对帮助他们非常有用。”
MxAssist Performance Bot 如何工作?
一般来说,它提供三种类型或级别的援助:

第一个,也许是最重要的帮助是检测。一旦触发,机器人就会检查项目模型并识别性能反模式,或者换句话说,就是错过的性能最佳实践。为了方便起见,机器人使开发人员能够精确定位并导航到包含反模式的特定文档/元素,以及受该反模式影响的所有文档/元素。这使开发人员能够快速找到问题并深入研究根本原因和受影响区域。
在我们的私人 Beta 测试期间,客户使用该机器人检查了一些大 Mendix 他们多年来建立的项目。机器人检测到了数百个缺失的最佳实践案例,在一个项目中,检测到了数千个!
罗纳德·卡特塞尔斯 Mendix Daywize 的 MVP 如此说道:
“我最喜欢这个性能机器人的一点是它的视图,它可以让我概览它告诉我需要研究的所有事情。这真的很有帮助,因为我们的模型是在 Mendix 2.3,从那时起已经迁移到 Mendix “3、4、5、6、7、8、9!”

现在,如果机器人列出了所有这些问题怎么办?那么开发人员,尤其是新手开发人员,可能会开始思考,“为什么这些情况首先是反模式?我们应该怎么做?”
我们相信,任何检测(诊断)都应有良好的解释和建议(处方)。这就是为什么 MxAssist Performance Bot 会解释已发现的问题及其潜在影响,并提供解决问题的分步指南。
Ivo Sturm, Mendix Firstconsulting 的 MVP 认为该解释“......有助于理解建议,对初级开发人员很有帮助,并提供了很多背景信息。”
罗纳德·卡特塞尔斯 Mendix Daywize 的 MVP 也认为它非常有趣:“我真正喜欢的是,我只需点击弹出窗口中的链接,它就会立即将我转到文档,并显示您对此的描述以及为什么强调这些问题的解释。这真的很棒!”

如果机器人甚至可以在您喝咖啡时为您解决问题,那会怎样?好吧,MxAssist Performance Bot 在开发人员确认后,在某些情况下可以自动实施最佳实践并通过重构项目模型来解决问题。

另一个令人兴奋的功能是配置面板,您可以在其中选择一个模块或文档并根据特定的最佳实践对其进行检查。任何组合都是可能的!假设开发人员想要根据特定的最佳实践检查微流。他们将导航到微流部分,单击以检查有问题的微流,然后选择他们感兴趣的特定微流最佳实践。点击确定后,他们将返回性能机器人面板并单击“检查”以检测配置中所选微流和最佳实践的任何潜在反模式。
配置面板等功能允许您以自己认为最合适的方式使用机器人,使您能够创建最好的应用程序,同时减少事后修复和调试所花费的时间。

您应该在何时在应用程序开发周期中使用 MxAssist Performance Bot?
您可能会问,在应用程序开发过程中何时以及如何使用机器人。当然,这取决于您的团队。以下是一些 Mendix 开发人员思考一下:
穆罕默德·西迪基 Mendix Auraq 的 MVP 告诉我们,“如果我在项目中实际使用它,那么我会在进行任何提交之前,一旦我完成了功能,我就会运行一个快速测试,看看是否有可以改进的地方。如果有,那么我就会进行那些更改,然后提交。但可能不是每次提交,因为我经常提交,可能在每个故事或每个功能之后提交。”
易卜拉欣 Mendix Emagiz 的开发人员认为,使用 MxAssist Performance Bot“……应该是完成定义的一部分。我们可以在故事转移到完成之前添加一个使用 PB 的步骤。使用 Performance Bot 进行检查将成为我们团队可以使用的检查表的一部分。”
都铎·尼阿克苏 Mendix Capegroep 的开发人员也有类似的看法:“我的故事完成后,我想我已经准备好进行评审了,我会首先使用性能机器人,然后如果性能机器人没有弹出任何内容,则请求评审......我认为应该在冲刺中有一些故事需要仔细检查、调查,然后修复它们。”
MxAssist Performance Bot 能提供什么价值?
首先,MxAssist Performance Bot 可以自动检测性能反模式,减少同行评审的需要,同时培训新员工,从而提高团队的效率和生产力。 Mendix 开发人员的最佳实践。
穆罕默德·西迪基 Mendix Auraq 的 MVP 认为,“总的来说,这将使开发人员的生活变得更轻松,尤其是初级开发人员,也包括高级开发人员和专家。”
其次,MxAssist Performance Bot 可以提高 Mendix 应用程序。我们已经使用 Gatling 框架 向 Mendix 通过执行真实的运行时 Mendix 项目应用程序。例如,我们发现实体的继承级别过多,这是机器人检测到的反模式,可能会导致性能显着下降——每个专业化最高下降 25%。

正如 Ivo Sturm 所说, Mendix Firstconsulting 的 MVP 表示,MxAssist Performance Bot 可以“作为初级开发人员的学习工具,以及高级开发人员的提醒器”。
你为什么不试一试呢?下次你做模特的时候 工作室专业版 9,运行 MxAssist Performance Bot。它可能会让您面带微笑。🙂