首页 >>【区块链】从零开始学基于以太坊的区块链应用开发系列11
【区块链】从零开始学基于以太坊的区块链应用开发系列11
发布来源: 赛隆网 发布时间:2018-09-05

欢迎继续我们的学习。


在上一课的内容中,我们简单介绍了智能合约的概念。接下来我们将开始进入代码的世界,并学习如何开发自己的智能合约应用。



首先要了解的是solidity编程语言。


简单来说,它是一种语法非常类似javascript的高级语言,被设计成用编译的方式生成以太坊虚拟机代码。使用solidity语言可以很轻松的编写所需的智能合约。


solidity编程语言具备以下的特性:



1.solidity语言所撰写的代码将保存在.sol后缀的文件中。


在编写sol代码的时候,你可以选择任何一个自己所喜欢的代码编辑器。


2.solidity语言是一门强类型编程语言


所谓的强类型语言是相对javascript,python这种动态类型语言而定义的。简单来说,就是每个变量的类型需要事先声明,而不能根据语境自动判断。


3.solidity编程语言的语法和javascript很类似


所以,如果你之前有过js的编程语言,会发现solidity语言很友好~

当然,需要注意的是这里只是说solidity语言类似javascript,实际上还是存在不小的区别。


4.solidity语言有一些很方便的技巧


事实上,如果你之前学过javascript,那么在了解了一些技巧之后,上手solidity会非常轻松


实际上,我们会使用solidity语言来编写智能合约,然后使用html,css和javascript与之进行互动。


所以,虽然solidity作为一个单词比C,C++,C#,java这些要复杂,但作为一门编程语言,它一点都不难上手,跟javascript,python语言一样简单易学。


在了解了solidity语言的基本特性后,我们来看看使用solidity所编写的应用是如何运行的。



step1.首先,我们使用solidity语言来编写智能合约的定义;


step2.编写后的智能合约将使用solidity compiler进行编译,并生成两种文件;


step3.其中一份文件是用于部署在以太坊网络上的可执行的二进制字节码;


step4.另外一份是所谓的ABI(Application Binary Interface,应用程序二进制接口),通过ABI可以编写不同的基于智能合约的具体应用。


下图展示了一个实际应用的执行方式:



简单来说,我们会使用javascript编写基于智能合约的应用,但是使用js所编写的程序没有权限直接访问运行在以太坊上的智能合约。

因此,需要先调用ABI,然后ABI会访问智能合约,并执行相关的代码。


好了,关于solidity编程语言的介绍就先到这里了。

感兴趣的童鞋还可以去官网看看:http://solidity.readthedocs.io/en/v0.4.23/ 


从下一课开始,我们将真正编写自己的第一个智能合约。

我们下一课再见~


如果在操作中,遇到什么不懂的问题,欢迎到我的论坛去发帖询问,论坛的网址是:http://www.vr910.com/forum.php


注:本文系本站转载,转载目的在于传递更多信息,并不代表本站赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请与本站联系,我们将在第一时间删除内容!本文版权归原作者所有 内容为作者个人观点 本站只提供参考并不构成任何投资及应用建议。

关注我们

关注我们