Mendix 创客访谈录|太迅的闪电侠如何发动闪电战

本期创客

微信图片_20240104160846.jpg
房杰
上海太迅自动识别技术有限公司      移动开发经理

大家好,我叫房杰,软件工程专业毕业,目前任职于上海太迅自动识别技术有限公司,任职的部门是软件事业部,担任移动开发经理。

上海太迅是一家专注于自动识别的软硬件系统集成企业,通过应用条码/RFID、蓝牙、视觉和移动计算等技术。帮助企业加强供应链执行,提高运营效率,减少运作成本,实现卓越运作。

作为自动识别行业的专家,主要大客户包含了欧莱雅,百安居等, 为客户提高产品质量、消除生产错误、降低制造成本,从而超越消费者期望。作为国内ERP厂商用友集团的供应链物流移动解决方案的OEM厂商,我们的产品已经成功运行在上千家企业。

创客访谈

MX:在使用Mendix低代码平台开发应用软件前,你和你的部门/团队主要应用什么开发工具?

房杰:之前主要使用的开发工具:

  • Android端开发:Android Studio

  • Web端开发:VS Code、HBuildX

  • Python开发:PyCharm

  • 数据库:DataGrip

MX:以前采用的开发工具有什么局限和问题?

房杰:主要就是Mendix上手快!您看我们公司的名字,“太迅”,为了尽快满足客户的需求,所以需要迅速解决问题。

而以往的情况,我们经常说要搞全栈工程师,这是什么意思呢,就是因为你不得不搞定太多开发工具。

先说说开发阶段哈~ 以前的开发工具需要逐个熟悉使用方式,学习成本较高;而且往往一个开发工具无法解决所有问题,需要在多个开发工具间来回切换使用,相互配合协作开发。

然后是部署阶段,每个开发工具打包后需要独立部署,无法做到和Mendix一样的一次打包部署即所有的打包部署方式。

MX:你是如何认识Mendix低代码的?

房杰:由于经手公司的质检项目,客户公司指定要求使用Mendix开发,遂自学Mendix开发,并在一月内考取中级认证证书。现已采用Mendix低代码平台开发应用6个月左右。

MX:改用Mendix低代码作为应用开发平台的主要原因有哪些?

房杰:因其“设计即开发、所见即所得”的魅力,以及极大提升开发效率的便捷,让我为之深深着迷——Mendix适合发动闪电战!

我可以分享一个业务上的小场景,也看看大家,如果传统模式,怎么实现。

我现在举的例子是“用户管理”模块。在项目中,用户管理模块,我们要覆盖很多个角色,例如系统管理员、质检部门经理、预检员、尺寸质检员、外观质检员、复审专员、审计专员、高管角色……人机交互界面方面,即便同一个界面也要切分不同视角,大家操作同一个部分、步骤,不同人员只能操作他们自己的那一块……数据实体即便同一张表、同一个字段,按照项目规定,我们也要设置不同权限,例如张三有权写入,但李四却只能读取数据等等……

这对于任何项目都是一个常用且头疼的问题,因为开发工作量随着角色与权限的变化而不同,随着每个项目报表展现的类型的不同而变化,是没有办法预先直接构建的。对比传统模式,要么在网上搜索别人开源的质量参差不齐的权限控制模块,要么把老项目代码拷贝过来,这些都没法直接集成。但Mendix内置了用户及权限的管理,只需要打几个对勾就行。请看我接手的配置:

微信图片_20240104160847.png

微信图片_20240104160847_1.png

微信图片_20240104160847_2.png

不知大家注意到没有,上面的图片也揭示着对于数据字段级的安全控制,以及逻辑部分的方法级的执行权限的控制。

最后Mendix开发调试也是很快的。传统模块你如果为了测试7,8种角色,就要退出再登陆,再退出再登陆,几圈后人都晕了。但Mendix能够运行期间快速切换角色,省了我们很大精力:

微信图片_20240104160847_3.png

类似例子还有审计日志模块,在制药领域特别关键,我看Mendix的短视频已经有了很好的展现,在此就不一一赘述。

MX:截至目前,你和你的部门/团队利用Mendix低代码开发的应用有哪些?这些应用是自己部门使用还是支持其他业务部门使用?

房杰:由于接触Mendix的时间还不是太久,目前利用Mendix主要在开发的是质量检验平台

MX:在开发的这些应用中,使用了Mendix的哪些组件/模块?有什么感受/反馈?

房杰:在开发质检平台的过程中主要使用了Excel导入/导出、定时任务、Universal File Viewer、Audit Trail、手写签名等。

  • Excel导入:

微信图片_20240104160847_4.png

  • 文件上传:

微信图片_20240104160848.png

  • AuditTrail:

微信图片_20240104160848_1.png

  • 定时器:

