イーサリアムは、システムにスマートコントラクトサポートを実装することで、さまざまな可能性のためにブロックチェーンを開きました。これは、順番に、イーサリアムを大多数の開発者に開放し、イーサリアム固有の言語でスマートコントラクトを開発することでブロックチェーン上で実行できるあらゆる種類のアプリケーションを作成しました。 堅牢性 、 蛇 、および LLL 。言語はさておき、いくつか イーサリアム開発ツール 開発者としての私たちの生活を煩わしさから解放するために、何年にもわたって開発されてきました。
の開発について、さまざまな記事を見つけることができます イーサリアム そして スマートコントラクト しかし、これらすべてを非常にシームレスにするツールについて説明している記事はほとんどありません。そこで、さまざまなイーサリアム開発ツールについての洞察を与える記事を書くことにしました。
イーサリアム開発ツール
便宜上、ツールを4つの主要なカテゴリに分類しました。
- 統合開発環境
1.1リミックス
1.2 EthFiddle - RPCインターフェイスを備えたローカルテストノード
2.1ガナッシュ/ TestRPC
2.2ピセレウム - コマンドラインベースの開発ツール
3.1トリュフ
3.2乗船
3.3ダップ/ダップル - コードアナライザー
4.1浴槽
4.2オープン-ゼッペリン - ブラウザ
5.1ミスト
5.2メタマスク
java system.exit(0)
それでは、IDEについて説明することから、イーサリアム開発ツールのリストから始めましょう。
統合開発環境
アプリケーション構築の旅における開発者の最初のタスクは、コアロジックを作成することです。これは、通常、統合開発環境で入力されます。 IDEの全体的な目標と主な利点は次のとおりです。開発者の生産性が向上しました。 IDEは、セットアップ時間を短縮し、開発タスクの速度を上げ、開発者を最新の状態に保ち、開発プロセスを標準化することにより、生産性を向上させます。堅牢性について話すとき、最初に頭に浮かぶIDEはRemixです。
リミックス
以前はBrowser-Solidityとして知られていたRemixは、特に堅牢性とイーサリアム開発環境を目的としたWebベースのIDEです。
長所:
- 最新のコンパイラバージョンでコードをコンパイルする
- JavaScript仮想マシンやInjectedWeb3.jsプロバイダーなどのカスタマイズされた環境でスマートコントラクトをデプロイして実行します。
- GitHubとSwarmからコードをインポートできます
短所:
- 初心者にはわかりにくい
EthFiddle
Remixの他に、別のブラウザベースすばらしいIDEですが、他の目的にも使用できます。これはEthfiddleと呼ばれ、コードの提示に最適です。 remixは、さまざまなネットワークや環境でコードをテストする柔軟性を提供しますが、ethfiddleは、埋め込み機能が簡単なため、プレゼンテーションでコードを共有することがすべてです。
長所:
- 簡単な埋め込みと共有機能
短所:
- 遅く、Remixほど機能が豊富ではありません
Solidityコードをローカルでコンパイルするために、ノードパッケージマネージャーを使用してSOLCコンパイラを簡単にインストールできます。それとは別に、次のようなオープンソースのテキストエディタ 崇高なテキスト そして 原子 堅牢性構文の強調表示に対する優れたパッケージサポートがあります。
イーサリアム開発ツール|イーサリアム開発者コース|エドゥレカ
RPCインターフェースを使用したテストノード
ご存知のように、ブロックチェーン上のすべてのものは本質的に不変です。スマートコントラクトの更新でさえ同じアドレスを登録することはできず、新しいインスタンスとして新しいアドレスにデプロイする必要があります。これはまた、メインネットにデプロイされると変更を加えることができないため、スマートコントラクトをメインブロックチェーンネットワークでテストできないことも意味します。したがって、イーサリアム開発者はローカルテストノードを使用してコントラクトの相互作用をテストするため、テストネットワーク/ノードはイーサリアム開発ツールの不可欠な部分を形成します。
最も人気のあるローカルテストネットワークについて説明しましょう
ガナッシュ
私たちのリストの最初は、Ethereum開発者によって最も広く使用されているローカルテストノードであるGanache-cliです。 Ganacheは、契約のデプロイ、アプリケーションの開発、テストの実行に使用できるイーサリアム開発用のパーソナルブロックチェーンです。デスクトップアプリケーションとコマンドラインツール(以前はTestRPCと呼ばれていました)の両方として利用できます。 Ganacheは、Windows、Mac、およびLinuxで使用できます。
ガナッシュを使用すると、次のことができます–
- 住所、秘密鍵、取引、残高など、すべてのアカウントのステータスをすばやく表示します。
- 応答やその他の重要なデバッグ情報を含む、Ganacheの内部ブロックチェーンのログ出力を参照してください。
- ワンクリックで高度なマイニングを構成し、開発ニーズに最適なブロック時間を設定します。
- すべてのブロックとトランザクションを調べて、内部で何が起こっているかについての洞察を得ます。
ピセレウム
次に、リストにあります ピセレウム 、Pythonで記述されたローカルテストノードツールです。ガナッシュよりもはるかに軽量ですが、機能が豊富ではありません。
pythereumを使用すると、
フィボナッチ関数c ++
- ジェネシスブロックで新しいテストブロックチェーンを作成する
- 渡されたジェネシス状態で新しいテスト状態を作成します。
- 指定された秘密鍵を使用して、指定された値とデータを持つ指定されたアドレスにトランザクションを送信します。
CLIベースの開発管理ツール
3つの主要なコマンドラインベースのイーサリアム開発ツールがあります。
- トリュフ
- 乗船
- ダップル
それぞれを1つずつ簡単に見ていきましょう。
トリュフ
だから私たちのリストの最初は トリュフ 、これもリストされている3つのツールの中で最も人気のあるツールです。 Truffleは、Ethereumの開発環境、テストフレームワーク、および資産パイプラインであり、Ethereum開発者としての生活を楽にすることを目的としています。会社「ConsenSYS」は、Truffleの開発と保守を担当しています。
トリュフを使用すると、次のようになります。
- 組み込みのスマートコントラクトのコンパイル、リンク、展開、およびバイナリ管理。
- MochaとChaiとの自動契約テスト。
- カスタムビルドプロセスをサポートする構成可能なビルドパイプライン。
- スクリプト可能な展開と移行のフレームワーク。
- 多くのパブリックおよびプライベートネットワークに展開するためのネットワーク管理。
- 直接契約通信用のインタラクティブコンソール。
- 開発中のアセットの即時再構築。
- Truffle環境内でスクリプトを実行する外部スクリプトランナー。
乗船
イーサリアム開発ツールの次のリストは 乗船 。 Embarkは、サーバーレスhtml5アプリケーションを使用して分散型アプリケーション(DApp)を簡単に開発およびデプロイできるようにするフレームワークです。 Embarkは現在、EVMブロックチェーン(Ethereum)、分散型ストレージ(IPFS)、および分散型通信プラットフォーム(WhisperおよびOrbit)と統合されています。 Swarmは展開がサポートされています。
Embarkを使用すると、次のことができます。
- コントラクトを自動的にデプロイし、JSコードで使用できるようにします。 Embarkは変更を監視し、コントラクトを更新すると、Embarkはコントラクト(必要な場合)とdappを自動的に再デプロイします
- javascriptを使用してコントラクトでテスト駆動開発を実行する
- 展開された契約を追跡する本当に必要な場合にのみ展開する
- EmbarkJSを介してDAppにデータを簡単に保存および取得します。ファイルのアップロードと取得を含みます。
- アプリケーション全体をIPFSまたはSwarmにデプロイします。
- 相互依存する契約の複雑なシステムを簡単に管理します。
ダップ
コマンドラインベースのイーサリアム開発ツールのリストの最後にあります ダップル 。現在、Dappleは廃止され、と呼ばれる新しいツールが採用されました。 ダップ 、同じ開発者グループによって作成されました。 Dappは、スマートコントラクト開発のためのシンプルなコマンドラインツールです。次の一般的なユースケースをサポートします。
- パッケージ管理
- ソースコードの構築
- ユニットテスト
- 単純な契約展開
コード分析ツール
分散型ネットワーク用のクリーンで安全なコードを書くことは簡単な作業ではありません。特にコードの大部分が他の人のお金を処理する場合は、ストレージとセキュリティの観点から心配することがたくさんあります。州内での誤ったロールバックは、大きな損失につながる可能性があります。このような状況を回避するために、開発者がクリーンで安全なコードを作成できるように、特別なコードアナライザーが開発されました。
配列c ++をソート
SoliumとOpen-Zeppelinは、イーサリアム開発ツールについて話すときに頭に浮かぶ2つのツールです。
バスタブ
Soliumは、堅牢でスタイリッシュなスマートコントラクトを作成できる堅牢なコードリンターです。 Soliumは、ある意味ではインタプリタのように機能し、スタイルとセキュリティの問題についてコードを絶えずチェックしています。
Soliumを使用すると、次のことができます。
- Solidityコードでスタイルとセキュリティの問題を分析し、修正します。
- 組織全体でスマートコントラクトの実践を標準化し、ビルドシステムと統合し、自信を持って展開します
オープン-ゼッペリン
オープン-ゼッペリン、安全なスマートコントラクトを作成するための堅牢なフレームワークです。オープンゼッペルの使用開発者は、一般的な契約セキュリティパターンを使用して、分散アプリケーション、プロトコル、および組織を堅牢な言語で構築できます。オープンゼッペリンの優れている点は、トリュフとシームレスに統合され、生活が少し楽になることです。
ブラウザ
イーサリアムブロックチェーンには、状態、領収書、トランザクションに関する情報を表示できるように、そのニーズに特別に対応するブラウザが必要です。ブロックチェーンでのアプリの相互作用を分析するために開発者が使用する最も人気のあるブラウザについて説明しましょう
靄
Mist Browser(以前のEthereum Dapp Browser)は、Ethereumのエンドユーザーインターフェイスです。これは、Dappsを閲覧および使用するために選択されるツールであり、技術者以外のユーザー向けに特別に設計されています。
ミストを使用すると、次のことができます。
- トランザクションの送信
- トランザクションを受け取る
- エーテルを保存する
- マルチシグニチャウォレットを作成する
- スマートコントラクトを展開する
- ブロックチェーンの状態を表示する
MetaMask
メタマスクは実際には「ブラウザ」ではありませんが、Google ChromeをEthereumブラウザに変えて、ブロックチェーンからデータをフェッチし、ユーザーが署名されたトランザクションを安全に送受信できるようにします。この拡張機能は、Ethereum web3 APIをすべてのウェブサイトのJavaScriptコンテキストに挿入するため、dappsはブロックチェーンから直接読み取ることができます。メタマスクはに簡単にインストールできます クロム 、 オペラ そして Firefox ブラウザ拡張機能として。
イーサリアムでの分散型アプリケーション開発を支援するツールは他にもたくさんありますが、これらは私を最も助けてくれたものです。それでも、開発者としての私たちの生活に役立つ、利用可能な他のイーサリアム開発ツールをチェックすることを強くお勧めします。
イーサリアムブロックチェーンについてさらに学び、ブロックチェーンテクノロジーでキャリアを築きたい場合は、 インストラクター主導のライブトレーニングと実際のプロジェクト経験が付属しています。このトレーニングは、Blockchainを深く理解し、主題をマスターするのに役立ちます。
質問がありますか?コメント欄に記載してください できるだけ早くご連絡いたします。