Mendix 创客访谈录|综合业务展示大屏应用开发

news2024/11/25 13:17:03

本期创客

图片 1.png
刘书智  西门子工业领域专家

我在西门子工厂自动化工程有限公司工作。一直从事SCADA产品的技术支持工作,已经过去17个年头了。赶上数字化发展的浪潮,不断学习各种IT技术,践行 IT与OT融合,希望借助自己的IT知识助力OT的发展。

创客访谈

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

刘书智:我所在的部门其实并不专职做开发类型的工作。但为了配合整个组织的数字化转型,会参与一些数字化相关的项目开发。涉及到的开发工具包括 VisualStudio 20xx系列,VS code,PyCharm等。主要参与一些高级语言程序的开发,例如C++、C#、Python及Java等。

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

刘书智:我过去参与的开发工作基本都是高级语言的开发。在编写Windows 可执行应用程序(*.exe)时还算方便。但是在编写Web 应用类程序时,就会比较吃力。因为要学习很多新的开发技术,HTML、JavaScript、CSS,还有各种前端框架、后端工具等等。掌握这么多的新技术需要花费大量的时间。另外对于这些新技术,虽然短期学会了,但是由于没有足够的经验,难免使开发过程磕磕绊绊,效率低下。

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

刘书智:2021年部门组织了一次Mendix产品宣介会,我才知道这个产品。通过宣介会,了解到使用它来编写Web 应用真方便。尤其对于我这个 OT工程师来说。于是就利用业余时间,开始了Mendix学习之旅。

从2021年开始接触Mendix,到现在也就2年多。前面大部分时间都是在Mendix官网的Learning Path 上进行学习。真正开发实际的应用,也就不到1年的时间。

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

刘书智:

  • 开发周期大大缩短。得益于Mendix的模型驱动技术,可以快速建立一个应用的数据结构。然后根据业务流程,使用其图形化的微流来搭建业务逻辑。最后支持各种形式的快速部署,很快就可以看到跑起来的应用雏形。然后就可以不断迭代。
  • 丰富的模块库。Mendix应用市场功能模块丰富多样,涵盖了大多数的业务应用需求。包括Email的收发模块,Excel 的导入导出模块,数据库的连接模块,REST通信模块,MyID单点登录模块等。通过这些官方模块,既降低了我们的开发难度,同时也提高了这些功能的稳定性及可靠性。
  • 强大的扩展能力。虽然Mendix提供了丰富的功能模块,还有用于页面呈现的图形组件。但是它仍然提供了强大的扩展能力。在功能方面,我们可以使用Java编写自己的扩展功能(JavaAction)。这对于具有Java代码基础的开发者非常友好。只要是Java能够实现的复杂功能,Mendix都可以扩展来实现。在页面呈现方面,我们可以使用Mendix创建的程序框架,通过TypeScript、React等技术来编写定制的图形显示组件。例如可以基于Echarts开源技术,编写出类似的Mendix显示组件,从而来丰富Mendix的页面展示功能。
  • 其它便捷的功能。在使用一段时间后,发现Mendix还有很多高效编程的功能。例如对于模型的更新,会自动更新所有使用到该模型的页面及微流。对于微流的更新,也会自动更新所有使用到该微流的页面及微流。根据领域模型,一键生成所有实体的预览及编辑画面,方便至极。丰富的用户权限管理功能,勾勾选选,就完成了一套复杂的权限管理需求。模块化的理念贯穿页面、微流、模块,几乎Mendix中所有的对象。这使多人开发、项目重组、功能复用等都极其方便。便捷的调试诊断功能。不管是电脑浏览器,还是手机浏览器,访问测试环境易如反掌。不管是本地运行,还是云上运行,随时可以开启debugger,快速定位故障点。支持部署在各种运行环境,简直不要太方便。还有很多,就不一一赘述了。

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

刘书智:我们部门使用Mendix开发了业务大屏展示平台,还有培训管理系统平台。这些应用都是给我们部门自己使用的。

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

刘书智:使用到了 Excel 导入导出模块,Email 收发模块,REST通信模块等。Mendix 自带的这些模块丰富了Mendix 的功能,明显缩短了我们实现相应功能需要花费的时间。

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

