此处显示 class "clear" 的内容
fil矿场

  • EOS区块链用什么语言开发?

    发布:admin 浏览:
     

      最近大热的EOS,代表了区块链技术发展到了新的阶段,那么EOS区块链用什么语言开发的呢?答案是C++。

      

    EOS区块链用什么语言开发?

      学习区块链开发,主要学好3条公链就足够了,就是比特币、以太坊、EOS,因为他们分别是区块链1.0、2.0、3.0的代表。

      学习比特币,让我们知道区块链的技术原理;学习以太坊,让我们学会怎么运用智能合约和DAPP; 学习EOS,让我们把区块链应用到各行各业。

      学习EOS的第一篇,我们将学习一些基础知识,那就开始吧~

      不同于以太坊智能合约开发使用的Solidity语言,EOS使用的编程语言是C++。

      Solidity是一门新的编程语言,是以太坊团队发明的;

      C++是一门古老的编程语言,有很多现成的开发者。

      

    Solidity和C++分币系统

      从以太坊和EOS智能合约开发的主要编程语言比较,C++虽然有现成的开发者,但是学习难度比较大;Solidity是一门新语言,但学习起来更简单。

      因此,对于编程小白,学习以太坊更合适;对于有经验的C++开发者,学习EOS更容易。

      

    WebAssembly(WASM)

      EOS使用WebAssembly(WASM)执行用户生成的应用程序和代码,作为对比,以太坊使用的是JavaScript(具体是Web3.js)。

      在了解WebAssembly之前,我们要先了解JavaScript。

      JavaScript(简称JS)是一种网页编程脚本语言,实际上,我们现在浏览的网页,时时刻刻都在使用着JavaScript。JS和HTML、CSS一起构成了我们看到的网页。

      

    分币系统html+css+js

      下面这张图,清晰地表示了HTML/CSS/JS在网页中的职责:

      HTML是结构;

      CSS是表现;

      JS是行为。

      

    js+css+html

      说回WebAssembly,它是一种新的字节码格式,缩写是“.wasm”,是一种新的底层安全的二进制语法。

      要说WebAssembly的技术原理就太复杂了,一句话解释WebAssembly的作用就是:

      让C/C++代码在浏览器中运行。

      C/C++,还有其他更多的编程语言,比如Java,都属于编译型语言。而浏览器是无法运行编译型语言的,只能运行另一类编程语言――解释型语言。

      编译型语言,是把源代码先编译为机器码(也就是可执行程序,比如.exe文件),运行时只需要把机器码交给CPU执行即可。编译型语言的特点是:运行速度快,效率高。缺点是可移植性差。

      解释型语言,直接以源代码的形式出现,运行时再解析为机器码并执行。所有的脚本语言(比如JavaScript)都是解释型语言。解释型语言的特点是,不能独立存在,必须寄生在其他程序(比如浏览器)内。

      到这里,我们明白了WebAssembly,它就像是一个编译器,让浏览器能看懂C/C++代码。