今天正式開始翻譯Solidity的英文文檔,為的是給后來(lái)人提供一個(gè)方便的學(xué)習(xí)資料。
Solidity
Solidity是一個(gè)高級(jí)語(yǔ)言,其語(yǔ)法類似于JavaScript,編譯后能夠在以太坊虛擬機(jī)上運(yùn)行。它功能強(qiáng)大,可以創(chuàng)建投票、眾籌、拍賣、多重簽名錢包等應(yīng)用。
注:嘗試Solidity最好的辦法是使用Browser-Based Compiler。
相關(guān)鏈接
1. ?Ethereum
2. ?Changelog
3. ?Story Backlog
4. Source Code
6. Gitter Chat
相關(guān)的集成環(huán)境
基于瀏覽器的IDE,帶有集成編譯器和無(wú)需服務(wù)器端的Solidity運(yùn)行時(shí)環(huán)境。
專門的Web IDE,同時(shí)還能通過(guò)shell訪問(wèn)以太坊運(yùn)行環(huán)境。
Microsoft Visual Studio的Solidity插件,包含Solidity編譯器。
4.?Package for SublimeText — Solidity language syntax
SublimeText 編輯器的語(yǔ)法高亮顯示包。
Atom編輯器的插件,具有語(yǔ)法高亮、編譯和運(yùn)行時(shí)環(huán)境(需要后端以太坊節(jié)點(diǎn))。
Atom編輯器的插件,提供了可靠性檢驗(yàn)。
7.?Solium
Solidity的命令行l(wèi)inter。
8.?Visual Studio Code extension
Microsoft Visual Studio Code的Solidity插件,包括語(yǔ)法高亮和Solidity編譯器。
用于Emacs編輯器的插件,提供語(yǔ)法高亮顯示和編譯錯(cuò)誤報(bào)告。
10.?Vim Solidity
Vim編輯器插件,提供語(yǔ)法高亮。
11.?Vim Syntastic
Vim編輯器插件,提供編譯檢查。
12.?Mix IDE
基于Qt的IDE,用于開發(fā)、調(diào)試和測(cè)試智能合約,不過(guò)已經(jīng)停止更新。
Solidity 工具
1.?Dapple
Solidity的軟件包和部署管理器。
Solidity 的命令行控制臺(tái)。
3.?solgraph
Solidity 的可視化控制流程工具,能檢測(cè)并突出顯示潛在的安全漏洞。
4.?evmdis
EVM(以太坊虛擬機(jī))反匯編器,對(duì)字節(jié)碼執(zhí)行靜態(tài)分析,提供比EVM操作更高級(jí)別的抽象能力。
語(yǔ)言文檔
在接下來(lái)的介紹中,我們將先了解一個(gè)簡(jiǎn)單的以Solidity編寫的智能合約,然后了解一下關(guān)于區(qū)塊鏈和以太坊虛擬機(jī)的基礎(chǔ)知識(shí),接下來(lái)將通過(guò)一些示例來(lái)解釋Solidity的幾個(gè)特性。記住,您可以隨時(shí)在瀏覽器中實(shí)踐!
如果你有問(wèn)題,你可以嘗試在Ethereum Stackexchange站點(diǎn)上搜索或詢問(wèn),或者來(lái)到我們的gitter頻道。 歡迎提出你的想法和意見(jiàn)!
目錄
0. 關(guān)鍵字索引,搜索頁(yè)(本部分不翻譯,直接提供英文鏈接)
? ? 1.1 ?一個(gè)簡(jiǎn)單的智能合約
? ? 1.2 ?區(qū)塊鏈基礎(chǔ)
? ? 1.3 ?以太坊虛擬機(jī)
2. 安裝Solidity
? ? 2.1 ?版本控制
? ? 2.2? Browser-Solidity
? ? 2.3 ?npm / Node.js
? ? 2.4 ?通過(guò)二進(jìn)制包安裝
? ? 2.5 ?通過(guò)源代碼編譯安裝
? ? 2.6 ?版本控制的重要信息
3. Solidity示例
? ? 3.1 ?投票
? ? 3.2 ?拍賣
? ? 3.3 ?安全遠(yuǎn)程支付
? ? 3.4 ?小額支付
4. Solidity進(jìn)階
? ? 4.1 ?源文件結(jié)構(gòu)
? ? 4.2 ?智能合約結(jié)構(gòu)
? ? 4.3 ?類型
? ? 4.4 ?單位和全局變量
? ? 4.5 ?表達(dá)式和控制結(jié)構(gòu)
? ? 4.6 ?智能合約
? ? 4.7 ?其他
5. 安全注意事項(xiàng)
? ? 5.1 ?陷阱
? ? 5.2 ?建議
? ? 5.3 ?驗(yàn)證
6. 樣式指南
? ? 6.1 ?介紹
? ? 6.2 ?代碼布局
? ? 6.3 ?命名約定
7. 常見(jiàn)模式
? ? 7.1 ?提取合同
? ? 7.2 ?限制訪問(wèn)
? ? 7.3 ?狀態(tài)機(jī)制
8. 貢獻(xiàn)
? ? 8.1 ?如何報(bào)告問(wèn)題
? ? 8.2 ?整合更新的工作流程
9. 常見(jiàn)問(wèn)題
? ? 9.1 ?基本問(wèn)題
? ? 9.2 ?高級(jí)問(wèn)題