刘书智:我们团队开发的CSS业务展示大屏,是我印象比较深刻的一个应用。该应用的展示截图如下图所示。

图片 2.png

对于地图组件的开发过程,现在还记忆犹新。由于Mendix 自带的图形组件中没有地图组件,而我们的展示当中最重要的一个展示区域就是数据在地图上的展示。如果在常规的HTML开发中,实现中国地图的功能并不难,网上也可以找到很多类似的代码。但是在Mendix中实现这个功能,受到如下一些限制。首先得使用Mendix的组件开发框架。然后需要使用 TypeScript语言,React 框架,还有就是 Echarts相关技术。可是这些内容对于我这样一个OT工程师来说,都是陌生的技术,都需要重头学起。没办法,只能啃这块硬骨头了。功夫不负有心人,同时得益于Mendix自定义组件框架明晰的设计及稳定性,总算在最后按时完成了任务。

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

刘书智:作为数据展示大屏,显示效果令使用者非常满意。形成了部门对外展示的一个窗口。通过将各种业务数据汇总、计算分析后显示在统一的平台,方便了各级人员快捷地查看业务数据。

由于这些平台都是由部门同事自己开发的,平台功能的变更非常方便。不再需要联系Vendor去进行功能的变更,节省了时间,业务执行更流畅。而且当平台出现故障时,可以快速地分析原因,最短时间恢复平台的运转,有效减小了对业务造成的影响。

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

刘书智:我觉得主要有以下优点

  • 开发者可以专注于业务逻辑。我觉得这是Mendix非常重要的一个优点。在使用某个高级语言进行代码开发时,我经常需要考虑某个功能,有哪些库可以实现,哪个库实现起来更方便等等。我要花很多注意力在代码本身上,而不是业务逻辑。而Mendix丰富的模块功能,及图形化的微流功能,使我更容易专注在实现业务的逻辑上,产出更高效。
  • 完善稳健的平台框架。对于Web传统开发,我必须要考虑前端使用什么语言,使用什么框架,后台使用什么语言,使用什么结构。程序的安全性怎么来保证。部署到不同的环境上,需要考虑哪些因素,来降低开发的难度和复杂性。所有这些问题,在使用Mendix时都无需考虑。只要关注在业务逻辑上就好。
  • 低代码带来的便利。很多常用的、重复性的功能,Mendix都考虑到了,并采取了各种模板技术来实现。这种便利只有在真正使用了,体会到了,才会倍感受用。低代码通常会给人一种好用可能功能就要差一些的感觉。但是Mendix很好地将易用性和复杂性平衡了。对于具备一定的Java 编程能力的开发者来说,充分利用其扩展能力,可以开发出高效的Mendix 应用。对于熟悉CSS技术的开发者,将自己的CSS技术用于美化页面显示,同样事半功倍。

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

刘书智:在我看来主要有以下几点

  • 学习资源相当丰富。这是我在自学Mendix时最大的感受。Mendix官网有一个版块叫Learning Path,我的学习之旅基本就是在这些课程中渡过的。这里面包含了相当多的课程。而且所有课程都是分级的,从初学者到专家,都可以找到适合的学习内容。每个课程的讲解都条理清晰,很容易理解。下载示例项目,边看边做,使学习的过程非常高效。而且有些课程,除了讲解Mendix本身的功能之外,还会夹带高效编程的理念及程序设计的底层逻辑。这些内容,对于提高自己的编程修养及功底非常有帮助。
  • Mendix方方面面都可圈可点。市面上的低代码平台,大多是有所长,又有所短。可Mendix在整体的架构,系统的安全性,组态的便利性,模块的复用性,调试的难易度,部署的便利性及难易度,运行的稳定性等等方面,我都没有看到它的短板。

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

刘书智:Mendix 的优点有很多。根据开发者当前遇到的困难,或者痛点,将Mendix 的优势展现给他。对于一个Mendix新手,我会强力推荐他Mendix丰富的学习资源,绝对是对新手非常友好的一款软件。

对于那些以Web 应用开发为主的开发者,选择Mendix 绝对会为你节省大量的时间成本。

MX:你希望Mendix在哪些方面进行优化和改进?

