查看原文
其他

铜 · 青铜 · 钨:追踪互联网计算机的快速发展

Dfifans DFINITY 2022-07-07




互联网计算机在很大程度上依靠密码学的力量,引入了使人惊讶和惊奇的新方案。它释放了WebAssembly的功能。它重新构想了互联网,并且重新构想了软件的本质。DFINITY基金会一直在潜移默化地扩展和构建互联网计算机,全力以赴。DFINITY始终着迷于可能发生的事情,钨版本开始启动有关互联网技术架构和科学及其软件代码的详细信息的发布。——DFINITY创始人兼首席科学家Dominic Williams


三年的专注研究和开发导致互联网计算机的公开发布时间表稳步发展,预示着软件开发的新范例。


为了充分理解这项工作的范围,它有助于将这些版本中的每一个视为以分散形式重建以前的计算时代的一种行为。


该系列从2019年11月的铜版本(基于终端)开始,接着是今年1月的青铜版本(桌面Web),现在到本月的钨版本(移动应用程序开发)发布,将互联网计算机推向第三团队开发人员。


钨版本(又称“开发者网络”)是五个发行里程碑中的第三个,它将在互联网计算机中达到高潮,最终将在今年晚些时候逐步扩展为公共互联网。


这是我们到现在为止的方式…



铜,第一个里程碑,推出了我们的软件开发套件(SDK)和一种称为Motoko的新计算机语言。


此后,越来越多的互联网计算机爱好者一直在使用它们来构建可在互联网计算机上运行的令人印象深刻的系统和服务。


DFINITY Canister SDK(V0.3.0)的第一个公开版本使开发人员能够:


  • Motoko中的作者容器并编译为WebAssembly

  • 在笔记本电脑上运行互联网计算机的本地实例或“节点”(称为副本)

  • 将已编译程序作为独立容器部署

  • 使用命令行界面与容器进行交互



开发人员现在可以开始构建基于终端的应用程序。


通过下载SDK并创建一个新项目,他们可以访问模板“Hello,World”程序,以在Motoko中构建容器。



铜版本也标志着Motoko语言的正式引入,一些开发人员想知道为什么需要一种全新的编程语言。


简短的答案是,由WebAssembly的共同创建者Andreas Rossberg领导的DFINITY团队创建的Motoko是一种语言,已针对使用WebAssembly(Wasm)为互联网计算机创建防篡改软件和开放互联网服务进行了优化。


请务必注意,开发人员无需使用Motoko与互联网计算机进行交互。


互联网计算机使用Wasm执行环境,这意味着可以编译为Wasm的任何语言(例如Rust)都可以在互联网计算机上运行。


使用Motoko可以更轻松地在互联网计算机上快速开发应用程序,但这并不是开发人员可以使用的唯一语言。


Motoko的一些关键功能包括:


  • 对软件容器的本地支持,这些容器表示为参与者,即封装其状态的自治对象

  • 使用async和await语法来启用异步消息传递,就好像它是同步处理一样

  • 正交持久性,消除了维护和管理外部数据库或存储卷的需要



Motoko是一种现代语言,旨在供基本熟悉JavaScript、Rust、Swift、TypeScript、C#或Java的开发人员使用。


通过设计,Motoko帮助开发人员编写更安全、更高效的代码,快速编译并与用其他语言编写的Wasm模块进行通信。


即使互联网计算机容器(已编译为Wasm模块并准备部署到互联网计算机网络中的代码)彼此异步通信,它也使开发人员能够编写顺序代码。


青铜


青铜,第二个发行里程碑,在达沃斯世界经济论坛上揭晓。


它展示了可以由互联网计算机提供支持的一类新型开放互联网服务的示例,在本例中,这是一个在互联网计算机上运行的名为LinkedUp(LinkedIn的开放版本)的专业档案社交网络。


Dominic Williams在2020年1月在达沃斯举行的世界经济论坛的青铜发布会上发表讲话


青铜使互联网计算机从基于终端的阶段过渡到了桌面Web应用程序的开发。


青铜没有在笔记本电脑上运行一个节点,而是在瑞士一个独立的数据中心中拥有一个服务器网络,该服务器网络运行完全共识和P2P/传输层。


在我们的青铜网络设计中,我们确保基于互联网计算机构建的应用程序将提供与集中式提供商可比的用户体验。


我们记录了往返互联网计算机的18毫秒读取和2秒写入的时间。


代替基于终端的应用程序,使用青铜构建的容器可以存储自己的前端,这意味着应用程序可以将其状态、后端逻辑和前端直接存储在容器中。


实际上,我们使用现代JavaScript构建了一个Web应用程序。


这代表了为开发人员构建应用程序的一种新的、大大简化的方式,也是我们旨在通过互联网计算机引入的范式转变的开始。


除了只能从终端调用的容器外,青铜中的容器还可以相互发送消息,从而为开发人员提供了容器间消息传递的模式。


这意味着一个容器可以简单地调用、导入和访问另一个容器的方法,这是构建开放式自主软件的第一步。


LinkedUp:幕后花絮


LinkedUp:前端



钨,第三个里程碑,是向前迈出的更加重要的一步。


互联网计算机现在在全球多个数据中心中运行,并向使用网络扩展的开发人员工具构建创新应用程序和企业系统的第三方开发人员和团队开放。



对于钨版本的发布,DFINITY展示了CanCan,它是TikTok的一种开放替代方案,它不是由公司或政府实体拥有或运营的。


CanCan用少于1,000行的代码构建,以展示在互联网计算机上进行构建的简便性。(有关显示开发人员如何在互联网计算机上编写和部署应用程序的速度的更多示例,请查看我们48小时内部的钨黑客马拉松的结果。)


钨允许互联网计算机从桌面Web应用程序转移到移动开发,并挑战了有关区块链计算机的传统假设。


CanCan在多个数据中心的互联网计算机上运行的事实,标志着互联网计算机是一种新型的区块链计算机,具有无穷的容量和性能,可与传统云相媲美。


我们邀请您来看看有什么可能…


现在通过dfinity.org/tungsten申请访问互联网计算机发布的钨版本。


加入我们的开发人员社区,并在forum.dfinity.org上开始构建。



作者:DFINITY(Medium)

翻译:Catherine



Tungsten Hackathon:所有系统都将用于开发人员网络发布

企业互联网计算机

发言人宣布:Chris Dixon「a16z」和Olaf Carlson-Wee「Polychain」等



进Dfinity官方社群,请添加小助手微信:

comiocn




长按关注

Dfinity官方微信

给你第一手资讯和项目信息

更可随时答疑解惑



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存