【鏈塊技術36期】智能合約基礎語言(一)——Solidity概述和開發工具的使用

 

原文鏈接:區塊鏈技術語言:Solidity(一):概述和開發工具的使用

 

一、目錄

☛Solidity的概述

☛Solidity開發工具remix的使用

☛Solidity本地開發工具remix安裝

二、Solidity的概述

Solidity 是一門爲實現智能合約而創建的高級編程語言。這門語言受到了 C++,Python 和 Javascript 語言的影響,設計的目的是能在以太坊虛擬機(EVM)上運行。

Solidity 是靜態類型語言,支持繼承、庫和複雜的用戶定義類型。 (靜態語言——每個變量包括局部和狀態變量都需要在編譯時指定變量類型或至少可以推導出類型)

以太坊底層是基於帳戶,而非UTXO的,所以有一個特殊的Address的類型。用於定位用戶,定位合約,定位合約的代碼(合約本身也是一個帳戶)。

由於語言內嵌框架是支持支付的,所以提供了一些關鍵字,如payable,可以在語言層面直接支持支付,而且超級簡單。

存儲是使用網絡上的區塊鏈,數據的每一個狀態都可以永久存儲,所以需要確定變量使用內存,還是區塊鏈。

運行環境是在去中心化的網絡上,會比較強調合約或函數執行的調用的方式。因爲原來一個簡單的函數調用變爲了- 一個網絡上的節點中的代碼執行,分佈式的感覺。

最後一個非常大的不同則是它的異常機制,一旦出現異常,所有的執行都將會被回撤,這主要是爲了保證合約執行的原子性,以避免中間狀態出現的數據不一致。

三、第一個實例

四、如何編寫Solidity

目前嘗試 Solidity 編程的最好的方式是使用 Remix (需要時間加載,請耐心等待)。Remix 是一個基於 Web 的 IDE,它可以讓你編寫 Solidity 智能合約,然後部署並運行該智能合約。

五、Solidity開發工具remix的使用

Solidity智能合約開發的IDE有很多,官方推薦的Remix是基於瀏覽器的。

1.官方工具:

[http://remix.ethereum.org/#optimize=false&version=soljson-v0.4.24+commit.e67f0147.js]

2.操作:手動編譯、自動編譯、選擇合約、查看編譯詳情、選擇運行環境、部署合約、函數調用、調試

3.Remix分兩個版本, 在線版和本地安裝版. 在線使用最方便直接用瀏覽器打開上邊的地址。 安裝版的界面和可以安裝到本地, 安裝的方式如下:

六、Solidity本地開發工具remix安裝

6.1 安裝步驟

6.1.1 安裝nodejs

Node.js 是一個基於 Chrome V8 引擎的 JavaScript 運行環境。可以在這個環境中運行JavaScript編寫的程序。 NPM 是Node.js 的包管理器,是全球最大的開源庫生態系統,可以安裝各種JavaScript編寫的程序。而本地版的remix就是用JavaScript編寫的工具,因此依賴nodejs運行環境。另外remix還用到了python語言編寫的模塊,所以還需要安裝python。

因此彼此的依賴關係是:

安裝Python的步驟: 

https://www.runoob.com/python/python-install.html

安裝nodejs的步驟:

https://www.runoob.com/nodejs/nodejs-install-setup.html

安裝成功後打開終端查看版本號:

6.1.2 安裝remix-ide

6.1.3 修改文件夾權限(Windows省略此步驟)

6.1.4 下載安裝包

從https://github.com/ethereum/remix-ide下載安裝包解壓。

6.1.5 啓動remix

啓動remix,然後打開http://127.0.0.1:8080編輯solidity。

 

本文完,獲取更多資訊,敬請關注區塊鏈工程師。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章