从 NASL 说开:低代码编程语言能饭否(低代码开发原理)

1从 NASL 说开:低代码编程语言能饭否

Gartner说,低代码是应用开发的未来。在国内,目前市场普遍认为低代码的核心价值在于低成本、低门槛,而在开发的世界,这往往意味着需求简单、扩展困难。但偏偏一家叫做网易数帆的公司,直言要用低代码来开发复杂企业应用,并推出了一个NASL语言,这意味着把低代码和编程语言紧密结合。那么,低代码的新式编程语言,能带来新的饭碗吗?就从NASL原理来一探究竟吧。

风口之上,国内的低代码、无代码方案数不胜数。如下图所示,对于网易数帆推出的轻舟低代码平台,NASL是其中的关键,也是最大的差异化。NASL全称是NetEase(Normal)Application Specific Language,是轻舟低代码平台提供给用户的应用建模语言。对于NASL,网易数帆内部有过争论,有人强调NASL是一种DSL,有人则强调是一门编程语言,深入探讨后团队发现这两种说法都有道理,认知差异主要来自于看待问题的不同视角。

从 NASL 说开:低代码编程语言能饭否(低代码开发原理)

从模型驱动说起

正确理解模型驱动

模型驱动思想(MDSD/MDA)通常被认为是低代码核心思想。简单理解模型驱动,就是开发者参照一个抽象模型,将应用需求通过建模方式来实现的过程。但国内由于“表单驱动”和“模型驱动”概念流行,以至于很多同学把模型驱动中“模型”简单理解成“数据模型”,这其实是不准确的。

要准确理解模型驱动,需要了解MDSD(模型驱动软件开发)和对象管理组织OMG)在2001年提出MDA(模型驱动架构)。MDA使得开发人员可以使用UML(Unified Modeling Language)可视化设计PIM(Platform Independent Model),然后由工具自动执行针对特定平台和实现语言的映射规则,将PIM转换为对应的PSM(Platform Specific Model),并最终生成可执行的应用程序代码。

MDA可以认为是MDSD思想的一种实现标准,它规范了很多术语、对工具集有清晰的定义。MDSD则更偏向思想或方法论,旨在通过抽象来提高复杂任务的易处理性,进而提升开发效率和质量(跟低代码目标是不是很像)。MDA由于其整个标准体系复杂性和仅有部分平台实现、同时没有提供面向互联网应用特定问题域的好的解决方案(比如高并发、UI编程等问题),因此在互联网技术浪潮中存在感并不强。但是MDSD思想却对广大开发者有着深刻的影响,互联网领域众多流行的编程框架本质上都体现了MDSD思想,低代码可以被认为是其中的一种实践。

模型与框架的关系

简单来说,模型是一种抽象,框架是它的一种具体实现。也可以说框架为应用开发者提供了一种可落地的模型(如下图)。说到框架,大家首先想到肯定是是react,springboot这种被广泛使用的前后端框架,低代码框架本质上跟他们类似,差别在于,低代码框架通常支持从前后端到数据库的全栈模型实现,而且封装程度更高。— 说"抽象"是站在应用场景的视角,说"封装"站在通用编程语言的视角。

从 NASL 说开:低代码编程语言能饭否(低代码开发原理)

模型抽象时,我们通常需要通过分层、分解、切面等思维拆解复杂度;框架实现时,通常要用扩展(extends)、实现(implements)、hook、表达式填充等技术体现开放性。

低代码框架核心就是要抽象一种编程模型:它既要能简单及高效的支撑用户编程意图的表达,又要能具备足够的通用性灵活性(但又不用做到MDA的程度)。要达到这样的目标,需要具备以下一些条件:

  • 首先,需要在应用软件开发领域具备非常丰富的知识和经验。具体点来说要对各种通用编程语言、框架和各种编程模式优缺点有清晰的认知,对传统研发模式影响效率和质量的因素有清晰的认识,只有如此才能给出有价值的设计。这也是很多低代码平台宣传“by developer for developer”的原因。– 如果考虑的是如何打造完整平台,还需要对现代软件工程需要的配套设施,包括是云原生技术体系有清晰完整的认知。
  • 其次,要对低代码框架的使用者有清晰界定和认知,框架设计要尽可能贴近这个人群的认知模型,同时要把复杂度控制在这个人群普遍能接受的程度。– 模型可以针对不同人群体现不同的可变性,比如mendix通过Mendix Studio和Mendix Studio Pro为专业开发者和非专业开发者提供低、无代码两种开发模式。可变性差量的设计在这篇文章 https://zhuanlan.zhihu.com/p/64004026里有比较深入的解读。
  • 最后,也是最重要一点是要有上帝视角。对很多程序员来说从框架使用者转变成框架设计者是一个非常大的跨越,需要有非常强抽象思维和站在更高的视角才能做到。

