Solidity编码规范

简介: 1、命名规范避免使用小写的L,大写的I,大写的O 应该避免在命名中单独出现,因为很容易产生混淆。合约、库、事件、枚举及结构体命名——大驼峰合约、库、事件及结构体命名应该使用单词首字母大写的方式。比如:SimpleToken, SmartBank, CertificateHashRepository,Player。函数、参数、变量及修饰器函数、参数、变量及修饰器应该使用首单词小写后面单词大写的方式,

1、命名规范

避免使用
小写的L,大写的I,大写的O 应该避免在命名中单独出现,因为很容易产生混淆。
合约、库、事件、枚举及结构体命名——大驼峰
合约、库、事件及结构体命名应该使用单词首字母大写的方式。
比如:SimpleToken, SmartBank, CertificateHashRepository,Player。
函数、参数、变量及修饰器
函数、参数、变量及修饰器应该使用首单词小写后面单词大写的方式,
如:
~函数名应该如:getBalance,transfer,verifyOwner,addMember。
~参数和变量应该如:initialSupply,senderAddress,account,isPreSale。
~修饰器应该如:onlyAfter,onlyOwner

常量
常量应该使用全大写及下划线分割大词的方式,如:MAX_BLOCKS,TOKEN_NAME, CONTRACT_VERSION。
正确使用"_"开头的命名方式
延用Javascript中的约定俗成的命名规范,对私有函数和私有变量使用"_"开头的命名方式,方便区分。

2.代码格式

空行
合约之前、函数之间应该有空行。
左括号
左括号不要换行。
适当空格
在函数、修饰器中定义参数时,参数之前要有一个空格。

3.函数编写规范

按照规定的顺序编写函数
图片1.png

明确函数的可见性
所有的函数(包括构造函数)应该在定义的时候明确函数的可见性。
可见性应在修饰符前
函数的可见性应该写在自定义的函数修饰符前面。
区分函数和事件
为了防止函数和事件(Event)产生混淆,声明一个事件名称首字母大写。对于函数, 始终以首字母小写。

Chainpip介绍

Chainpip是一款关于以太坊智能合约开发的网站, chainpip集成solidity开发环境,提供可视化编译、部署、执行合约等功能,而solidity是以太坊官方设计和支持的开发语言,专门用于编写智能合约。用户使用chainpip就能很快上手,开发一款智能合约。用户还可以在Chainpip上看到其他的dapp项目,可自由复制这些dapp,学习如何开发智能合约。Chainpip还支持多种以太坊系的链: Ethereum(ETH), BNB Smart Chain(BSC), Polygon PoS Chain(MATIC)等。
图片2.png

Chainpip地址:www.chainpip.com

相关文章
|
XML 算法 安全
C#编码规范
本篇内容记录了 命名惯例和规范、 ** 良好的编程习惯、** 注释 、 ** 异常处理
568 0
C#编码规范
|
13天前
|
存储 区块链
Solidity语言详解
Solidity语言详解
11 0
|
2月前
|
存储 安全 编译器
Metamask项目方给Solidity程序员的16个安全建议
文章是Metamask项目方Consensys在2020年发布的关于智能合约安全的博文,提供了16条Solidity程序员的安全建议,包括正确使用assert()、require()、revert()函数,避免使用tx.origin进行授权,注意整数除法舍入问题等,以帮助开发者提高智能合约的安全性。
35 0
|
3月前
solidity 学习
solidity 学习
|
存储 编译器 区块链
【一步步一起学DApp开发】(三)Solidity语言讲解 | 用Solidity编写智能合约 上
【一步步一起学DApp开发】(三)Solidity语言讲解 | 用Solidity编写智能合约
562 0
|
存储 JavaScript 前端开发
【一步步一起学DApp开发】(三)Solidity语言讲解 | 用Solidity编写智能合约 下
【一步步一起学DApp开发】(三)Solidity语言讲解 | 用Solidity编写智能合约
245 0
|
SQL C#
C#编码规范——转载
1. 简介 本规范为一套编写高效可靠的 C# 代码的标准、约定和指南。它以安全可靠的软件工程原则为基础,使代码易于理解、维护和增强,提高生产效率。同时,将带来更大的一致性,使软件开发团队的效率明显提高。
3093 0
|
JSON 区块链 数据格式
如何通过solc编译solidity编写的以太坊智能合约
solc:solidity的编译器 solidity编写的以太坊智能合约可通过命令行编译工具solc来进行编译,成为以太坊虚拟机中的代码。
2333 0
|
JavaScript IDE 前端开发
solidity语言介绍以及开发环境准备
Solidity 是一门面向合约的、为实现智能合约而创建的高级编程语言。这门语言受到了 C++,Python 和 Javascript 语言的影响,设计的目的是能在以太坊虚拟机(EVM)上运行。
2636 0