我们为Node.js设计了一个低代码框架(我们为node.js设计了一个低代码框架英语)

我们为Node.js设计了一个低代码框架(我们为node.js设计了一个低代码框架英语)

作者丨Can Mingir

译者丨仇凯

  我们创建了一个项目,它可以自动化处理Node.js中的数据和逻辑,从而有效减少代码工作量。

  低代码框架Nucleoid在底层声明性运行时环境中使用,并通过重新渲染非常相似的JavaScript代码在图中建立连接,并最终保存JavaScript状态,因此它不需要外部数据库。

  特性

  • 让开发人员在AI的帮助下构建API(大量的图)
  • 在底层声明性运行时环境中使用
  • 运行时环境内置有数据存储

  Hello World

> npm i nucleoidjs1.

  安装后,通过Express.js启动或运行代码。

const nucleoid = require("nucleoidjs");const app = nucleoid();class User { constructor(name) { this.name = name; }}// This is it!app.post("/users", () => { new User("Daphne");});app.listen(3000);1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.

  差不多就是这样,多亏了运行时环境中的AI,能且仅能在AI的帮助下,才能在没有外部数据库的情况下将对象持久化。

理论

  在运行时中运用声明式编程,能够实现在同一进程中对数据进行管理。

  换句话说,该项目的主要目标是在同一运行时中管理数据和逻辑,同时,我们还可以将数据流/导出数据存储在类似NoSQL一样的外部数据库中。

CRUD

快速设置

const nucleoid = require("nucleoidjs"); // npm install nucleoidjsconst app = nucleoid();1.2.

Create

  首先,从创建用户类和用户对象开始。

class User {constructor(name) { this.name = name;}}nucleoid.register(User);app.post("/users", (req) => {const name = req.body.name;return new User(name);});1.2.3.4.5.6.7.8.9.10.11.12.

  不需要外部数据库的原因是Nucleoid运行时管理和存储JavaScript状态。每当有语句在运行时环境运行的时候,Nucleoid运行时都会调整AI图并将其存储在运行时管理的fs中。

Read

app.get("/users/:id", (req) => {const id = req.params.id;return User[id];});1.2.3.4.

  当有User这样的类注册时,运行时会为其实例创建快捷方式数组,可以查询或使用实例的id(var name)以在后续访问类。或者,也可以这样做User.find(user => user.id === id)

Update & Delete

app.post("/users/:id", (req) => {const id = req.params.id;const name = req.body.name;const user = User[id];if (user) { user.name = name; return user;}});app.delete("/users/:id", (req) => {const id = req.params.id;delete User[id];});1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.

  与上面的示例类似,它使用原生JavaScript,运行时重新渲染和管理JavaScript状态。此外,还可以在JavaScript中编写一些业务逻辑。例如,如果想对用户名进行限制,可以这样写 if (user.name.length < 3) { throws "INVALID_USER" }。

Query

  nucleoidjs包还打开了一个终端通道来运行SQL之类的语句

我们为Node.js设计了一个低代码框架(我们为node.js设计了一个低代码框架英语)

工作原理

nucleoid.run(() => {var a = 1;var b = a 2;var c = b 3;});1.2.3.4.5.

  当变量被定义为 var a = 1时,运行时会做三件事情。首先,它将var a放在图中,并在因变量之间建立联系。

我们为Node.js设计了一个低代码框架(我们为node.js设计了一个低代码框架英语)

变量图

其次,使用新值更新状态,以使其生效。

我们为Node.js设计了一个低代码框架(我们为node.js设计了一个低代码框架英语)

状态表

但是,由于变量会在图中被追踪,因此实际执行情况是不同的。

state.a = 1;state.b = state.a 2;state.c = state.b 3;1.2.3.

  最后将语句存储在运行时管理的fs中。

OpenAPI与Nucleoid IDE集成

  我们还在构建一个在线的OpenAPI编辑器,它有助于通过用户界面构建完全相同的API。它专为OpenAPI集成而设计,并且还连接到CodeSandbox,以便能够轻松地在沙箱中运行项目。

