ブロックチェーン分散アプリケーションDAPPの開発と学習に関する予備的研究

私は現在、上海ブロックチェーン エンジニアリング技術研究センターでブロックチェーンの研究を行っています。私の研究関心には、ブロックチェーン データのプライバシー保護、スマート コントラクトのセキュリティ脆弱性検出などが含まれます。私にアドバイスをくれたり、ディスカッションを交換したり、研究を共有してくれる csdn の専門家を歓迎しています。経験と結果。

 まず簡単に説明しますと、数ヶ月間コラムを更新していませんでしたが、今日、1000回以上読まれている「第3回ブロックチェーン技術の学びまとめ~ブロックチェーンの合意メカニズムのまとめ~」を拝見しました。本当に小さな幸運を感じます。ここで、私が長い間新しいブログ記事を投稿しなかった理由について簡単に話します。

1. csdn の審査メカニズムは、人工知能と人工知能の組み合わせである必要があります。ブロックチェーンという新たな最先端技術について議論する際、多くの用語や用語が「デリケートな言葉」となり、ブロックされて審査が失敗する原因となります。 , しかし、システムもどの単語がセンシティブワードであるかを具体的に報告しないので、ブログ投稿は常に審査に通らず、特に面倒に感じてしまい、記事を書く熱意が割り引かれてしまいます。

2. 現在、技術的なブログ記事を書くことは公共の福祉のために完全に無料であり、研究や学習経験を共有するために記事を書くことは報酬を目的とするものではありません。もちろん、ブログ記事を書籍としてまとめられれば、さらに良い結果になるでしょう。実際、今は本を書くメリットはそれほど大きくないので、技術ブログを書いたり、本を書いたりするのは、読者の承認を求めて、自分の研究資料を整理してまとめているような感覚、ということもあります。

3. 今はショートビデオの時代です。テクニカルブロガーの中には、ファンやトラフィックを増やすために、Bilibili、tiktok、その他のアプリで自分のショートビデオを公開することを選択する人もいます。テキストの読み取り、特にテキストの大きな段落の読み取りは、それに応じてブログ記事を書く人も、ブログ記事を根気よく読む人も少なくなり、それが記事の更新頻度が低い理由の一つでもあります。紙メディアの衰退と同じように、オンライン ブログも短いビデオなどの新しいメディアの影響を受けています。CSDN のすべての教師や友人が私をサポートし、ブログ記事や本を書くよう励ましてくれることを願っています。CSDN はオリジナリティを奨励しますが、オリジナリティはそうではありません簡単です。専門家や友人にお願いします。技術マスターが私に修正を加えてくれました。

 

ブロックチェーンの開発に関しては、dapp開発の分野で大量の仕事が生まれるのではないかと個人的には思っています。最近勉強しているイーサリアムのdapp開発について簡単にお話します。

DApp はDecentralized Applicationの略で、分散型アプリケーション、つまり分散型アプリケーションとも呼ばれますブロックチェーン 3.0 時代の到来を告げたと考えられています。DApp は、基盤となるブロックチェーン プラットフォームから派生したさまざまな分散アプリケーションであり、ブロックチェーンの世界におけるサービス提供の一形態です。他の文献では DAPP または dapp が使用されることがありますが、それらはすべて同じであり、違いはありません。

  DApp開発を学ぶ前に、基礎としてブロックチェーン、スマートコントラクト、プログラミング言語を習得する必要があります。簡単に言うと、dapp=スマートコントラクト+UI、つまり人間とコンピュータのインタラクションであり、前景がUIであり、背景がスマートコントラクトです。異なるブロックチェーン プラットフォームは異なる言語を使用してスマート コントラクトを作成でき、フロントエンド UI は HTML5 + CSS3 + JS の技術的なルート、つまり一部の Web 開発テクノロジを使用できます。フルスタックエンジニアでないと単独でdappを開発することはできません。

スマート コントラクトは、ブロックチェーン 2.0 とブロックチェーン 1.0 の大きな違いです。

スマート コントラクトの基本概念については、Baidu または Zhihu をご覧ください。