微信图片_20240104160848_2.png

  • JavaAction:

微信图片_20240104160848_3.png

MX:在用Mendix开发的这些应用中,你最引以为傲的应用是哪个?能否具体介绍一下?

房杰:是质量检验平台。

因为这个项目是在周期紧急,对Mendix一知半解的前提下进行的。如果当时采用的是传统的开发方式,我想是无法按期交付的。通过查阅官方文档,自身摸索相结合的方式,快速优质的实现了客户的需求,并在过程中,成功获得了Mendix中级认证证书,这个经历也将是我终身难忘的。

项目整体涉及首页、用户管理、主数据管理、常规检验、报表几个大模块。

其中用户管理使用的是Mendix自带的用户管理模块。只需简单的几步操作,便可轻松实现用户管理功能。

微信图片_20240104160849.png

主数据管理包括物料信息、物料检验计划以及AQL信息三个模块。这些模块主要使用Excel导入功能,快速实现主数据的期初维护。

微信图片_20240104160849_1.png

业务操作包括常规检验和DHR 复核两个核心功能。其中常规检验实现了便捷的物料检验操作,用户可以快速的创建检验记录,系统将会根据物料检验计划自动匹配生成一条/多条检验记录,用户可以选择并分别进行检验。

微信图片_20240104160849_2.png

点击Check按钮进入详细检验界面,对于非数据录入的检验项目,用户仅需点击接受/拒收按钮,即可完成检验。

微信图片_20240104160849_3.png

对于需要录入量具及检验数据的检验项目,用户仅需点击Start按钮,系统即可自动通过JavaAction与硬件设备(诸如游标卡尺、电子秤)等进行交互并获取其测量数据并保存下来,同时展示到界面上,使用时一目了然。在测量的同时,也会根据AQL信息,自动判断数值是否与规定值有出入,如果存在偏差,则自动改变数据颜色,让用户更加清晰的掌握测量信息的准确性。

微信图片_20240104160849_4.png

检验完毕后,用户即可通过Detail或报表界面,搜索并查看详情,通过继承的Export PDF功能,即可一键生成记录表并保存到本地。

微信图片_20240104160850.png

MX:这些应用为实际使用者/客户带来了哪些收益?

房杰:我想阿里最近提倡的“降本增效”是客户得到的最大收益。其中,Mendix在开发过程中为我节省了约67%的人力和时间成本。项目上线后,以其方便快捷的操作,为用户在数据测量和记录阶段免去了以往繁琐的纸质记录工作,提升了53%的工作效率

MX:业务部门或客户对这些应用的使用有什么反馈?

房杰:客户反馈:界面美观大方,操作简便易懂。比如上文提到的一键接受/拒绝以及自动测量数据,让用户省去一边看硬件测量设备一边纸质记录的繁琐工作。再比如自动的与AQL数据比对功能,让用户免去在测量完成后再次对照AQL信息表做相应判断的返工操作。同时附件也能一键上传并体现在报告记录中,替代了原先的文档+附件的传统落后方式。使得他们的工作效率获得了极大提升。

MX:相较以往传统开发,你觉得Mendix的主要优势有哪些?

房杰:我觉得主要有以下特点

  1. 极大减少编码量,提升编码效率

  2. 设计思路即实际执行逻辑

  3. 无需浪费时间在枯燥的界面布局上

  4. 插件来源统一

  5. 降低打包部署成本

MX:相较市场上其它的低代码开发平台,你认为Mendix的优势有哪些?

房杰:个人粗浅观点,微流已经可以吊打市面上其他的低代码开发平台了

微流让编码思路跃然于具体编码之中,我们都知道设计文档对一个程序的重要性,但往往需求是多变的,在紧张的编码开发环节,我们可能不能及时的更新文档,或者即使文档更新了,也会因为项目的紧急而忽略流程图的变更,这让原本重要的流程设计失去了本来的意义。而Mendix却让流程图始终贯穿开发,流程设计的变化即编码逻辑的变化,反之亦然。

同样的效果也出现在数据库的设计上,一幅UML类图的设计完成。即完成了数据库表的设计与关系设计。

我实在想不到还有什么比清晰而快速的实现需求更让开发者兴奋的事。

MX:使用Mendix Pro IDE的环境有哪些感受?

房杰:

  • 界面开发方面Structure mode和Design mode之间的快速切换,可以一键实现快速预览实际运行时的页面效果和设计结构之前的转换。使我可以在正在开发时就知道哪些地方在实际运行时是不适配的,从而快速作出调整;

  • 流程设计方面:我可以通过设计流程图的方式,拖拽模块,在生成一个界面执行逻辑流程图的同时,我的代码编写也同步完成了,这种逻辑编写方式是在常规编码开发中体会不到的;

  • 拥有强大的扩展能力:可以自定义java代码配合javaAction轻松实现在单纯前端编码不满足要求时的扩展开发。还有在现有组件不能满足需求时,可以通过react自定义组件的方式实现多样化的界面需求。

