1. イーサリアムのネットワークアーキテクチャを理解するノードは geth または eth を実行し、p2p のポート 30303 を介して相互に接続します。これら上で実行されるプロトコルは、一般にマイニング プロトコル、またはコンセンサス プロトコルと呼ばれ、トランザクションやメッセージのブロードキャスト、ブロックの同期など、いくつかの部分が含まれます。 Node はノードであり、geth クライアントまたは geth サーバーとも呼ばれます。 各ノードは外部にJSONRPC(ポート8545)またはIPCポートを提供し、アカウント情報の照会、契約の展開など、ブロックチェーン全体をノードを通じて操作できます。 Ethereumのウォレットは、IPCインターフェースを通じてブロックチェーンを操作する典型的なアプリケーションですが、dApp(分散型アプリ)ではありません。 2. イーサリアムのdAppアーキテクチャ上記のネットワーク アーキテクチャを理解すると、Ethereum dApp のアーキテクチャを理解しやすくなります。 最下層はブロックチェーン層で、Ethereum、Testnet、または Testrpc を選択できます。 緑色の部分は、選択するフレームワークによって大きく異なりますが、基本的な原則は同じです。つまり、フレームワークはブロックチェーン インターフェイスを操作する機能、できれば完全なプロトコル スタックを提供する必要があります。公式の web3.js は node.js に基づく完全な RPC プロトコル インターフェイスであるため、JS に基づく Web フレームワークを使用する方が自然です。より有名なのはトリュフで、公式に推奨されているのはメテオです。しかし理論的には、ブロックチェーンと対話するためのプロトコル(つまり、8545 RPC ポートへの接続)を提供するフレームワークであればどれでも dApp の実装に使用でき、その 80% 以上は従来の WEB またはモバイル アプリケーション開発コンテンツです。 3. 環境整備オペレーティングシステム Ubuntu 16.04 AMD64 ステップ1: rvm/ruby/railsをインストールする #gpg –キーサーバー hkp://keys.gnupg.net –recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 #\curl -sSL https://get.rvm.io |バッシュ #rvm 2.3 をインストール #gem バンドラをインストール #gem レールをインストールする ステップ 2: 上記の手順を実行すると、Rails 4.2.x がシステムにインストールされているはずです。中国では Ruby を使用する開発者は多くないため、限られたグループには環境をインストールするための基本的なスキルが必要です。なお、この記事では Rails のインストールと使用については重点的に扱いません。ご不明な点がございましたら、Baidu または Google で検索してください。環境をチェックして、レールが正しく実行されていることを確認します。 $レール –v ステップ3: Railsプロジェクトを作成する $レール新しいhelloworld ステップ4: nodejsをインストールする $ curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash - $ sudo apt-get install -y nodejs $ エクスポート PATH=/usr/bin:$PATH ステップ5: testrpcをインストールする $ npm インストール –g ethereumjs-testrpc ステップ5b: geth/eth をインストールします。この手順はオプションです。 Rails経由でブロックチェーンの操作を体験したいだけであれば、testrpcをインストールするだけで十分です。 $ bash <(curl https://install-geth.ethereum.org -L) $ bash <(curl https://install-eth.ethereum.org -L) ステップ6: solc をインストールします。 /このステップは npm 経由でインストールすることもできるので、詳細は説明しません。 $ sudo add-apt-repository ppa:ethereum/ethereum $ sudo apt-getアップデート $ sudo apt-get install solc この時点で、ブロックチェーンのテスト開発環境は基本的に問題ありません。 4. ethereum-ruby Gemをプロジェクトに統合する ステップ1: 新しいプロジェクトを作成する $レール新しいhelloworld ステップ2: Gemfileを変更してイーサリアムを追加する 宝石「イーサリアム」 ステップ3: バンドルインストールを実行する $ バンドルインストール ステップ4: testrpcを実行する ステップ5: Railsコンソールを起動する $ レール c 次のようにして、コンソールで testrpc とのリンクを確立します。 ステップ6: シンプルなスマートコントラクトを作成する $ mkdir 契約 $ vi コントラクト/Helloworld.sol 契約 Helloworld { マッピング (アドレス => bool) public myMapping; 関数レジスタ(アドレス_a、バイト32_b) { } } ステップ7: コンソールでデプロイしてコンパイルする > con=Ethereum::Initializer.new 'contracts/Helloworld.sol', c 結果は次のとおりです。 > con=Ethereum::Initializer.new 'contracts/Helloworld.sol', c この時点で testrpc ウィンドウに切り替えると、compileSolidity コマンドを受信していることがわかります。 |
<<: ビットコインは最大の障害である分散化を克服し、最善のガバナンスを実現できるでしょうか?
>>: NSAがハッキングされた可能性、ハッカーは重要文書をオークションにかけるためビットコインで5億6800万ドルを要求
ビットメインの共同創業者ジハン・ウー氏はブルームバーグとのインタビューで、同社が米国でのビットコイン...
私は現在、デンバーのイーサリアム カンファレンスに参加しています。多くの人が同じ質問をしています。「...
最近、キルギスタンの国家安全保障委員会は、個人宅に隠された大規模な違法マイニングファームを捜索し、1...
11月11日、中国浙商銀行のWeChat公式アカウントは、来年1月にブロックチェーン技術に基づくモバ...
バイナンスの共同創業者で元CEOのチャンポン・ジャオ氏は、暗号通貨取引所のトークン上場プロセスには欠...
著者: 梁 哲出典: bitpush.news 4月8日北京時間20時19分、ビットコインキャッシュ...
欧州最大のデジタル資産投資会社CoinSharesは本日、パリとアムステルダムのユーロネクストに物理...
シューマー氏は木曜日に手続き上の採決を予定しており、これにより上院が土曜日に会合を開く際に超党派法案...
元JPモルガンのトレーダーは最近、元上司を激しく批判し、ビットコインの躍進はまだ始まったばかりだと語...
ウズベキスタンはビットコインの合法化に向けて進んでいる。大統領令によれば、「電子マネー」に関する法律...
グレイスケール・イーサリアム・トラスト、株式を9対1に分割概要: デジタル資産管理会社グレイスケール...
2月、ビットコインの価格は45%上昇し、2021年第4四半期以来初めて6万ドルを超え、月は過去最高...
著者: チェン・チウ出典: Liandede 11月21日(東部時間)、マーケットサイトビルのナスダ...
ビットコインが6か月以内に半減することは多くの人が知っています。半減期はビットコインのインフレ率が約...
ビットコインコミュニティの有力な声は、ブロックサイズを増やすためのハードフォークを1年以上にわたって...