DApp開発の初心者向けガイド
イーサリアムは、イーサリアム仮想マシン(EVM)とスマートコントラクトにより、ブロックチェーンテクノロジーの幅広い採用を推進する上で重要な役割を果たしてきました。これは、開発者が分散アプリ(DApp)を作成して起動できるプラットフォームであり、開発者はこれまでに1,500を超えるDAppを構築することで対応してきました。 DAppの構築に興味のある開発者ですか?このDApp開発ガイドの概要は、開始に役立ちます.
DAppsの開発は単純なプラグアンドプレイプロジェクトではなく、本格的なプログラミングが必要です。このDApp開発ガイドは、その詳細をカバーすることを意図しておらず、ステップの概要を提供します。また、記事の後半に「リソース」セクションがあり、特定のステップについて詳しく知ることができる場所を示しています。.
DApp開発:実行する必要のある手順
以下は、イーサリアムDAppを作成して起動するために、開発者がステップバイステップで実行する必要があることの概要です。
1.イーサリアムを学ぶ:
DAppは特定の概念フレームワークに従う必要があり、それを理解する唯一の方法はイーサリアムを学ぶことです.
たとえば、DAppはオープンソースである必要があり、暗号トークンの大部分を制御するエンティティがなくても自律的に動作する必要があります。 DAppへの変更は、コミュニティのコンセンサスに従う必要があります。バックエンドコードはスマートコントラクトで構成され、分散型ブロックチェーンで実行される必要があります。 DAppは、標準の暗号化アルゴリズムを使用して生成された暗号トークンを使用する必要があり、データは暗号化標準に準拠しながらブロックチェーンに保存する必要があります.
分散型コンセンサスベースのイーサリアムブロックチェーンプラットフォームの学習は、開発者が着手する最初の交渉不可能なステップです.
2.ブロックチェーンを取得します。
開発者が選択できるクライアントはたくさんありますが、新しいDApp開発者には「testrpc」をお勧めします。このツールは現在、Truffleのツールスイートの一部であり、使いやすく、コマンドラインインターフェイス(CLI)の使用を簡単に開始できます。.
このツールはデフォルトではブロックをマイニングしませんが、開発目的で、CLIを使用してブロック間隔を指定できます.
3.ブロックチェーンと通信します。
ブロックチェーンと通信するための最も簡単で一般的なツールは「web3.js」です。インストールは簡単で、必要なパラメータを設定するための特定の手順があります。例:
- acongig.jsファイルの構成;
- ブロックチェーンと通信するためのweb3API関数の構成.
4.堅牢性を学ぶ:
Solidityは、スマートコントラクトを作成するためのイーサリアム独自の言語です。これは、この目的のために特別に設計された機能豊富な言語であり、この高級プログラミング言語は、C ++、Java、Python、およびJavaScriptに触発されました。 DAppは任意の言語のフロントエンドコードを持つことができますが、バックエンドコードはスマートコントラクトを含む必要があるため、この学習は新しいDApp開発者にとっても交渉の余地がありません。.
5.スマートコントラクトをコーディングします。
スマートコントラクトをコーディングする開発者は、有効性のために次の広範なガイドラインに従う必要があります。
- スマートコントラクトの実行には「ガス」、つまりコンピューティング能力の測定が必要になるため、コンピューティングロジックとストレージの要件を最小限に抑えます。それは無料ではなく、「ガス価格」です。つまり、特定の数の暗号トークンを支払う必要があります。つまり、イーサリアム(ETH)、つまりイーサリアムのネイティブ暗号通貨をスマートコントラクトの実行に費やす必要があります。シンプルなコンピューティングロジックは、より少ないガスを必要とします.
- コードが複雑になるほど、エラーが発生する可能性が高くなるため、コードは複雑さを回避する必要があります。スマートコントラクトの結果は元に戻せないため、エラーのない単純なスマートコントラクトをコーディングすることが不可欠です。.
6.スマートコントラクトを展開します。
このために推奨されるツールスイートは「トリュフ」です。次の利点があります。
- ディレクトリを使用すると、開発者はすべてのスマートコントラクトを維持できます。
- スクリプトはコントラクトをテスト環境にデプロイし、「トリュフテスト」を実行し、定期的なテストを実行できるため、ツールはテストフレームワークに簡単に溶け込むことができます。.
- このツールスイートを使用した展開は簡単で、必要なパラメーターはconfig.jsファイルで簡単に設定できます。 Testrpcは、デプロイメントが機能するために別のウィンドウで実行されている必要があります.
7.スマートコントラクトを呼び出します。
スマートコントラクトの呼び出しは16進文字列である必要がありますが、それを支援するイーサリアムコントラクトの「アプリケーションバイナリインターフェイス」(ABI)ライブラリがあります.
8.イーサリアムアカウントを設定します。
スマートコントラクトを実行するには、開発者はイーサリアムを使う必要があり、そのためにイーサリアムアカウントを作成する必要があります。公開鍵と秘密鍵のペアを生成して管理するのが簡単なため、「eth-lightwallet」をお勧めします。開発者は、config.jsファイルをキーの詳細で更新する必要があります。開発者はトリュフテストに戻り、Etherがアカウント間を移動するのを見ることができます.
重要な注意:開発者は、自分の秘密鍵を他の人と共有したり、オンラインフォーラムで公開したりしてはなりません。.
9.スマートコントラクトとの取引:
Etherを購入して自分のアカウントに保存した後、開発者はDApp開発の最後のステップであるEtherを使用したトランザクションを実行する必要があります。 3つのオプションがあります:
- 値として別のアドレスに転送します。
- ネットワークの状態を更新するコントラクト関数を呼び出し、Etherを使用してマイナーに料金を支払います。
- ネットワークの状態を更新し、支払いとしてEtherを受け入れる契約を含みます。開発者はまた、鉱夫に料金を支払う必要があります.
10. DApp開発:有用なリソース
DApp開発ステップの概要については、開発者は次のように読むことができます。 この 包括的なハッカーヌーンの記事。個々のステップのリソースは次のとおりです。
- イーサリアムを学ぶには: イーサリアム開発チュートリアル, イーサリアムホワイトペーパー, そして イーサリアムイエローペーパー.
- GitHub 材料 Testrpcの場合.
- GitHub 材料 web3.jsの場合.
- オンライン コース 堅牢性のために.
- GitHub 材料 トリュフツールスイート用.
- GitHub 材料 ABIライブラリ用.
- GitHub 材料 eth-lightwallet用.
さらに、「dappsforbeginners’は、新しい開発者がガイダンスを得るのに適したWebサイトです。よくわからない場合は、ブロックチェーン開発を学ぶ必要がある5つの理由があります。まだここでいくつかのインスピレーションを探しているのは、2018年にフォローするトップ10のdappsです.
以下のコメントセクションで、最初のdapp開発経験の経験を聞いてください。.