低代码平台和专业开发人员——完美搭档?(低代码开发平台介绍)
使用前端和后端框架从头开始开发企业级 Web 应用程序需要很长时间。如今,客户正在寻找快速且具有成本效益的解决方案,并倾向于使用无代码和低代码应用程序开发平台。
使用前端和后端框架从头开始开发企业级 Web 应用程序需要很长时间。如今,客户正在寻找快速且具有成本效益的解决方案,并倾向于使用无代码和低代码应用程序开发平台。全栈开发人员如何在无代码和低代码平台之上如何快速落地?
主要分享低代码、微服务、容器化、SAAS、系统架构方面的的内容,希望大家点赞,评论,关注。
无代码和低代码平台
这些平台的一个目的是通过利用更广泛的非技术和半技术员工来增加可用的 Web 应用程序开发人员的数量。供应商开发了非技术员工使用的无代码平台来构建简单的应用程序,以及具有基本技术技能(例如:SQL、JavaScript)的员工使用的低代码平台来开发更复杂的企业应用程序。其次,与传统的 Web 应用程序开发方法相比,这些平台可以将 Web 应用程序的开发时间减少 50% 以上。
目前,在无代码和低代码市场领域存在大量供应商竞争。无代码平台供应商包括 AppSheet (Google)、Betty Blocks、QuickBase、Airtable、Bubble 和 Microsoft PowerApps。低代码平台供应商包括 Microsoft PowerApps、OutSystems、Mendix、Salesforce Lightning Platform、Nintex、Appian 和 Pegasystems及国内的微搭、宜搭、AppCube。
我们不会讨论无代码平台,因为它们适合非技术用户开发简单的应用程序。作为专业的 Web 应用程序开发人员,您不太可能被要求在无代码平台上工作。
另一方面,低代码平台用于开发更复杂的应用程序。对于习惯于使用开源前端和后端框架开发应用程序的专业 Web 开发人员来说,使用这些低代码平台构建 Web 应用程序有几个缺点。这是来自专业网络应用程序开发人员的一篇博客文章,讲述了他在其中一个低代码平台上工作的经历。
问题 1:无法控制源代码
低代码平台为开发 Web 应用程序提供了一种视觉隐喻。甚至app的业务逻辑都是通过if/then/else等代码控制语句的拖拽来实现的。因此,在这些平台上工作的开发人员几乎无法控制源代码。无法控制源代码至少会产生两个问题:(a) 开发具有复杂业务逻辑的域驱动应用程序具有挑战性,(b) 调试问题可能非常困难和令人沮丧。
问题 2:限制职业流动性
在低代码平台上全职工作可能会限制专业 Web 应用程序开发人员的职业流动性。他们将失去目前在开放编程语言和框架方面的技术技能,并在专有的低代码平台上获得技能。假设这个专有的低代码平台没有被雇主广泛采用,目前任何特定的低代码平台都是这种情况。在这种情况下,开发人员的低代码平台技能只能在同样采用相同低代码平台的另一个雇主处使用。这严重限制了开发人员的职业流动性。
有更好的选择吗?是的。为什么不为专业的 Web 应用程序开发人员构建一个低代码平台,既满足雇主对速度的需求,又满足开发人员对控制和职业流动性的需求?我们将此类平台称为“开放”低代码平台。这些平台如何运作?继续阅读……
生成模板代码
在开发 Web 应用程序时,有相当多的剪切/粘贴/修改工作。
大多数应用程序使用 N 层架构。在这个架构中,要为数据库表(实体)上的 CRUD 操作提供 ReST API,我们需要为实体、DAO(数据访问对象)层、服务层和 ReST 控制器层开发代码。同样,要创建 UI 屏幕以允许最终用户执行 CRUD 操作,我们需要开发 UI 组件和与后端 ReST API 交互的前端服务层。一旦对单个数据库表(实体)完成了这项工作,就必须对数据库模式的每个表重复类似的工作。
想象一下,必须为 50 个数据库表执行此操作——这是一项乏味且容易出错的工作。
更好的方法是自动生成此样板代码。为了自动化,我们可以开发一个应用程序生成器来读取数据库模式并生成后端和前端代码,以允许最终用户对数据库表(实体)执行 CRUD 操作。
为常用应用功能提供附加组件
Web 应用程序具有跨应用程序重复的通用功能。此类常见功能的示例包括身份验证和授权、文档管理、事务性电子邮件、作业计划程序、用户注册和嵌入式报告。几乎我参与开发的每个 Web 应用程序都需要这些功能。在每种情况下,我的开发团队都重新发明了轮子并从头开始构建这些横切关注点,因为我们从未考虑过构建可跨 Web 应用程序使用的通用和可定制的通用功能 – 多么浪费精力和时间!
如果此类通用功能的基本代码已经构建并可用,我们可以重用它并根据每个 Web 应用程序的需要对其进行定制。
提供可视化开发工具
开发企业应用程序涉及开发自定义功能,例如设计数据库模式或域模型、为非 CRUD 操作构建自定义屏幕、构建企业特定主题(颜色、字体)以及开发与外部系统的集成。
专业开发团队可以通过使用加速这些自定义功能工件开发的可视化开发工具来进一步减少应用程序开发时间和成本。
支持开发团队的技术栈
在开发企业应用程序时,专业开发团队对所使用的开放技术有特定的偏好,例如前端和后端框架、对象关系映射工具、UI 组件框架和依赖管理系统。团队首选特定技术,因为它们是企业架构标准,或者因为大多数团队成员都有使用这些技术的经验。
通过支持开发团队选择的特定技术,为专业开发人员开放的低代码平台可以帮助而不是降低应用程序开发的速度。
结论
上述方法允许开发团队将开发 Web 应用程序的时间减少 50% 以上,类似于专有的低代码平台。此外,开发人员可以完全控制源代码,从而消除他们无法轻松调试问题和开发具有复杂业务的领域驱动应用程序的能力。最后,开发人员在开发 Web 应用程序时使用开放技术,从而消除了职业流动性受限的问题。
总而言之,为专业 Web 应用程序开发人员构建的低代码平台,可提供其快速应用程序开发的优势。
主要分享低代码、微服务、容器化、SAAS、系统架构方面的的内容,希望大家点赞,评论,关注。