刘书智:作为一个OT工程师,曾经打算在工业自动化项目中使用Mendix。但是由于单台服务器本地部署的价格比较高,一直未能实现。如果有可能,希望Mendix将来能有针对自动化项目的产品策略。这将为自动化项目中的Web应用带来革命性的变化。对于Mendix 的功能,我几乎无可挑剔。

关于Mendix公司

Mendix公司,a Siemens business,正在迅速成为企业数字化转型的推动者。其业内领先的低代码平台和全方位的生态系统整合最先进的技术,帮助企业创造出提高互动性、简化操作和克服IT瓶颈的解决方案。Mendix公司是权威行业分析师眼中的领导者和远见者,也是一个云原生、开放、可扩展、敏捷和饱经考验的平台。从人工智能和增强现实,到智能自动化和原生移动,Mendix公司已成为数字化先行企业的骨干。Mendix公司企业低代码平台已被全球4000多家领先的公司采用。

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

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

相关文章

编程实战班--C语言和Python语言实现五子棋游戏的代码

文章目录 下面分别是C语言和Python语言实现五子棋游戏的代码:C语言实现Python语言实现总结 下面分别是C语言和Python语言实现五子棋游戏的代码: C语言实现 在使用C语言实现五子棋游戏时,可以使用SDL2图形库来实现图形界面和图形绘制等功能&…

华为华三思科 交换机基础配置一览

console密码修改 华为 user-interface console 0 authentication-mode password set authentication password cipher XXXXXXXXX华三 line aux 0 authentication-mode password set auth pass simple XXX思科 en configure terminal line console 0 password 123 login忘记…

打开英雄联盟提示d3dcompiler47.dll缺失怎么修复

1.d3dcompiler_47.dll缺失的原因 损坏的文件:d3dcompiler_47.dll文件可能由于某些原因损坏,如病毒感染、意外删除等。 不兼容的操作系统:某些应用程序要求特定版本的d3dcompiler_47.dll文件,如果操作系统不兼容,则可能…

前端实现导出excel表格(单行表头)

需求:实现勾选行导出为表格 一、安装插件 npm install --save file-saver xlsx运行项目报如下警告的话 运行npm install xlsx0.16.0 --save 来降低版本号(最初我安装的版本号是0.18.16的版本)再次运行项目就不会报如下警告了 二、新建一个ex…

语音分帧简述

目录 1. 分帧 1.1 非整齐分帧 1.2 整齐分帧 2. 示例代码 1. 分帧 问题1:总帧数如何计算? 记符号N为语音总长度,FRAME_LEN为帧长,OVERLAP_LEN为帧与帧之间的重叠部分,STEP_LEN为帧移(步长)。则总帧数N_Frames计算…

kotlin 编写一个简单的天气预报app(二)

增加界面显示openweathermap返回的信息。 在activity_main.xml里增加输入框来输入城市&#xff0c;在输入款旁边增加搜索按钮来进行查询。 然后原来显示helloworld的TextView用来显示结果。 1. 增加输入城市名字的EditText <EditTextandroid:id"id/editTextCity"…

AcrelEMS企业微电网能效管理平台实现用户侧智能配电和智能用电管理-安科瑞黄安南

摘要&#xff1a;随着科技的发展&#xff0c;电力系统正逐步向智能化、数字化、互联网化迈进。智能配电与智能用电是电力产业发展的重要方向&#xff0c;将为传统电力系统带来革命性的变革。本文将对智能配电和智能用电的概念、特点、关键技术及应用进行详细介绍。 1、智能配电…

Rust vs Go:常用语法对比(八)

题目来自 Golang vs. Rust: Which Programming Language To Choose in 2023?[1] 141. Iterate in sequence over two lists Iterate in sequence over the elements of the list items1 then items2. For each iteration print the element. 依次迭代两个列表 依次迭代列表项1…

【linux基础(一)】Linux基本指令(上)

&#x1f493;博主CSDN主页:杭电码农-NEO&#x1f493;   ⏩专栏分类:Linux从入门到开通⏪   &#x1f69a;代码仓库:NEO的学习日记&#x1f69a;   &#x1f339;关注我&#x1faf5;带你学更多操作系统知识   &#x1f51d;&#x1f51d; 这里写目录标题 1. 前言1. 创…

[vulnhub]DC2

