Sitelet https://web.archive.org/web/20191207050241/https://ethereum.org/ja/developers/

最後に更新されたページ: 10月 30, 2019

↳ 開発者リソース

↳ はじめに

イーサリアムの開発について知りたければ、このページは最適な場所です。 イーサリアムコミュニティによって書かれた以下のガイドを通してイーサリアムのスタックの基礎に触れ、おそらく他の馴染みあるアプリケーション開発とは異なるコアコンセプトを知りましょう。

先により基礎的なことを学びたい人は こちらをチェックしてください。ethereum.org/ja/learn.

↳ スマートコントラクト言語

イーサリアムバーチャルマシン (EVM) で動作するあらゆるプログラムは一般的に「スマートコントラクト」と呼ばれます。 スマートコントラクトを記述するための言語として最も人気なのは Solidity と Vyperです。その他の言語は現在開発中です。

↳ Solidity イーサリアムで最も人気の言語であり、C++、Python、JavaScriptに影響されています。

↳ Vyper Pythonベースのセキュリティにフォーカスしたイーサリアムのための言語

↳ その他の選択肢をお探しですか?

↳ 開発者ツール

開発者によるアプリケーションの開発、テスト、デプロイを支援するツールがイーサリアムにはすでに多くあり、今も増え続けています。 以下は最も人気なツールです。 より深く知りたければこちらの全リストを参照してください。

↳ Truffle 開発環境、テスト用フレームワーク、ビルド用パイプラインなどのツール

↳ Embark イーサリアム、IPFS、Whisperに対応した開発環境、テスト用フレームワークなどのツール

↳ Waffle 高度なスマートコントラクト開発とテストのためのフレームワーク (ethers.jsベース)

↳ Etherlime Ethers.jsベースのdapp開発 (Solidity & Vyper) デプロイ、デバッグ、テストなどのためのフレームワーク

↳ Buidler イーサリアムのスマートコントラクト開発者向けタスクランナー

↳ ZeppelinOS アップグレード可能なスマートコントラクトの構築やスマートコントラクトアプリケーションのセキュアなマネジメントフレームワーク

↳ その他の選択肢をお探しですか?

↳ 統合開発環境 (IDE)

↳ Visual Studio Code イーサリアム公式サポートプロフェッショナルクロスプラットフォームIDE

↳ Remix 静的解析とテスト用ブロックチェーンVM搭載のウェブベースIDE

↳ Superblocks ブラウザブロックチェーンVM搭載、MetaMask連携トランザクションログなどの機能を持つウェブベースIDE

↳ EthFiddle スマートコントラクトの記述・コンパイル・デバッグが可能なウェブベースIDE

↳ その他の選択肢をお探しですか?

↳ フロントエンドJavaScript API

↳ Web3.js イーサリアムJavaScript API

↳ Ethers.js JavaScriptとTypescriptでのイーサリアムウォレット実装

↳ light.js ライトクライアントのための高レベルリアクティブJSライブラリ

↳ Web3-wrapper Web3.jsのTypescript版

↳ その他の選択肢をお探しですか?

↳ バックエンドAPI

↳ Infura イーサリアムAPI as a Service

↳ セキュリティツール

↳ Slither Python3で書かれたSolidity静的解析フレームワーク

↳ MythX イーサリアムのスマートコントラクトセキュリティ分析API

↳ Manticore スマートコントラクトとバイナリにシンボリック実行を使ったコマンドラインインターフェース

↳ Securify イーサリアムスマートコントラクトのためのセキュリティスキャナー

↳ 形式検証

↳ その他の選択肢をお探しですか?

↳ テストツール

↳ Solidity-Coverage Solidityのコードカバレッジツール

↳ hevm スマートコントラクトのユニットテストとデバッグのためのEVM実装

↳ Whiteblock Genesis E2E開発サンドボックスとブロックチェーン用テストプラットフォーム

↳ その他の選択肢をお探しですか?

↳ ブロックエクスプローラー

ブロックエクスプローラーはイーサリアムブロックチェーン (とテストネット) をブラウズできます。つまり特定のトランザクションやブロック、コントラクトなどのオンチェーンアクティビティを監視できるサービスです。

↳ テストネットとフォーセット

イーサリアムコミュニティは複数のテストネットを運営しています。 これは開発者がイーサリアムのメインネットにアプリケーションをデプロイする前に別の環境で行うアプリケーションのテストのために使われています。

↳ Ropsten Proof of Workブロックチェーン、test-etherがマイニング可能

↳ Rinkeby Proof of Authorityブロックチェーン、Geth開発チームによる運営

↳ Goerli クロスクライアントProof of Authorityブロックチェーン、Goerliコミュニティによる開発・運営

↳ クライアントとノードの運用

イーサリアムネットワークは互換性のあるクライアントソフトウェアを稼働させている多くのノードによって構成されています。 ノードの大多数はGeth または Parityというクライアントを使用しており必要に応じて設定を行うことができます。

↳ Geth Go言語で書かれたイーサリアムクライアント

↳ Parity Rustで書かれたイーサリアムクライアント

↳ Ethnode ローカル環境で実行するGeth または Parityクライアント

↳ イーサリアムノードのリソース

↳ その他の選択肢をお探しですか?

↳ ベストプラクティスとパターン、アンチパターン

↳ DappSys 安全でシンプルでフレキシブルなスマートコントラクトのためのビルディング・ブロック

↳ OpenZeppelin セキュアなスマートコントラクト開発のためのライブラリ

↳ aragonOS アップグレードとパーミッション管理のためのパターン

↳ Smart Contract Weakness Registry

↳ スマートコントラクトセキュリティのベストプラクティスガイド

↳ その他の選択肢をお探しですか?

↳ 開発者サポートとトレーニング

↳ イーサリアム Stackexchange

↳ Solidity Gitter チャットルーム

↳ 全てのイーサリアム Gitter チャットルーム

↳ Cryptozombies イーサリアムゲームで学ぶコード

↳ Chainshot ウェブベースdappコーディングチュートリアル

↳ Blockgeeks ブロックチェーン技術に関するオンラインコース

↳ DappUniversity イーサリアムブロックチェーンでの分散型アプリケーションの構築を学ぶ

↳ Ethernaut Solidityベースで各レベルのコントラクトをハックする演習

↳ UI/UX

↳ スタンダード

イーサリアムコミュニティはこれまで数多くのスタンダードを採択し、開発者をサポートしてきました。 基本的にスタンダードはEthereum Improvement Proposals (EIPs) として、コミュニティによる議論のプロセスを経て導入されます。

スマートコントラクトの標準フォーマットなど、アプリケーションレベルのスタンダードに関わるEIPはEthereum Requests for Comment (ERC) として導入されます。 ERCにはイーサリアムエコシステム全体で広く使われているような必要不可欠なものも多くあります。