NEO-ONE 是一款全新的端到端智能合约框架,旨在让用户轻松在 NEO 平台上创建 dApp。由 NEO 区块链浏览器 NEO Tracker 5 人团队的负责人 Alex
DiCarlo 开发,支持 TypeScript 智能合约开发。

除了智能合约框架本身,NEO-ONE 还包含文档和课程材料,以简化学习过程。该团队的目标是引导用户完成 NEO 智能合约的整个开发过程,让他们通过实践来学习。

**

**

介绍

NEO-ONE 最初是根据 NEO
Tracker 的要求开发的。Alex 评论说 :“当我们需要一种跟踪通证传输的方法,以及一种与 NEO 节点有效交互的流畅 API 时,框架的第一个想法就产生了。到我们建立了 NEO
Tracker 所需的所有基础设施和 API,我们觉得我们已经做了一些其他人可以利用的有用的东西,所以我们开始了充实一个端到端的框架细节的工作
,这个框架将成为 NEO-ONE”。

Alex 注意到 NEO 开发通道中提出的许多问题都与开发的核心基础有关,例如设置环境。这表明了团队的目标是通过开发端到端框架来解决的一个问题,该框架提供“轻松启动和为用户提供每一步的工具”。

NEO-ONE 项目的目标是成为 NEO 上 dApp 开发的一站式套件。Alex 评论道 :“最终,我们的目标是让一个没有 NEO 经验,甚至没有区块链经验的人,能够在 30 分钟或更短的时间内完成他们的第一个智能合同。”

NEO-ONE 框架

作为一个端到端的框架,NEO-ONE 被设计为具有高度可访问性。用户可以在浏览器中进行所有的编码和测试,因此不需要预先设置开发环境。该编辑器包含诸如 console.log 之类的功能,它在智能合约中的工作方式与在 JavaScript 中的工作方式相同,该团队还计划添加一个集成调试器,以解决未来的任何问题。

或者,开发人员可以将新 CLI 集成到 Atom 或 VSCode 编辑器中,在这些编辑器中可以访问相同的功能。这包括通过编写 TypeScript 单元测试自动化测试的能力,对于那些希望快速部署 dApps 的人来说,这是一个关键的故障排除步骤。

根据 Alex 的说法,该团队希望 NEO-ONE 将在 dApp 开发中树立一个新标准:“通过使区块链开发成为一个连贯且简单的过程,我们希望能够对整个加密生态系统产生影响
-如果开发人员需要花更少的时间考虑他们的智能合约以及如何整合它们,我们希望他们有更多的时间花在他们 dApp 的用户体验上。”

虽然目前 NEO 开发人员可能有自己喜欢的编写智能合约的设置,但是 NEO- ONE 可以根据需要简化工作流程的任何部分。Alex 解释说 :“例如,NEO-ONE 极大地简化了设置本地节点的过程,它只需要安装节点,然后就是一个命令。”

“从智能合约开发、测试、本地网络管理、与智能合约交互的客户端 API,到与 React 等框架的集成,一切都经过了精心设计和集成,以提供 NEO 或任何其他区块链框架都无法提供的开发体验。”

采用 TypeScript

NEO-ONE 的发布还首个支持 NEO 上的 TypeScript,TypeScript 是一个静态类型的 JavaScript 超集
。TypeScript 需要在 NEO-ONE 平台上编写智能合约,不过 JavaScript 可以用来与之交互。

Alex 评论说:“我们希望使用静态类型化语言来实现它所带来的所有编译时好处 ;
即使不运行代码,我们也可以执行不变量并确保它是正确的。鉴于 JavaScript 的流行和 TypeScript 在 JavaScript 世界中的声望,TypeScript 似乎是构建需要正确代码的新框架的一个明智选择——毕竟我们是在处理金融交易。”

通过有效地实现整个 TypeScript 语言,NEO-ONE 团队的目标是为开发人员提供一个无意外的体验。要实现这一点,首先必须在 NeoVM 中实现一系列细小改动,否则 TypeScript 智能合约将受到不必要的限制。

在这些变化中有一个 bug 修复,NEO-ONE 团队实际上阻止了它访问主网。在广泛的测试过程中,发现这些更改可能破坏了许多现有的智能合约,因为它们依赖于带有 bug 的 NeoVM 实现。由于这个更改是正确支持 TypeScript 智能合约所必需的,因此必须实现一个系统,允许现有合约使用旧的代码路径,而新合约使用更新的代码路径。

未来,团队的目标是“将端到端功能扩展到其他智能合约语言,以便开发人员可以使用他们最喜欢的任何语言,同时仍然可以利用 NEO-ONE”。

**

**

互动开发课程

除了 NEO-ONE 编辑器的用户友好特性之外,团队还实现了面向 NEO 或区块链新开发人员的课程材料。通过允许用户直接从浏览器构建、测试和编写智能合约,NEO-ONE 希望降低 dApp 开发的门槛。

在被问到课程材料更适合编程新手还是有经验的开发人员时,Alex 回答道 :“介于两者之间。我们遍历所有概念,包括非区块链概念,就好像当开发人员没有经验一样。我们在整个材料中提供了外部文档链接,链接到关于这个主题的更详细的新文档,链接到 TypeScript 特定知识的 TypeScript 文档,以及我们在课程中使用的任何外部库。

参与贡献

作为一个开源项目,NEO-ONE 一直在寻找贡献者。 NEONewsToday 向 Alex 询问了社区可以提供哪些对 NEO-ONE 项目有价值的贡献,他回答说:

“使用框架,报告错误,告诉我们什么有效,什么无效。告诉我们什么可以改进。我们想要使它成为最好的框架,而我们能做到这一点的唯一方法就是得到社区的帮助。

除此之外,我们在 neo-one github 上还列出了一系列需要帮助的问题,一旦你对开发 neo-one 有了感觉,还有更大的事情我们需要帮助。例如,我们有一个强大的集成故事,从开发人员的角度和从产品集成的角度,我们想把它扩展到 Angular、Vue,以及开发人员用于前端开发的任何其他框架。”

NEO-ONE 网站:https://neo-one.io/

NEO-ONE Github:https://github.com/neo-one-suite/neo-one

NEO-ONE Twitter:https://twitter.com/neo_one_suite

原文链接:https://neonewstoday.com/development/introducing-neo-one-a-new-all-in-one-dapp-development-suite/

请点击【阅读原文】访问 NEO-ONE


**
**

【加入 NEO 社区】

NEO 官网:https://neo.org/

Github:https://github.com/neo-project

Reddit:https://www.reddit.com/r/NEO/

Discord:https://discord.io/neo

Twitter: https://twitter.com/NEO_Blockchain

微博:@NEO 智能经济

来源链接:mp.weixin.qq.com