从零开始学基于以太坊的区块链应用开发系列13-solidity语言简介

时间:2022-05-19 13:03:19 阅读: 最新文章 文档下载
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。


欢迎继续我们的学习。

在上一课的内容中,我们简单介绍了智能合约的概念。

接下来我们将开始进入代码的世界,并学习如何开发自己的智能合约应用。 首先要了解的是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,cssjavascript与之进行互动。

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

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



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

step2.编写后的智能合约将使用solidity compiler进行编译,并生成两种文件 step3.其中一份文件是用于部署在以太坊网络上的可执行的二进制字节码

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

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








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

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

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

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

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




本文来源:https://www.wddqw.com/doc/a2b4fe2a5122aaea998fcc22bcd126fff7055dab.html