Solidity0.8.10 语言新特性
浩南哥
发表于 2022-10-29 13:28:04
148
0
0
Solidity是一种面向对象的高级语言,用于实现智能合约。智能合约是管理以太坊状态下账户行为的程序。3 B# o' }" d# A/ @3 A( Y! y4 w3 ?$ a
7 a2 w4 `) L3 H3 {; Z
坚固是一种 curly-bracket language 。它受C++、Python和JavaScript的影响,是针对以太虚拟机(EVM)而设计的。您可以在中找到更多关于Solid受到哪些语言的启发的详细信息 language influences 部分。& g( {' {+ ^/ q& \6 k: U, C
- Z5 ~- o( ?3 _: i
7 V7 I1 |8 P1 k M$ Q
Solidity 是静态类型的,支持继承、库和复杂的用户定义类型等功能。6 q- a9 T% p( y- R) [
) n! e, m/ J5 h
有了Solidity,您可以创建用于投票、众筹、 全盲拍卖 和多签名钱包等用途的合同。# x+ A+ U# k, K/ r8 ~2 `( d% w% k1 R2 Q
4 v `0 U" I/ y# e: M
部署合同时,应使用最新发布的Solidity版本。除特殊情况外,只有最新版本会收到 security fixes 。此外,我们还定期推出突破性的更改和新功能。我们目前使用的是0.x版本号 to indicate this fast pace of change 。
0 t3 P; P2 }7 P/ J2 Z/ d' W* L
警告
. p9 \# N3 _3 T* b+ w; s
Solidity最近发布了0.8.x版本,该版本引入了许多突破性的变化。一定要看书 the full list 。
) [" L7 ^9 O* v$ s$ ~
我们随时欢迎您提出有关提高 Solidity 或本文档的建议,请阅读我们的 contributors guide 了解更多详细信息。
) k& q( y5 S. c+ K/ u
快速入门( O' m- a+ h& J, ~
1.了解智能合同基础知识
: @8 s, }3 D" o7 \
如果您不熟悉智能合同的概念,我们建议您从深入阅读“智能合同简介”部分开始,该部分包括:! F( [0 l. @& B8 c4 `! o+ y
A simple example smart contract 用结实的字迹写的。5 g& ?% J5 e I% @. z+ i$ }
Blockchain Basics 。
The Ethereum Virtual Machine 。 ?% s8 A8 m- \/ Z' h8 I
3 ]! t% X* l8 F# A) k4 [
2.了解扎实
* S" W- \* C; J1 W7 F+ r& T e' g
一旦您习惯了基础知识,我们建议您阅读 "Solidity by Example" 和“语言描述”部分,了解语言的核心概念。
9 _9 O! X: _5 t7 k6 i: ^0 u6 ?
3.安装Solidness编译器5 }5 ?1 \! ?6 X1 X
2 S" M- s- r/ _
安装固态编译器的方法有多种,只需选择您的首选选项,然后按照 installation page 。
提示# b0 o- D7 C6 j/ P
控件直接在浏览器中试用代码示例。 Remix IDE 。ReMix是一个基于Web浏览器的IDE,允许您编写、部署和管理可靠智能合同,而无需在本地安装可靠。
警告: v% C7 ~/ z0 _3 ?4 \, J. N3 x
3 l7 A' v! R; B
当人类编写软件时,它可能会有错误。在编写智能合同时,您应该遵循既定的软件开发最佳实践。这包括代码审查、测试、审计和正确性证明。智能合约用户有时比他们的作者对代码更有信心,区块链和智能合约有自己独特的问题需要注意,所以在处理生产代码之前,请确保阅读 安全注意事项 部分。- u/ F) K$ H7 l$ `( j
4.了解更多信息
% W9 f" F2 n- g( U( T
如果您想了解更多关于在Etherum上构建分散应用程序的信息,请参阅 Ethereum Developer Resources 可以帮助您获得更多关于Etherum的一般文档,以及广泛选择的教程、工具和开发框架。/ b1 r% o' K7 U: [
7 s( _+ R4 L+ L
成为第一个吐槽的人