全栈开发人员如何在无代码和低代码平台的新世界中成长?(低代码无代码开发平台通用能力要求)

本文提到的方法使开发团队能够将 Web 应用程序开发时间减少 50% 以上。此外,开发人员可以完全控制源代码,开发具有复杂业务逻辑的领域驱动应用程序,并且很容易调试。最后,开发人员在开发 Web 应用程序时使用开放性技术,消除了职业流动性受限的问题。总之,为专业 Web 应用程序开发者构建低代码平台消除了专有低代码平台的缺点,同时保留了其快速开发应用的优势。

本文最初发布于 fastCode 博客,由 InfoQ 中文站翻译并分享。

使用开源的前端、后端框架从头开始开发企业级 Web 应用程序会花费很长时间。如今,客户正在寻找快速而经济的解决方案,并趋向于使用无代码和低代码的应用开发平台。在这个无代码和低代码平台的新世界中,全栈开发人员如何才能茁壮成长?

无代码和低代码平台

这些平台的其中一个目标是,利用更广泛的非技术和半技术员工来增加可用的 Web 应用程序开发人员。供应商开发了无代码平台,供非技术人员用来构建简单的应用程序;开发了低代码平台,供具有基本技术技能(如 SQL、JavaScript)的员工用来开发更复杂的企业应用程序。其次,与传统的 Web 应用开发方法相比,这些平台可以减少 50% 以上的 Web 应用开发时间。

目前,有大量的供应商在无代码和低代码的细分市场竞争。无代码平台供应商包括 AppSheet(谷歌)、Betty Blocks、QuickBase、Airtable、Bubble 和 Microsoft PowerApps。低代码平台供应商包括 Microsoft PowerApps、OutSystems、Mendix、Salesforce Lightning platform、Nintex、Appian 和 Pegasystems。

我们不会讨论无代码平台,因为它们迎合非技术人员的需求,用于开发简单的应用程序。作为一名 Web 开发人员,你不太可能被要求在无代码平台上构建 Web 应用程序。

另一方面,低代码平台被用来开发比较复杂的应用程序。对于习惯于使用开放性技术(如前端和后端框架)开发应用程序的专业 Web 开发人员来说,使用这些低代码平台开发 Web 应用程序有几个缺点。 这里有一篇专业Web 开发人员撰写的博文,讲述了他在这些低代码平台上工作的经历。

问题1:无法控制源代码

低代码平台为开发Web 应用程序提供了视觉隐喻。甚至应用程序的业务逻辑也是通过拖放代码控制语句(如if/then/else)来实现的。因此,在这些平台上工作的开发人员几乎无法控制源代码。不控制源代码至少会带来两个问题:(a)开发具有复杂业务逻辑的领域驱动应用程序很有挑战性;(b)调试问题会非常困难和令人沮丧。

问题2:职业受限

对于专业的Web 开发人员来说,基于低代码平台的全职工作可能会限制他们的职业发展。他们将失去当前在开放性编程语言和框架方面的技术技能,而获得专有低代码平台的技能。这个专有的低代码平台可能没有被雇主广泛采用,这是当前任何特定的低代码平台都面临的情况。在这种情况下,开发人员的低代码平台技能只适合于使用同样低代码平台的其他雇主。这严重限制了开发人员的职业流动性。

有没有更好的选择?有的。为什么不构建一个面向专业Web 应用程序开发人员的低代码平台,既满足雇主对速度的需求,又满足开发人员对控制和职业流动性的需求呢?我们如何做到这一点?请继续阅读…

自动化样板代码生成

在开发Web 应用程序时,需要进行大量的剪切/ 粘贴/ 修改工作。

我开发的大多数应用程序都使用了N 层架构。在这种架构中,要在数据库表(实体)上提供用于CRUD 操作的REST API,我们需要开发实体代码、DAO(数据访问对象)层、服务层和REST 控制器层。类似地,要创建让终端用户可以执行CRUD 操作的UI 界面,我们需要开发UI 组件和与后端REST API 交互的前端服务层。在我们针对单个数据库表(实体)完成了这项工作后,就要对数据库模式中的每个表重复类似的工作。想象一下,不得不为50 个数据库表做这项工作——这是一项冗长且容易出错的工作。

更好的方法是自动化样板代码的生成。为了实现自动化,我们可以开发一个应用程序生成器,它读取数据库模式并生成后端和前端代码,从而使终端用户可以在数据库表(实体)上执行CRUD 操作。

提供功能横切关注点扩展

随着时间的推移,我注意到,Web 应用程序有许多跨应用程序重复出现的功能横切关注点。举例来说,包括身份验证和授权、文档管理、事务性电子邮件、作业调度器、用户注册和嵌入式报表。我参与开发的几乎每个Web 应用程序都需要这些功能。每次,我的开发团队都是重新发明轮子,从头开始构建这些横切关注点,因为我们从未想过构建通用、可定制、可跨Web 应用使用的功能横切关注点——这浪费了多少精力和时间啊!