文章目录 [vulnhub]DC2信息收集flag1flag2cewlwpscan flag3什么是rbash&#xff1f; flag4flag5git提权 总结 [vulnhub]DC2 信息收集 扫ip&#xff0c;有两种方式&#xff1a;arp、nmap nmap -sP 192.168.56.0/24 -T4arp-scan -l192.168.56.137 扫端口&#xff1a; nmap -…

1312. 让字符串成为回文串的最少插入次数;971. 翻转二叉树以匹配先序遍历

1312. 让字符串成为回文串的最少插入次数 核心思想&#xff1a;最后的回文串有两种情况&#xff0c;一种是奇数回文串&#xff0c;一种是偶数回文串&#xff0c;奇数回文串的中心一定是原来就有的&#xff0c;偶数回文串的中心也是原来就有的。假设除去中心的部分为q,p,最后要…

Debian12中为python3配置虚拟环境及在Pycharm中使用虚拟环境

在Debian 12中&#xff0c;python默认为python 3.11。 基于应用&#xff0c;现需设置虚拟环境。 1.安装venv模块 从python3.3开始&#xff0c;配置python虚拟环境&#xff0c;可用venv模块&#xff0c;更加方便了。 执行命令&#xff1a; #apt install python3.11-venv 2.…

原型模式——对象的克隆

1、简介 1.1、概述 可以通过一个原型对象克隆出多个一模一样的对象&#xff0c;该模式被称为原型模式。 在使用原型模式时&#xff0c;需要首先创建一个原型对象&#xff0c;再通过复制这个原型对象来创建更多同类型的对象。 1.2、定义 原型模式&#xff08;Prototype Patt…

ICASSP 2023说话人识别方向论文合集(一)

ICASSP (International Conference on Acoustics, Speech and Signal Processing) 即国际声学、语音与信号处理会议&#xff0c;是IEEE主办的全世界最大、最全面的信号处理及其应用方面的顶级会议&#xff0c;在国际上享有盛誉并具有广泛的学术影响力。 今年入选 ICASSP 2023 …

【LeetCode每日一题】——946.验证栈序列

文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】 一【题目类别】 栈 二【题目难度】 中等 三【题目编号】 946.验证栈序列 四【题目描述】 给定 pushed 和 p…

【*1900 图论】CF1328 E

Problem - E - Codeforces 题意&#xff1a; 思路&#xff1a; 注意到题目的性质&#xff1a;满足条件的路径个数是极少的&#xff0c;因为每个点离路径的距离<1 先考虑一条链&#xff0c;那么直接就选最深那个点作为端点即可 为什么&#xff0c;因为我们需要遍历所有点…

ChatGPT伦理挑战:人工智能的权利与责任

&#x1f337;&#x1f341; 博主 libin9iOak带您 Go to New World.✨&#x1f341; &#x1f984; 个人主页——libin9iOak的博客&#x1f390; &#x1f433; 《面试题大全》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33…

选读SQL经典实例笔记13_case与聚合

1. 识别非小计行 1.1. 结果集 1.2. DB2 1.3. Oracle 1.4. 超级聚合&#xff08;supera ggregate&#xff09;值 1.4.1. sql select deptno, job, sum(sal) sal,grouping(deptno) deptno_subtotals,grouping(job) job_subtotalsfrom empgroup by cube(deptno,job) 1.5. SQ…

十三、数据结构——二叉树的遍历(先序、中序和后序)详细思路和代码

二叉树遍历 在数据结构中&#xff0c;二叉树是一种常用且重要的数据结构。二叉树的遍历是指按照一定顺序访问二叉树的所有节点&#xff0c;常见的遍历方式有前序遍历、中序遍历和后序遍历。本文将详细介绍这三种遍历算法&#xff0c;并介绍最优二叉树。 二叉树的基本定义 首…

网络摄像机·监控摄像机用镜头驱动芯片(内置光圈控制)MS41908M

产品简述 MS41908M 是一款用于网络摄像机和监控摄像机的镜头 驱动芯片。 芯片内置光圈控制功能&#xff1b;通过电压驱动方式以及扭矩纹 波修正技术&#xff0c;实现了超低噪声微步驱动。 主要特点  电压驱动方式&#xff0c;256 微步驱动电路&#xff08;两通道&…