Solidity
Solidity是一种面向对象的高级语言,用于实现智能合约。智能合约是管理以太坊状态下账户行为的程序。
坚固是一种 curly-bracket language 。它受C++、Python和JavaScript的影响,是针对以太虚拟机(EVM)而设计的。您可以在中找到更多关于Solid受到哪些语言的启发的详细信息 language influences 部分。
Solidity 是静态类型的,支持继承、库和复杂的用户定义类型等功能。
有了Solidity,您可以创建用于投票、众筹、 全盲拍卖 和多签名钱包等用途的合同。
部署合同时,应使用最新发布的Solidity版本。除特殊情况外,只有最新版本会收到 security fixes 。此外,我们还定期推出突破性的更改和新功能。我们目前使用的是0.x版本号 to indicate this fast pace of change 。
警告
Solidity最近发布了0.8.x版本,该版本引入了许多突破性的变化。一定要看书 the full list 。
我们随时欢迎您提出有关提高 Solidity 或本文档的建议,请阅读我们的 contributors guide 了解更多详细信息。
快速入门
1.了解智能合同基础知识
如果您不熟悉智能合同的概念,我们建议您从深入阅读“智能合同简介”部分开始,该部分包括:
2.了解扎实
一旦您习惯了基础知识,我们建议您阅读 "Solidity by Example" 和“语言描述”部分,了解语言的核心概念。
3.安装Solidness编译器
安装固态编译器的方法有多种,只需选择您的首选选项,然后按照 installation page 。
提示
控件直接在浏览器中试用代码示例。 Remix IDE 。ReMix是一个基于Web浏览器的IDE,允许您编写、部署和管理可靠智能合同,而无需在本地安装可靠。
警告
当人类编写软件时,它可能会有错误。在编写智能合同时,您应该遵循既定的软件开发最佳实践。这包括代码审查、测试、审计和正确性证明。智能合约用户有时比他们的作者对代码更有信心,区块链和智能合约有自己独特的问题需要注意,所以在处理生产代码之前,请确保阅读 安全注意事项 部分。
4.了解更多信息
如果您想了解更多关于在Etherum上构建分散应用程序的信息,请参阅 Ethereum Developer Resources 可以帮助您获得更多关于Etherum的一般文档,以及广泛选择的教程、工具和开发框架。
如果您有任何问题,您可以尝试搜索答案或在 Ethereum StackExchange ,或我们的 Gitter channel 。
翻译
社区志愿者帮助将本文件翻译成多种语言。它们有不同程度的完整性和最新性。英文版作为参考。
注解
我们最近建立了一个新的GitHub组织和翻译工作流程,以帮助简化社区工作。请参阅 translation guide 获取有关如何为社区翻译工作做出贡献的信息。