Solidity編碼規(guī)范

1、命名規(guī)范

避免使用

小寫的L,大寫的I,大寫的O 應(yīng)該避免在命名中單獨(dú)出現(xiàn),因?yàn)楹苋菀桩a(chǎn)生混淆。

合約、庫(kù)、事件、枚舉及結(jié)構(gòu)體命名——大駝峰

合約、庫(kù)、事件及結(jié)構(gòu)體命名應(yīng)該使用單詞首字母大寫的方式。

比如:SimpleToken, SmartBank, CertificateHashRepository,Player。

函數(shù)、參數(shù)、變量及修飾器

函數(shù)、參數(shù)、變量及修飾器應(yīng)該使用首單詞小寫后面單詞大寫的方式,

如:

~函數(shù)名應(yīng)該如:getBalance,transfer,verifyOwner,addMember。

~參數(shù)和變量應(yīng)該如:initialSupply,senderAddress,account,isPreSale。

~修飾器應(yīng)該如:onlyAfter,onlyOwner


常量

常量應(yīng)該使用全大寫及下劃線分割大詞的方式,如:MAX_BLOCKS,TOKEN_NAME, CONTRACT_VERSION。

正確使用"_"開頭的命名方式

延用Javascript中的約定俗成的命名規(guī)范,對(duì)私有函數(shù)和私有變量使用"_"開頭的命名方式,方便區(qū)分。

2.代碼格式

空行

合約之前、函數(shù)之間應(yīng)該有空行。

左括號(hào)

左括號(hào)不要換行。

適當(dāng)空格

在函數(shù)、修飾器中定義參數(shù)時(shí),參數(shù)之前要有一個(gè)空格。

3.函數(shù)編寫規(guī)范

按照規(guī)定的順序編寫函數(shù)


明確函數(shù)的可見性

所有的函數(shù)(包括構(gòu)造函數(shù))應(yīng)該在定義的時(shí)候明確函數(shù)的可見性。

可見性應(yīng)在修飾符前

函數(shù)的可見性應(yīng)該寫在自定義的函數(shù)修飾符前面。

區(qū)分函數(shù)和事件

為了防止函數(shù)和事件(Event)產(chǎn)生混淆,聲明一個(gè)事件名稱首字母大寫。對(duì)于函數(shù), 始終以首字母小寫。


Chainpip介紹

Chainpip介紹

Chainpip是一款關(guān)于以太坊智能合約開發(fā)的網(wǎng)站, chainpip集成solidity開發(fā)環(huán)境,提供可視化編譯、部署、執(zhí)行合約等功能,而solidity是以太坊官方設(shè)計(jì)和支持的開發(fā)語(yǔ)言,專門用于編寫智能合約。用戶使用chainpip就能很快上手,開發(fā)一款智能合約。用戶還可以在Chainpip上看到其他的dapp項(xiàng)目,可自由復(fù)制這些dapp,學(xué)習(xí)如何開發(fā)智能合約。Chainpip還支持多種以太坊系的鏈: Ethereum(ETH), BNB Smart Chain(BSC), Polygon PoS Chain(MATIC)等。



Chainpip地址:www.chainpip.com

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容