Solidity

Solidityは、スマートコントラクトを実装するための、オブジェクト指向の高級言語です。スマートコントラクトとは、Ethereumのアカウントの動作を制御するプログラムです。

Solidityは、 カーリーブラケット言語 です。C++、Python、JavaScriptの影響を受けており、Ethereum Virtual Machine (EVM)をターゲットにして設計されています。Solidityがどの言語から影響を受けているかについては、 言語の影響 のセクションで詳しく説明しています。

Solidityは、静的型付け、継承、ライブラリ、複雑なユーザー定義型などの機能をサポートしています。

Solidityでは、投票、クラウドファンディング、ブラインドオークション、マルチシグネチャウォレットなどの用途に応じたコントラクトを作成できます。

コントラクトをデプロイする際には、Solidityの最新のリリースバージョンを使用すべきです。例外的なケースを除いて、最新バージョンには セキュリティフィックス が施されています。さらに、破壊的な変更や新機能も定期的に導入されます。私たちは現在、 この速いペースでの変更を示すため に、0.y.zというバージョン番号を使用しています。

警告

Solidityは最近バージョン0.8.xをリリースしましたが、多くの変更点があります。 必ず その完全なリスト を読んでください。

Solidity やこのドキュメントを改善するためのアイデアはいつでも歓迎します。 詳細は コントリビューターガイド を読んでください。

ヒント

このドキュメントは、左下のバージョン表示メニューをクリックして、希望のダウンロード形式を選択すると、PDF、HTML、Epubのいずれかでダウンロードできます。

はじめに

1. スマートコントラクトの基本を理解する

スマートコントラクトの概念を初めて知る方には、まず「スマートコントラクト入門」を掘り下げて読むことをお勧めします。

2. Solidityを知る

基本的な操作に慣れてきたら、 "Solidity by Example" や "言語仕様" のセクションを読んで、言語のコアコンセプトを理解することをお勧めします。

3. Solidityコンパイラをインストールする

Solidity コンパイラをインストールするには様々な方法があります。お好みのオプションを選択し、 インストールページ に記載されている手順に従ってください。

ヒント

Remix IDE を使えば、ブラウザ上で直接コード例を試すことができます。RemixはWebブラウザベースのIDEで、Solidityをローカルにインストールすることなく、Solidityスマートコントラクトの作成、デプロイ、管理を行うことができます。

警告

人間がソフトウェアを書くと、バグが発生することがあります。スマートコントラクトを作成する際には、確立されたソフトウェア開発のベストプラクティスに従うべきです。これには、コードレビュー、テスト、監査、およびコレクトネスの証明が含まれます。スマートコントラクトのユーザーは、コードの作成者よりもコードを信頼している場合があります。また、ブロックチェーンやスマートコントラクトには、注意すべき独自の問題がありますので、本番のコードに取り組む前に、必ず Security Considerations のセクションを読んでください。

4. さらに学ぶ

Ethereumでの分散型アプリケーションの構築について詳しく知りたい場合は、 Ethereum Developer Resources で、Ethereumに関するさらに一般的なドキュメントや、幅広い種類のチュートリアル、ツール、開発フレームワークを紹介しています。

疑問点があれば、検索したり、 Ethereum StackExchangeGitterチャンネル で聞いてみるといいでしょう。

翻訳

このドキュメントは、コミュニティのボランティアによって、いくつかの言語に翻訳されています。これらの言語は、完全性と最新性の程度が異なります。英語版を参考にしてください。

注釈

最近、コミュニティの活動を効率化するために、GitHubの組織と翻訳のワークフローを新たに設定しました。今後のコミュニティ翻訳への貢献方法については、 翻訳ガイド をご参照ください。

コンテンツ

キーワードインデックス, 検索ページ

その他の資料