我们为Node.js设计了一个低代码框架(我们为node.js设计了一个低代码框架英语)

IDE截图

多亏了声明式编程,我们有了一种全新的数据和逻辑方法。

  原文链接:

​https://hackernoon.com/nucleoid-a-low-code-framework-for-nodejs​​

  仇凯,51CTO社区编辑,北京宅急送快运股份有限公司信息安全工程师

责任编辑:张洁来源: 51CTO技术栈

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

(0)
上一篇 2024年7月5日 下午9:22
下一篇 2024年7月5日 下午9:34

相关推荐

  • 吕子乔做的科研项目是什么吕子乔做的科研项目是什么

    吕子乔是一位著名的科学家和学者,他一直致力于探索宇宙中的奥秘。在他的科研项目中,他深入研究了黑洞的本质和特性。 黑洞是一种极其强大的天体,它的引力非常强大,甚至连光都无法逃脱。吕子…

    科研百科 2024年9月9日
    22
  • windows组建nas

    Windows 组建nas 随着互联网的普及,人们对数据存储的需求也越来越高。而nas(网络存储设备)作为一种特殊的存储设备,可以满足用户对于高性能、灵活性和可靠性的需求。在这篇文…

    科研百科 2024年10月5日
    16
  • 科研项目概算价格模板

    科研项目概算价格模板是计算科研项目成本的重要工具,可以帮助科研项目管理人员估算科研项目的成本,并为决策提供依据。下面是一个基本的科研项目概算价格模板,供您参考。 一、项目概述 1….

    科研百科 2025年3月15日
    0
  • 课题研究项目管理

    课题研究项目管理 项目管理是课题研究中至关重要的一部分。一个有效的项目管理不仅可以提高研究的效率和质量,还可以降低研究成本,并确保研究成果能够及时完成。本文将探讨课题研究项目管理的…

    科研百科 2024年7月15日
    47
  • 办公软件招标

    办公软件招标 随着数字化时代的到来,办公软件已经成为企业日常办公的必备工具。为了更好地提高办公效率,越来越多的企业开始进行办公软件招标。在这个竞争中脱颖而出,成为供应商的一员,需要…

    科研百科 2025年1月5日
    0
  • 潍坊市常态化开展“灯塔-党建在线”网络平台管理员“学业务、强技能、优业绩”活动

    针对换届后全市“灯塔-党建在线”网络平台管理员队伍调整较大、新手较多的情况,为进一步强化党员教育基础工作、基本队伍,强化管理员基本能力、基础业务,提升运用信息化手段推进党建工作的能…

    科研百科 2023年3月8日
    202
  • 网格化营销如何获客?这家农商银行找到突破口(农商行网格化营销方案)

    导 读 江苏南通农商银行着力构建多层次、广覆盖、差异化、可持续的营销体系,以网格化管理为抓手,通过党建引领,打造“全维度”网格文化体系;数字赋能,塑造“全链条”网格营销流程;精细管…

    科研百科 2023年11月16日
    76
  • 什么项目管理软件好

    项目管理软件是一种用于管理项目进度、成本、资源和质量的工具,可以帮助团队更好地协作和完成任务。随着现代软件开发和项目管理的日益复杂,选择一款好的项目管理软件至关重要。在本文中,我们…

    科研百科 2024年5月23日
    54
  • 开源的低代码平台

    开源的低代码平台 随着数字化时代的到来,越来越多的企业和个人开始选择使用开源的低代码平台来快速搭建自己的应用程序。开源的低代码平台不仅具有高度的可定制性和灵活性,而且还提供了丰富的…

    科研百科 2024年11月8日
    0
  • 成都做小程序制作?小程序制作多少钱?(成都做小程序制作-小程序制作多少钱一个月)

    开发制作一款小程序具体需要多少费用呢?今天小编教给大家一个怎样的预算,然后定我们安排进行开发制作小程序的方案。如果这些公司有一定的要求,他们的报价会很低。因为不需要二次开发,只是需…

    科研百科 2023年4月12日
    185