MX:近期你有什么应用开发的计划会采用Mendix低代码平台实现?

房杰:近期想通过Mendix实现用友NC后台的菜单及表单动态配置管理,以及应用内小程序的版本管理等。

MX:你是否会向其他的应用开发者推荐Mendix?你会如何推荐?

房杰:会!我一直相信事实胜于雄辩,我想要通过Mendix为我带来的开发效率与实际项目中的流程清晰度去说服其他的应用开发者。

关于Mendix

作为西门子Xcelerator平台的低代码引擎,Mendix正在迅速成为推动企业数字化发展的首选应用程序开发平台。Mendix让企业能够以前所未有的速度构建应用程序、促进IT团队与业务专家之间开展有意义的协作,并帮助IT团队保持对整个应用程序环境的控制。作为一直被领先的行业分析师视为“领军者和远见者”的低代码平台,Mendix是云原生的、开放的、可扩展的、敏捷的,并且经过实践验证。从人工智能和增强现实,到智能自动化和原生移动,Mendix和西门子Xcelerator已成为“数字优先”企业的中坚力量。Mendix已被46个国家的4,000多家企业采用,并建立了由30多万名开发人员组成的活跃社区,这些开发人员使用该平台创建了20多万款应用程序。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/601029.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

安装Keras用于影像分割

conda create -n tfkeras2024 python3.9.18 activate tfkeras2024 pip install tensorflow-gpu2.9.0 pip install keras pip install scipy pip install ipykernel ipython python -m ipykernel install --name tfkeras2024 删除环境conda remove -n tfkeras2024 --all

谈一谈报考高校异地研究院的利弊

这篇文章是抖音和b站上上传的同名视频的原文稿件,感兴趣的csdn用户可以关注我的抖音和b站账号(GeekPower极客力量)。同时这篇文章也为视频观众提供方便,可以更加冷静地分析和思考。文章同时在知乎发表。 前年国家出台文件&#x…

Jenkins修改全局maven配置后不生效解决办法、以及任务读取不同的settings.xml文件配置

一、修改Global Tool Configuration的maven配置不生效 说明:搭建好jenkins后,修改了全局的settings.xml,导致读取settings一直是之前配置的。 解决办法一 Jenkins在创建工作任务时,会读取当前配置文件内容,固定在这…

目标检测:深度学习引领视觉智能的未来

目标检测:深度学习引领视觉智能的未来 目标检测是计算机视觉领域中的一项重要任务,旨在从图像或视频中确定和定位特定物体的存在。这一领域的发展在很大程度上得益于深度学习技术的崛起,为机器在理解和处理视觉信息上带来了质的飞跃。本文将…

Scrum的工件

我们采用了Scrum进行开发方面的管理,那么所有的计划和工作都应该是透明的,这给了我们检查这些东西的机会,以便能够即时做出调整来适应即将发生的变化。 那么Scrum为我们设计了一些工件帮助我们检查我们的工作和计划,每个工件都有…

【学习笔记】[AGC060D] Same Descent Set

本来是想做点多项式调节一下&#xff0c;结果发现这玩意太肝了&#xff0c;似乎并没有起到调节作用。 设 f ( S ) f(S) f(S)表示符号为 < < <的下标集合恰好为 S S S的方案数&#xff0c;因为两个序列完全等同&#xff0c;因此答案等于 ∑ S ⊆ { 1 , 2 , . . . , n …

如何在SpringBoot中优雅地重试调用第三方API?

1.引言 在实际的应用中,我们经常需要调用第三方API来获取数据或执行某些操作。然而,由于网络不稳定、第三方服务异常等原因,API调用可能会失败。为了提高系统的稳定性和可靠性,我们通常会考虑实现重试机制。 2.重试机制的必要性 第三方API调用可能面临各种不可预测的问题…

【面试高频算法解析】算法练习5 深度优先搜索

前言 本专栏旨在通过分类学习算法&#xff0c;使您能够牢固掌握不同算法的理论要点。通过策略性地练习精选的经典题目&#xff0c;帮助您深度理解每种算法&#xff0c;避免出现刷了很多算法题&#xff0c;还是一知半解的状态 专栏导航 二分查找回溯&#xff08;Backtracking&…

【华为OD真题 Python】精准核酸检测

文章目录 题目描述输入描述输出描述示例1输入输出说明备注代码实现题目描述 为了达到新冠疫情精准防控的需要,为了避免全员核酸检测带来的浪费,需要精准圈定可能被感染的人群。 现在根据传染病流调以及大数据分析,得到了每个人之间在时间、空间上是否存在轨迹的交叉。 现…

