低代码语言及其配套设施的设计目标是”高效表达应用编程意图,快速构建软件应用,同时注重代码与程序的安全性” 。为此,我们设计了.NETEase Application Specific Language(简称 NASL),即网易轻舟低代码用于描述 Web 应用的领域特定语言,它主要包含基础语言和 Web 应用特定领域的子语言(如数据定义、数据查询、页面、流程、权限等)两部分 。NASL 语言作为整个低代码平台的内核,是对应用编程语义模型的核心抽象,用于承接用户应用编程意图的高效表达 。借助于 NASL 和配套的语言设施,低代码开发者可以快速构建软件应用 。它包括以下组件:
- Language Server:NASL 语义的最佳实践,包含类型检查、推断、跳转定义、自动补全等能力,在低代码应用编辑期提供辅助手段,减少编程出错概率,提高编程效率,一定程度保证了程序安全性 。架构设计上,我们采取 LSP (Language Server Protocol) 标准化的协议,研发出针对 NASL 语言的编辑器和 IDE 的语言服务 。
- Debugger:针对与 NASL 语言研发的调试器,设计并定义了 breakpoint、step into、step over、resume、evaluation 等调试 API,是集成开发环境可以实现 NASL 断点调试的基础 。
- Generator:NASL 语义编译器 。低代码平台借助于 Generator,将 NASL 语言编译为 java、js 等通用语言,再借助底层通用语言的运行时设施如 jvm,将 NASL 语言运行在计算机上 。
- NASL 仓库:用于实时保存用户构建应用所产生的 NASL 代码,并满足高性能、高可用、高可靠等特性,技术选型上,我们选取了 mongodb 作为存储 。同时设计并实现了一套提供了代码合并、拉取、冲突检测、合并、暂存、标签等基础 API,是集成开发环境实现多人协作和版本控制的基础 。
低代码资产中心的设计目标是“方便用户进行软件资产的管理、复用和查询,以提高开发效率和质量” 。资产中心提供了多种多样的应用和局部模板,并支持根据自身需求场景一键生成应用,有利于快速构建符合平台标准的库以及提高代码重用性 。
- 模板管理:对集成开发平台自身导出的模板的管理 。模板中心提供了各种应用和局部模板,根据不同的需求场景,开发者可以选择相应的模板,一键生成应用,并在此基础上进行个性化修改,以适应自身业务需求 。
- 库管理:对 NASL 库和扩展库的管理 。库是一组可被低代码应用依赖使用的编程能力,按照产生方式的不同被分为 NASL 库和扩展库 。NASL 库是一组在低代码平台上开发好的通用功能,供所有应用程序共享使用 。扩展库是由专业程序员使用 Java 或 Java 开发的,可以被低代码应用依赖使用的编程能力,它们通过平台脚手架导入到资产中心来使用 。
云原生基座
低代码作为一个 APaaS 平台,我们选取了云原生技术作为支撑整个平台和应用运行的基座,其设计目标是“提供支持高度可扩展、高度可观测、快速部署、故障隔离、运行安全”的上层应用程序 。主要技术如下:
推荐阅读
- 从传统向数字化转型:推动数字化应用的五个步骤
- 苏果供应商b2b服务系统_什么是B2B数字化供应链平台?
- 招聘|高职院校建立数字化工厂的意义
- |数字藏品是什么?
- 什么叫面向对象编程(面向对象编程代码)
- 马里奥知乎 马里昂投篮
- 面向对象设计思想的特点 面向对象思想
- 面向开发人员的 DevOps — 简介和版本控制
- 招聘|又一铁饭碗面向全社会招聘,均薪1.5万,待遇比公务员更好!
- 招聘|又一铁饭碗面向全社会招聘,均薪1.5万,待遇比公务员更好