如果我们已经构建好功能横切关注点的代码库,那么我们就可以在每个Web 应用程序中重用并根据需要定制它。

提供可视化开发工具

开发企业级应用程序涉及开发自定义功能,例如设计数据库模式或领域模型,为非CRUD 操作构建自定义界面,构建企业特色的主题(颜色、字体),以及开发与外部系统的集成。

专业开发团队可以通过使用可视化开发工具进一步减少应用程序开发的时间和成本,这些工具可以加速这些自定义功能工件的开发。

支持开发团队的首选技术栈

在开发企业级应用程序时,专业开发团队对使用的开放性技术有特定的偏好,例如前端和后端框架、对象关系映射工具、UI 组件框架和依赖项管理系统。团队首选这些特定的技术,可能是因为它们是企业架构的标准,也可能是因为大多数团队成员都有使用这些技术的经验。

通过支持开发团队选择的特定技术,为专业开发人员提供低代码平台可以帮助提高而不是降低应用程序开发的速度。

小 结

上面提到的方法使开发团队能够将Web 应用程序开发时间减少50% 以上,类似于专有的低代码平台。此外,开发人员可以完全控制源代码,开发具有复杂业务逻辑的领域驱动应用程序,并且很容易调试。最后,开发人员在开发Web 应用程序时使用开放性技术,消除了职业流动性受限的问题。

综上所述,为专业Web 应用程序开发者构建低代码平台消除了专有低代码平台的缺点,同时保留了其快速开发应用的优势。

查看英文原文:

https://getfastcode.com/2020/08/09/accelerating-web-app-development/

关注我并转发此篇文章,私信我“领取资料”,即可免费获得InfoQ价值4999元迷你书!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2024年5月16日 上午11:03
下一篇 2024年5月16日 上午11:14

相关推荐

  • 大学科研项目参与

    大学科研项目参与 作为一名大学生,参与科研项目是展示自己才华、增强实践能力、获取科学知识的重要途径。在科研项目中,我们不仅可以学习新的知识和技能,还可以与来自不同领域和背景的专业人…

    科研百科 2025年3月11日
    1
  • p1m2低代码

    低代码开发平台(Low-Code Development Platform)是一种新兴的软件开发工具,它通过简化开发过程,提高开发效率,帮助企业快速构建和部署应用程序。P1M2是一…

    科研百科 2024年2月28日
    54
  • 科研项目一般花多少钱科研项目一般花多少钱

    科研项目一般花多少钱 科研项目的预算通常是由项目团队根据具体需求和目标制定的。一般来说,科研项目的预算会根据不同的领域和项目类型而有所不同。在一般情况下,一个科研项目的预算通常会包…

    科研百科 2024年9月13日
    15
  • 徐州科研项目

    徐州科研项目 近年来,徐州一直在进行着一系列重要的科研项目。这些项目涉及各个领域,包括计算机科学,生物学,物理学等等。这些项目旨在推动当地科技的发展,为当地人民带来更多的便利和福利…

    科研百科 2025年2月12日
    2
  • 工程项目管理系统架构

    工程项目管理系统架构 工程项目管理系统是一个重要的工具,可以帮助项目经理和团队成员更好地管理和协调工程项目。本文将介绍工程项目管理系统的架构,包括系统的需求、功能、设计以及实现。 …

    科研百科 2024年9月12日
    12
  • 资料进度计划

    资料进度计划 资料进度计划是组织和管理项目或任务的重要工具。通过制定详细的进度计划,可以帮助团队更好地跟踪进度,协调工作,避免遗漏任务,提高工作效率。 一份好的资料进度计划应该包括…

    科研百科 2024年9月26日
    14
  • 科研项目 未标注

    科研项目未标注 科研项目未标注是一种新兴的现象,指一些科研项目的名称、研究方向、导师、经费等信息均未知的项目。这种现象的出现是由于互联网的普及,人们可以通过搜索引擎轻松查找科研项目…

    科研百科 2025年2月26日
    1
  • 行政会议管理流程

    行政会议管理流程 行政会议是公司或组织中非常重要的一个环节,它可以帮助管理者更好地协调各部门之间的工作,提高工作效率和团队合作能力。然而,随着公司规模的增长和团队的不断扩大,行政会…

    科研百科 2025年1月11日
    2
  • 开源低代码开发平台entfrm2.1.0更新(开源 低代码开发平台)

    开源低代码开发平台entfrm2.1.0更新 – 新功能 1. 代码生成支持主子表,支持预览; 2. 新增多应用顶部菜单与左侧菜单联动; 3. element-ui升级…

    科研百科 2024年5月13日
    40
  • 机加项目管理系统

    机加项目管理系统 机加项目管理系统是一种用于管理机加工项目的软件系统,可以帮助项目经理、工人和供应商更好地协作和沟通,提高生产效率和质量。 机加项目管理系统提供了各种功能,包括项目…

    科研百科 2024年12月20日
    2