发起轻舟低代码项目的技术团队有着十多年数百个业务系统开发经验,同时团队在多年实践中培养了多位编程框架设计专家,这是轻舟团队在低代码领域创新所具备的优势。

NASL是轻舟低代码框架的建模语言

低代码框架实现了一个编程模型,NASL是这个模型的建模语言,用于描述模型中可变性的那部分。NASL根据编程模型来设计,通过框架来实现。

从 NASL 说开:低代码编程语言能饭否(低代码开发原理)

从这个角度来说,NASL就是一组DSL(这其实是《领域编程语言》对DSL的标准定义)。

— 稍微扩展一下,因为所有低代码(包括零代码)产品都可以被认为是基于MDSD思想实现的,因此从这个角度来说,NASL就是稍微复杂一点schema,它并不能凸显出轻舟低代码跟其他零代码平台的差异(但模型本身凸显了差异)。参考《聊一聊低代码和零代码的差异》

点击查看原文,获取更多福利!

https://developer.aliyun.com/article/1086584?utm_content=g_1000365202

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

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

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

相关推荐

  • 系统项目变更管理流程

    系统项目变更管理流程 系统项目变更管理流程是指在系统项目开发过程中,对项目变更进行有效的管理和控制的过程。一个好的系统项目变更管理流程可以提高项目的效率,降低项目的风险,并确保项目…

    科研百科 2024年12月19日
    0
  • 加州大学科研项目申请时间

    加州大学科研项目申请时间:2023年2月18日 加州大学是美国最著名、最具声誉的高等学府之一,其学术研究水平和教育质量在全球范围内享有盛誉。加州大学的科研项目申请时间自2008年起…

    科研百科 2024年4月8日
    46
  • plm系统项目管理

    PLM系统项目管理 PLM(Project Management Library)系统是一种集成化的项目管理工具,可以帮助企业更好地管理项目,提高项目效率。在PLM系统中,项目经理…

    科研百科 2024年12月12日
    0
  • 多家券商资管高管近期变动,秦力回归广发资管任董事长、总经理

    每经记者:陈晨 每经编辑:吴永久 日前,广发资管迎来新董事长、总经理,由秦力担纲,原董事长杨龙因工作安排离任。值得一提的是,秦力曾在2018年6月至2019年10月任广发资管董事长…

    科研百科 2022年6月26日
    344
  • 出书为什么没稿酬,还要自己出费用?出版一本书需要花费多少钱?

    本文所指的出版一本书需要花费多少钱,主要针对自费出书。对于那些市场图书当然不用自费,而且还有稿酬可拿。但那毕竟是少数,而且这类图书都是为了市场,未必是作者真的需要或者真正想写的东西…

    科研百科 2024年6月19日
    48
  • 拜城畜牧和饲草料交易市场试营

      原标题:拜城畜牧和饲草料交易市场试营iqg   本报讯 (记者 钟卉 通讯员 邓丽娟) “来这里买牛真是选对地方了。今后我还会常来的。”11月29日,在…

    科研百科 2022年6月1日
    412
  • 福州军门社区党委书记林丹:“小巷总理”用“大智慧”治理社区

    林丹(右一)向社区居民开展平安宣讲。(市委组织部供图) 台海网10月29日讯 据福州日报报道 “昔日纸褙军门前,今日文明一枝花。”这是1995年4月习近平送给福州市鼓楼区东街街道军…

    科研百科 2024年6月29日
    59
  • 作业管理系统项目简述

    作业管理系统项目简述 随着学生数量的不断增加和教育信息化的不断推进,作业管理系统已经成为了许多学校和教育机构中必不可少的一部分。本文将介绍一个基于Java的作业管理系统项目,该系统…

    科研百科 2024年12月16日
    0
  • 协同oa办公系统价格

    协同oa办公系统:企业高效管理的必备工具 随着现代企业规模的不断发展和扩大,企业管理者对于工作管理和协同办公的需求也越来越强烈。协同oa办公系统是一种能够帮助企业管理者实现高效协同…

    科研百科 2024年8月23日
    30
  • 无纸化办公系统厂家(无纸化办公系统价位)

    无纸化办公系统价位是多少? 随着现代数字化办公的普及,无纸化办公系统已经成为了许多企业和个人的首选。无纸化办公系统不仅可以节省纸张和印刷成本,还能够提高办公效率,降低错误率。但是,…

    科研百科 2024年6月5日
    79