C#,快速排序算法(Quick Sort)的非递归实现与数据可视化

排序算法是编程的基础。 常见的四种排序算法是&#xff1a;简单选择排序、冒泡排序、插入排序和快速排序。其中的快速排序的优势明显&#xff0c;一般使用递归方式实现&#xff0c;但遇到数据量大的情况则无法适用。实际工程中一般使用“非递归”方式实现。 快速排序(Quick Sor…

【kettle】pdi/data-integration 集成kerberos认证连接hdfs、hive或spark thriftserver

一、背景 kerberos认证是比较底层的认证&#xff0c;掌握好了用起来比较简单。 kettle完成kerberos认证后会存储认证信息在jvm中&#xff0c;之后直接连接hive就可以了无需提供额外的用户信息。 spark thriftserver本质就是通过hive jdbc协议连接并运行spark sql任务。 二、…

2020年认证杯SPSSPRO杯数学建模A题(第二阶段)听音辨位全过程文档及程序

2020年认证杯SPSSPRO杯数学建模 A题 听音辨位 原题再现&#xff1a; 把若干 (⩾ 1) 支同样型号的麦克风固定安装在一个刚性的枝形架子上 (架子下面带万向轮&#xff0c;在平地上可以被水平推动或旋转&#xff0c;但不会歪斜)&#xff0c;这样的设备称为一个麦克风树。不同的麦…

bootstrap5实现宠物商店网站 Cat-Master

一、需求分析 宠物商店网站是指专门为宠物商店或宠物用品商家而建立的在线平台。这种网站的功能通常旨在提供以下服务&#xff1a; 产品展示&#xff1a;宠物商店网站通常会展示宠物食品、玩具、床上用品、健康护理产品等各种宠物用品的图片和详细信息。这样&#xff0c;潜在的…

【华为OD真题 Python】最大坐标值

文章目录 题目描述输入输出示例1输入输出说明示例2输入输出说明实现代码题目描述 小明在玩一个游戏,游戏规则如下: 在游戏开始前,小明站在坐标轴原点处(坐标值为0)。 给定一组指令和一个幸运数,每个指令都是一个整数,小明按照指定的要求前进或者后退指定的步数。前进代…

【洛谷千题详解】P5704 【深基2.例6】字母转换

简单的字母转换&#xff0c;注意&#xff1a;小a与大A的ASCLL码值相差32&#xff01; AC代码&#xff1a; #include<bits/stdc.h> using namespace std; int main() {char a;cin>>a;char ba-32;cout<<b<<endl;return 0; }

STL map容器与pair类模板(解决扫雷问题)

CSTL之Map容器 - 数据结构教程 - C语言网 (dotcpp.com)https://www.dotcpp.com/course/118CSTL之Pair类模板 - 数据结构教程 - C语言网 (dotcpp.com)https://www.dotcpp.com/course/119 刷到一个扫雷的题目&#xff0c;之前没有玩怎么过扫雷&#xff0c;于是我就去玩了玩…

什么是原生ip和广播ip

很多外贸客户有时候因为业务需要香港多IP vps主机&#xff0c;会需要原生ip服务器。什么是原生IP呢?原生IP服务器就是指该IP的注册地址和VPS服务器机房所在的国家一致的IP。反之&#xff0c;非原生ip就是指IP的注册地址与VPS机房所在地不一致的IP&#xff0c;也就是常说的这个…

攀登者2 - 华为OD统一考试

OD统一考试 分值: 200分 题解: Java / Python / C++ 题目描述 攀登者喜欢寻找各种地图,并且尝试攀登到最高的山峰。 地图表示为一维数组,数组的索引代表水平位置,数组的元素代表相对海拔高度。其中数组元素0代表地面。 例如:[0,1,2,4,3,1,0,0,1,2,3,1,2,1,0],代表如下…

原神单机版【完全无脑搭建】⭐纯单机⭐*稳定版*

版本介绍 版本3.7稳定版【过分追新并不稳&#xff0c;合理才完美】 独家原神&#xff0c;游戏内自带剧情任务&#xff0c;完美仿官&#xff0c;一比一完美复制&#xff01; 已经拥有完美剧情、任务、副本、卡池、深渊、全物品、和全部功能和皮肤。 送&#xff1a;GM全套工具…

使用.Net nanoFramework获取ESP32板载按键的点击事件

本文以 ESP32-S3-Zero 板载的按键为例&#xff0c;介绍了GPIO的使用方法&#xff0c;以及如何获取按键的点击事件。板载按钮作为自带的天然用户按钮&#xff0c;除了其本身的功能外&#xff0c;也可以作为某些应用场景下的简单的交互方式。 1. 引言 对于一般的产品来说&#x…