スマートコントラクト - ウィキペディア

スマートコントラクトとは何ですか? - ほぼ知っています

dapp 開発を学習するには、イーサリアム (ホーム | ethereum.org )    から学習を開始することをお勧めします。イーサリアムで推奨されるスマート コントラクト言語は Solidity です。

Solidity に関する中国語の参考資料については、この Web サイトをお勧めします

Solidity 最新 (0.8.0) 中国語ドキュメント — Solidity 中国語ドキュメント — Dengian Community

Solidity開発環境、推奨リミックス、インストール不要で利用可能

リミックス - イーサリアム IDE

Remix の使用方法について質問がある場合は、私に連絡してください。私は熟練していませんが、Remix Solidity を紹介する能力はあると思います。上級ソフトウェア エンジニアであれば、Remix を 1 日で簡単に扱えるでしょう。

Solidity の基盤を使用して、スマート コントラクト開発フレームワークを学習し始めることができます。ここでは、Truffle と Hardhat の 2 つのフレームワークをお勧めします。今はトリュフを使っています。

Truffle のメイン Web サイトは、Sweet Tools for Smart Contracts | Truffle Suiteです。

Truffle 中国語リファレンスTruffle 翻訳の説明と概要 | Truffle 中国語ドキュメント - DApp 開発フレームワーク |

私の現在の研究は主にこの中国語の文書に基づいていますが、インターネット上にある dapp 開発の書籍の中には最新のものではないため、購入をお勧めしません。最近 Dangdang.com を検索したところ、ブロックチェーン 3.0 DApp プログラミングを主張する EOS dapp 開発に関する書籍が多数出版されていることがわかりました。私の個人的な見解は、イーサリアム スマート コントラクトと dapp 開発を学んだ後、他のブロックチェーン プラットフォームでの dapp 開発を学ぶことができるということです。経験は間違いなく役に立ちます。また、EOS DApp 開発を直接学ぶこともできます。ここには潜在的な技術的リスクがあります。私たちはしません。 Fang dapp と EOS dapp のどちらがより収益性が高いかを議論してください。

DApp 開発は、Windows と Linux の両方のプラットフォームで実行できます。

私が使用しているプラ​​ットフォームは Windows10+VMWare Workstation 15 Player 仮想マシンであり、仮想マシンには Ubuntu64 ビット オペレーティング システムがインストールされています。

Windows環境の場合は、Ganacheのインストールが必要です。

Linux 環境では、インストールは必要なく、ダウンロードされたファイルは次の図に示すように実行可能ファイルです。

    知らせ:

   1. truffle unbox を使用して実行できません。考えられるエラーは、github サーバーなどの外部サーバーに接続できないことです。このとき、まず、ファイルを提供する外部サーバーにマシンが接続できることを確認する必要があります。

   2. 解凍が成功しても、ダウンロードしたファイルは実行できない可能性があります。たとえば、index.html が Google サーバー上の jquery.min.js ファイルを参照している場合、コンピュータが Google サーバーに接続できない場合は、この場合、Web UI ページも開くことができません。

  Pet Store dapp を実行してみましたTruffle & Web3.js チュートリアル: 初めての分散型アプリケーション (Dapp) の開発とデプロイ方法を教えます - Pet Store | Dengian Community |ブロックチェーン技術を簡単に説明した後のインターフェースのスクリーンショット

ここでの http ポートは 3001 ではなく 3000 です。チュートリアルでは 3000 です。

システムによって作成された 10 個のアカウントのうち 3 番目のアカウントも MetaMask ウォレットにインポートされており、ペットを引き取ることができます。

 1行目の4番目の子犬の養子縁組ボタンをクリックすると養子縁組が成功したことが確認されます

イーサリアム DApp 開発を学習している教師や友人は、最初の DApp 学習例としてペット ストアを使用したいと思うかもしれません。

千マイルの旅も一歩から始まり、技術探求の道は終わりがありません。新しい技術は皆の注目と研究に値するものであり、私たちは皆さんを勇気づけたいと思っています。 

おすすめ

転載: blog.csdn.net/zsheep/article/details/121156968