Solidity的官网:http://solidity.readthedocs.io/en/develop/
Solidity 是一个面向合约的高级语言,其语法类似于JavaScript 。是运行在以太坊虚拟机中的代码。
Solidity 是静态类型的编程语言,编译期间会检查其数据类型。支持继承、类和复杂的用户定义类型。
在线体验: https://remix.ethereum.org ,但是这平台只能撰写和编译Solidity代码,如果想真正运行代码的话,需要有一个以太坊的本地环境。
接下来进入官网看一下:
简单翻译一下:
Solidity 是一门面向合约的、为实现智能合约而创建的高级编程语言。这门语言受到了 C++,Python 和 Javascript 语言的影响,设计的目的是能在以太坊虚拟机(EVM)上运行。
Solidity 是静态类型语言,支持继承、库和复杂的用户定义类型等特性。
下面您将会看到,使用 Solidity 语言,可以为投票、众筹、秘密竞价(盲拍)、多重签名的钱包以及其他应用创建合约。
下面有一个Note:
目前尝试 Solidity 编程的最好的方式是使用 Remix (需要时间加载,请耐心等待)。Remix 是一个基于 Web 的 IDE,它可以让你编写 Solidity 智能合约,然后部署并运行该智能合约。
我们可以在Mist客户端上面的菜单栏选择 开发->open Remix IDE,经过一小段时间加载,便出现了其IDE。
可用的 Solidity 集成
- Remix
- 基于浏览器的 IDE,集成了编译器和 Solidity 运行时环境,不需要服务端组件。
- IntelliJ IDEA plugin
- IntelliJ IDEA 的 Solidity 插件(可用于其他所有的 JetBrains IDE)
- Visual Studio Extension
- Microsoft Visual Studio 的 Solidity 插件,包含 Solidity 编译器。
- Package for SublimeText — Solidity language syntax
- SublimeText 编辑器的语法高亮包。
- Etheratom
- Atom 编辑器的插件,支持高亮、编译和运行时环境(兼容后端节点和虚拟机)。
- Atom Solidity Linter
- Atom 编辑器的插件,提供 Solidity 语言的 Lint 检查(静态检查)。
- Atom Solium Linter
- Atom 的可配置的 Solidty 静态检查器,基于 Solium。
- Solium
- 一种静态检查器,识别和修复 Solidity 中的风格以及安全问题。
- Solhint
- 一种静态检查器,提供安全和风格指南以及智能合约验证的最佳实践规则。
- Visual Studio Code extension
- Microsoft Visual Studio Code 插件,包含语法高亮和 Solidity 编译器。
- Emacs Solidity
- Emacs 编辑器的插件,提供语法高亮和编译错误报告。
- Vim Solidity
- Vim 编辑器的插件,提供语法高亮。
- Vim Syntastic
- Vim 编辑器的插件,提供编译检查。
不再维护:
- Mix IDE
- 基于 Qt 的 IDE,可以设计、调试和测试 Solidity 智能合约。
- Ethereum Studio
- 专门的网页 IDE,也提供一个完整以太坊环境的脚本访问。
Solidity 工具列表
- Dapp
- Solidity 语言的构建工具、包管理器以及部署助手。
- Solidity REPL
- 一个命令行控制台,可以让你立刻尝试 Solidity 语言。
- solgraph
- 可视化的 Solidity 控制流,并能标明潜在的安全漏洞。
- evmdis
- EVM 反汇编程序,可以执行字节码的静态分析,能提供比 EVM 操作更高级的抽象。
- Doxity
- Solidity 语言的文档生成器。
第三方 Solidity 解析器和语法
- solidity-parser
- JavaScript 的 Solidity 解析器
- Solidity Grammar for ANTLR 4
- ANTLR 4 解析器生成器的 Solidity 语法
下面再逐步翻译一下文档吧。