JAvaプログラマーはweb 3 jを用いてイーサ坊開発の詳細を行う


Web 3 jを使用してJavaアプリケーションまたはAndroid Appにイーサ坊ブロックチェーンのサポートを追加する方法については、アカウント管理には、アカウントの作成、財布の作成、取引振替、取引とステータス、スマート契約の開発とインタラクション、フィルタ、イベントなど、イーサ坊の核心概念が含まれています.Web 3 jが提供するAPI開発インタフェースを使用してイーサ坊と対話する方法も詳細に説明し、javaエンジニアがイーサ坊応用開発を学ぶための選択肢ではない.
エーテル坊の概要
イーサー坊は注目されているブロックチェーンであり、暗号学技術とP 2 P通信技術に基づいて中心化されたプラットフォームを構築し、すべての取引は各ノードに同期して保存され、ブロックを一方向にチェーンにカスケードすることによって、イーサー坊は取引の改ざん不可を有効に保証した.
インテリジェント契約プラットフォーム
イーサー坊は仮想マシンのブロックチェーンを初めて実現したため、スマート契約-Smart Contract-の運用に良好なサポート環境を提供しました.このため、太坊はブロックチェーン2.0と呼ばれ、ビットコインで表されるデジタル暗号化通貨を核心とする特徴とは異なるブロックチェーン1.0である.
インテリジェント契約は、機械間の契約約定として理解され、一定の条件を満たすと自動的に約定された論理を実行することができる.例えば、保険請求プロセスにおいて、請求条件が満たされると自動的に賠償金を保険者に放出し、このプロセスはインテリジェント契約を用いて実現することができる.
イーサー坊インテリジェント契約を開発できる言語はいくつかありますが、現在最もよく使われているのはJavaScriptのようなSolidity言語です.このコースでは、Solidityを使用してスマート契約の開発について説明します.
JSON RPCとweb 3 j
デセンタ化されたアプリケーション(DApp)を構築する場合、スマート契約の開発に加えて、通常、Webページ、携帯電話のApp、デスクトップアプリケーションの開発など、他の開発言語を使用してユーザーにスマート契約を操作するユーザーインタフェースを提供する必要があります.これらのコードは、イーサー坊と対話する必要があります.
イーサン坊は各ノードが実現しなければならないJSON RPC APIアプリケーション開発インターフェースを規定し、このインターフェースは伝送に関係なく、アプリケーションはHTTP、websocketあるいはIPCなどの多種の通信メカニズムを通じてこのインターフェースプロトコルを使用してイーサン坊ノードを操作することができる.
理論的には、JSON RPCインタフェースに基づいて任意の言語を使用して、以太坊以上の脱中心化アプリケーションを開発することができますが、開発効率を高めるためには、特定の言語のJSON RPCパッケージライブラリを使用することがより良い方法です.これらのライブラリはJSON RPCのプロトコルの詳細をパッケージし、開発者がビジネスロジックの実現に焦点を当てるのに役立ちます.
web 3 jは軽量級のイーサ坊機能を統合するためのJava開発ライブラリで、Javaバージョンのイーサ坊JSON RPCインタフェースプロトコルパッケージで実現されています.JavaアプリケーションやAndroidアプリケーションをイーサ坊に接続する必要がある場合は、web 3 jを使用します.
web 3 jシステムの概要
Web 3 jの機能組織は異なるパケットにあり、下図はorg.web3jの主要パケット間の依存関係を示している.
core:JSON RPCプロトコルのカプセル化は、主にorg.web3j.coreパケットによって実現され、org.web3j.cryptoパケットが提供する鍵と署名に関連する機能、およびorg.web3j.abiパケットが提供するjava/solidityタイプマッピングのサポートに依存する.
console:org.web3j.consoleパケットは、単独で実行可能なコマンドラインプログラムweb 3 jを実現し、solidity契約のJavaパッケージクラスを生成するために使用します.ここで、org.web3j.codegenパケットはabiからjavaパッケージクラスへのコード生成を実現します.
ノード関連:org.web3j.infuraパケットはInfura共通ノードに対するhttpアクセスサービスインタフェースをカプセル化し、org.web3j.gethorg.web3j.parityはそれぞれこの2つのよく使われるイーサ坊ノードソフトウェアの管理インタフェースをカプセル化した.
このコースの目的はjavaエンジニアがweb 3 jを使用して太坊アプリケーションを開発するスキルを迅速に身につけることを助けることです.そのため、主にweb 3 jの開発インタフェースを主線として授業内容を展開し、同時に多坊の基本的な概念を挿入して説明します.例えば、口座、取引、スマート契約の開発などです.
レッスン内容の概要
  • hello、web 3 jは簡単なjavaアプリケーションの開発を通じてweb 3 jを使ってイーサ坊アプリケーションの開発を行う最も簡単な流れを説明し、この部分の学習を通じて、自分のjavaアプリケーションにイーサ坊サポートを導入することができます.
  • アカウント管理では、web 3 jが提供するアカウント管理インタフェースについて詳しく説明します.財布アプリケーションの開発(中心化/非中心化)に興味がある場合は、この部分が役立ちます.web 3 jは口座の作成、財布の作成、振替、特にコイン振替など、取引を行う機能が豊富です.
  • 状態と取引は主にweb 3 jが提供する取引操作インタフェースを説明すると同時に、状態、裸取引、gasなどの重要な概念も紹介する.このセクションでは、javaアプリケーションとイーサー坊のインタラクションの多くの問題を整理するのに役立ちます.
  • インテリジェント契約は、投票契約の開発、コンパイル、コード生成、導入、インタラクティブな完全なプロセスを通じて、web 3 jを使用してsolitiyインテリジェント契約を操作する方法を説明します.
  • フィルタとイベントは主に以太坊の通知メカニズムとweb 3 jの応答式パッケージインタフェースを説明する.

  • このweb 3 jチュートリアルでは、各知識点に対応するプリセットコードが提供されており、オンライン実験環境の~/repoディレクトリで表示できます.