目次
インターネット
Web3.0
はじめに
開始
web3.js
#Use
ツール
ホームページ ウェブフロントエンド フロントエンドQ&A Web3.0 が来ていますが、フロントエンドフレンドリーですか?

Web3.0 が来ていますが、フロントエンドフレンドリーですか?

Mar 15, 2023 pm 08:09 PM
フロントエンド web3 フロントエンドフレームワーク

最近、web3.0を求める声が本当に大きくなり、ますますクレイジーになってきています。フロントエンドにはどのようなテクノロジーが必要ですか?フロントエンドフレンドリーですか?次の記事でそれについて説明しますので、お役に立てれば幸いです。

Web3.0 が来ていますが、フロントエンドフレンドリーですか?

まず、web3.0 がどのように派生したのかをご紹介します。

インターネット

最初にウェブとは何かについて話しましょう. 1989 年、CERN (欧州素粒子物理学研究所) のティム バーナーズ リー率いる技術グループは、インターネット用の新しいプロトコルとそのプロトコルを使用したドキュメント システムを提出しました。 World Wide Web は WWW (World Wide Web) と呼ばれ、現在では「インターネット」として知られています。その目的は、世界中の科学者がインターネットを使用して研究文書を交換できるようにすることです。使用するテクノロジーは主に HTML、URI、URL、HTTP などで、Web コンテンツを静的に表示できます。それが私たちの

Web1.0

一般に、Web1.0 とは 1990 年代から 21 世紀初頭のインターネットを指します。端的に言えば、ブログ、掲示板、そして AOL や CompuServe などの初期のポータルから構成されるインターネットであり、中国で有名な Sina、Sohu、NetEase などの Web サイトは当時の製品です。 Web1.0 では、静的な Web ページは基本的に受動的に読み取られ、Web ページ構築プロトコルには HTTP や FTP などが使用されます。 Web1.0 の場合、Web ページのコンテンツは雑誌と同様に読み取り専用で静的であり、表示することはできますが、変更したり操作したりすることはできません。 Web1.0 では、ユーザーは情報 (Web ページ) の消費者にすぎず、情報 (Web ページ) と対話することはできません。 Web1.0 では、平均帯域幅 50k のダイヤルアップ インターネット アクセスも使用します。

一般に、Web1.0 は読み取り専用であり、分散化されています。

Web2.0

そしてWeb2.0が台頭してきたのはおそらく2005年頃でしょう。 Web2.0 の一般的な意味は、ユーザーが Web ページ上で独自のコンテンツを作成および公開でき、インターネットに積極的に参加でき、単に Web ページを受動的に読むだけではなくなることです。最終的な資金と Web ページ全体の管理は依然として Web ページの所有者によって占められています。 Facebook、Twitter、YouTube などのソーシャル メディアもこの時代の産物です。もちろん、このようにユーザー生成コンテンツが急増すると、自然独占も生まれ、次のようないくつかの問題が発生します: 1. ユーザー データは集中化される; 2. ユーザー データは移植できない; 3. ユーザー データは販売される

つまり、Web2.0 は読み取りと書き込みの共存です。

Web3.0

Web3.0 は、電力とデータを統合する分散型ネットワークです。 1 つの企業に独占されるのではなく、ユーザーの手に集中化されます。分散型ブロックチェーン技術を使用してデータをネットワークに配信します。 Web3.0 は何年も前から使われている用語ですが、一般的になり始めたのはここ 1 年です。 Web3 ではネットワークが分散化されているため、ネットワークを制御する権限はなく、ネットワーク上に構築された分散型アプリケーション (dapps) はオープンです。分散型ネットワークのオープンな性質は、どの当事者もデータを制御したりアクセスを制限したりできないことを意味します。中央企業の許可なしに、誰でもさまざまな dapp を構築して接続できます。

Web3.0 の主な機能は次のとおりです。

  • セマンティック Web - Web3.0 の鍵であり、マシンによるデータ処理を容易にします。

  • AI - AI は、Web3.0 テクノロジーの人気に影響を与える主な要素の 1 つです。ユーザーのニーズを満たすために、大量の Web データを通じてマシンがより賢くなることを可能にします。

  • 3D グラフィックス - Web3.0 は、2D よりも現実的な 3 次元のオンライン世界を提供する 3 次元テクノロジーにより、従来のインターネットを超えました。

  • ユビキティ – 同時にどこにでも存在するという概念。モバイル デバイスの普及により、多くの人がいつでもどこでもインターネットに簡単にアクセスできるようになりました。

  • オープン性と相互運用性。アプリケーション プログラミング インターフェイス、データ形式、プロトコル、およびデバイスとプラットフォーム間の相互運用性に関するオープン性を指します。

  • グローバル データ リポジトリ、プログラムやネットワーク全体で情報にアクセスする機能。

つまり、Web3.0 はインターネットの読み取り、書き込み、所有に関するすべてです。

はじめに

私たちフロントエンド開発者にとって、どのようなテクノロジーを習得し、何を知っておくべきでしょうか?簡単に言えば、Web3 開発者は、ブロックチェーン上に存在し、ブロックチェーンと対話する分散型フルスタック アプリケーションを作成します。以下で簡単に説明しましょう。

まず専門用語が何であるかを理解しましょう:

  • Web3: これは、イーサリアム ブロックチェーンとスマート コントラクト Smart Contract の間の接続です。
  • イーサリアム イーサリアム: ユーザーがスマート コントラクトを作成することでネットワークと対話できるようにする分散型オープンソース ブロックチェーン。そのネイティブ暗号通貨はイーサリアムです。イーサリアムは、時価総額の点でビットコインに次いで2番目に価値のある仮想通貨です。 2013 年にヴィタリック ブテリンによって作成されました。
  • スマート コントラクト スマート コントラクト: ブロックチェーン上に保存され、所定の条件が満たされたときに実行されるコンピューター プログラムです。スマート コントラクトは Solidity 言語で書かれています。
  • 分散型: データのステータスは中央エンティティ、プラットフォーム プラットフォーム、または個人によって収集されません。
  • ブロックチェーン: ブロックチェーン ネットワークは、情報が複数の共有ネットワークに保存されるポイントツーポイント接続です。デバイス間ではハッキングはほぼ不可能です。ネットワーク上に保存された情報の変更を困難または不可能にする方法で情報を記録するシステムです。
  • Solidity: スマート コントラクトを作成するためのオブジェクト指向プログラミング言語。これは、さまざまなブロックチェーン プラットフォーム、特にイーサリアムにスマート コントラクトを実装するために使用されます。 Solidity の構文は JavaScript に似ています。 Solidity を理解するには、JavaScript などのプログラミング言語の知識があることが最適です。 Solidity に直接ジャンプするのは悪い考えです
  • Dapp: Decentralized App の略です。これらは、分散型ネットワークまたはブロックチェーン上でバックエンド コード (主に Solidity で記述されたスマート コントラクト) を実行するアプリケーションです。 Dapps は、react、vue、Angular などのフロントエンド フレームワークを使用して構築できます。
  • ビットコイン ビットコイン: 世界で初めて広く使用された暗号通貨。
  • 暗号: 暗号通貨、暗号通貨、分散型デジタル通貨とも呼ばれます。
  • NFT: Non-Fungible Token、チェーン上に記録された所有権を持つデジタル資産。
  • DAO: 分散型自律組織、分散型自律組織。
  • メタバース: 技術的手段によって作成された仮想世界の概念。
  • DeFi 分散型金融: 分散型金融システム。
  • トークントークン: 暗号通貨やNFTなどのデジタル資産の総称として理解できます。
  • GameFi: ゲーム DeFi、中国版ブロックチェーン ゲーム、ゲーム内の金融システムは、暗号通貨と NFT を通じて現実にマッピングできます。

上記を紹介した後、開発者向けのブロックチェーンの分類について話しましょう。主にコアブロックチェーン開発(コアブロックチェーンエンジニアはブロックチェーンシステムのアーキテクチャとセキュリティプロトコルを担当します)とブロックチェーンソフトウェア開発(これらのブロックチェーン開発者はコアブロックチェーン開発者が提供する設計アーキテクチャを使用してDappsを作成します)。

開始

それでは、実際的なことに取り掛かりましょう。フロントエンド開発では、ブロックチェーンに常駐し、ブロックチェーンと対話する分散型アプリケーションを開発したいと考えています。 web3.js ライブラリと Ethers.js ライブラリ。

web3.js

web3.js は JavaScript API ライブラリです。 Ethereum 上で DApp を実行するには、web3.js ライブラリによって提供される web3 オブジェクトを使用できます。 web3.js は RPC 呼び出しを通じてローカル ノードと通信し、RPC レイヤーを公開する任意の Ethereum ノードで使用できます。 web3 には、eth オブジェクト - web3.eth (特に Ethereum ブロックチェーンとの対話用) と shh オブジェクト - web3.shh (Whisper との対話用) が含まれています。

#Add web3

web3 をプロジェクトに導入することは、既存の参照メソッドと基本的に同じです

    npm: npm install web3
  • bower: bower install web3
  • metor: meteor add ethereum:web3
  • vanilla: dist./web3.min.js

#Use

次に、必要がありますweb3 のインスタンスを作成し、プロバイダーを設定します。 Mist 使用時の組み込みプロバイダーなど、既存のプロバイダーを上書きしないようにするには、最初に web3 インスタンスが既に存在するかどうかを確認する必要があります。

if (!web3) {
  web3 = new Web3(web3.currentProvider);
} else {
  web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:8545"));
}
ログイン後にコピー

この API はローカルと対話するように設計されているため、 RPC ノード、すべて この関数はデフォルトで同期 HTTP リクエストを使用します。非同期リクエストを行う場合。ほとんどの関数では、非同期をサポートするためにパラメータ リストに続いてオプションのコールバック関数を渡すことができます。

web3.eth.getBlock(48, function(error, result){
  if(!error)
      console.log(result)
  else
      console.error(error);
})
ログイン後にコピー

API の特定のディレクトリは、

クリックして Ethers を表示できます。 js

イーサリアム ブロックチェーンとそのエコシステム用の小さいながらも完全な JavaScript API ライブラリを提供します。これはもともと ethers.io で使用されていましたが、現在はより一般的なライブラリに拡張されています。機能は基本的にweb3.jsと似ています。

機能は次のとおりです:
  • 安全かつ信頼できる秘密キーをクライアント上に保持します
  • インポートおよびエクスポートされた JSON ウォレット ファイル (Geth、Parity、クラウドセール) をサポート
  • 任意のコントラクト ABI JavaScript メタクラスから作成ABIv2 や人間が判読できる ABI
  • などのオブジェクトは、JSON-RPC、INFURA、Etherscan、または MetaMask を介した Ethereum ノードへの接続をサポートします。
  • ライブラリは非常に小さいです (圧縮時約 88kb、非圧縮時 284kb)

ツール

もちろん、上記に加えて、私たちもそれを使用します 開発を改善するための多くのツール

    #Truffle: プロジェクトのビルド依存関係として使用される、イーサリアム仮想マシンを使用してスマート コントラクトをコンパイルおよびテストするための開発環境を提供します
  • Remix IDE: スマート コントラクトの作成と使用に最適な環境。これを使用して、ブラウザから直接スマート コントラクトを作成、変更、実行できます。どちらかというとエディタに似ています
  • MetaMask: ブラウザからイーサリアム ブロックチェーン ネットワークに接続できるようにする Chrome 拡張機能
  • Ganache: ローカル ブロックチェーン環境を提供しますスマート コントラクトをテストするには

Build

フルスタックを構築したい

Dapp プロジェクトにユーザー インターフェイスを追加したい場合は、react.js、vue .js または angular.js は、ethers.js または web3.js を使用してブロックチェーン ネットワークと簡単に統合できるため、優れた JavaScript フロントエンド フレームワークです。コードを記述せずに完全な Dapp を作成できるさまざまなプラットフォームがあります。BunzDapp builderAtra ioBubble io

結論

一般的に、Web3.0 はテクノロジーではなくコンセプトです。私たちフロントエンド開発者はパニックになる必要はありません。テクノロジーがどのように発展しても、私たちは常にフロントエンドを使用します。私たちは、react.js、vue.js、または angular.js を使用して、独自に開発した Dapp アプリケーション用の独自のプラットフォームを構築することも、nodejs を使用して、イーサリアムが提供するツールキットである web3.js を使用してプラットフォームを完成させることもできます。コントラクトのコンパイル、リリース、およびコントラクト メソッドの呼び出し。

(学習ビデオ共有:

Web フロントエンドの紹介基本プログラミング ビデオ)

以上がWeb3.0 が来ていますが、フロントエンドフレンドリーですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP と Vue: フロントエンド開発ツールの完璧な組み合わせ PHP と Vue: フロントエンド開発ツールの完璧な組み合わせ Mar 16, 2024 pm 12:09 PM

PHP と Vue: フロントエンド開発ツールの完璧な組み合わせ 今日のインターネットの急速な発展の時代において、フロントエンド開発はますます重要になっています。 Web サイトやアプリケーションのエクスペリエンスに対するユーザーの要求がますます高まっているため、フロントエンド開発者は、より効率的で柔軟なツールを使用して、応答性の高いインタラクティブなインターフェイスを作成する必要があります。フロントエンド開発の分野における 2 つの重要なテクノロジーである PHP と Vue.js は、組み合わせることで完璧なツールと見なされます。この記事では、PHP と Vue の組み合わせと、読者がこれら 2 つをよりよく理解し、適用できるようにするための詳細なコード例について説明します。

WEB3ってどういう意味ですか? WEB3ってどういう意味ですか? Mar 12, 2024 pm 02:18 PM

Web3.0とは、インターネットの第3世代プロトコル「インターネット」を指し、その核となるのは、ユーザーの作成、ユーザーの所有権、ユーザーの制御、利益の合意分配であり、ブロックチェーンプロトコルの作成と自動実行の技術が使用されています。スマートコントラクトを通じて権利と価値を保護し、販売契約は第三者を利用せずに効率的、正確かつ確実に締結でき、プロセス全体を監査することができます。

フロントエンドの面接官からよく聞かれる質問 フロントエンドの面接官からよく聞かれる質問 Mar 19, 2024 pm 02:24 PM

フロントエンド開発のインタビューでは、HTML/CSS の基本、JavaScript の基本、フレームワークとライブラリ、プロジェクトの経験、アルゴリズムとデータ構造、パフォーマンスの最適化、クロスドメイン リクエスト、フロントエンド エンジニアリング、デザインパターン、新しいテクノロジーとトレンド。面接官の質問は、候補者の技術スキル、プロジェクトの経験、業界のトレンドの理解を評価するように設計されています。したがって、候補者はこれらの分野で自分の能力と専門知識を証明するために十分な準備をしておく必要があります。

Go 言語のフロントエンド テクノロジーの探求: フロントエンド開発の新しいビジョン Go 言語のフロントエンド テクノロジーの探求: フロントエンド開発の新しいビジョン Mar 28, 2024 pm 01:06 PM

Go 言語は、高速で効率的なプログラミング言語として、バックエンド開発の分野で広く普及しています。ただし、Go 言語をフロントエンド開発と結びつける人はほとんどいません。実際、フロントエンド開発に Go 言語を使用すると、効率が向上するだけでなく、開発者に新たな視野をもたらすことができます。この記事では、フロントエンド開発に Go 言語を使用する可能性を探り、読者がこの分野をよりよく理解できるように具体的なコード例を示します。従来のフロントエンド開発では、ユーザー インターフェイスの構築に JavaScript、HTML、CSS がよく使用されます。

Golang とフロントエンド テクノロジーの組み合わせ: Golang がフロントエンド分野でどのような役割を果たすかを探る Golang とフロントエンド テクノロジーの組み合わせ: Golang がフロントエンド分野でどのような役割を果たすかを探る Mar 19, 2024 pm 06:15 PM

Golang とフロントエンド テクノロジーの組み合わせ: Golang がフロントエンド分野でどのような役割を果たしているかを調べるには、具体的なコード例が必要です。インターネットとモバイル アプリケーションの急速な発展に伴い、フロントエンド テクノロジーの重要性がますます高まっています。この分野では、強力なバックエンド プログラミング言語としての Golang も重要な役割を果たします。この記事では、Golang がどのようにフロントエンド テクノロジーと組み合わされるかを検討し、具体的なコード例を通じてフロントエンド分野での可能性を実証します。フロントエンド分野における Golang の役割は、効率的で簡潔かつ学びやすいものとしてです。

フロントエンド モジュラー ESM とは何ですか? フロントエンド モジュラー ESM とは何ですか? Feb 25, 2024 am 11:48 AM

フロントエンド ESM とは何ですか? 特定のコード サンプルが必要です。フロントエンド開発では、ESM は ECMAScript 仕様に基づいたモジュール式開発メソッドである ECMAScriptModules を指します。 ESM は、より優れたコード構成、モジュール間の分離、再利用性など、多くの利点をもたらします。この記事では、ESM の基本概念と使用法を紹介し、いくつかの具体的なコード例を示します。 ESM の基本概念 ESM では、コードを複数のモジュールに分割することができ、各モジュールは他のモジュール用のいくつかのインターフェイスを公開します。

フロントエンドエンジニアの責任分析:主な仕事は何ですか? フロントエンドエンジニアの責任分析:主な仕事は何ですか? Mar 25, 2024 pm 05:09 PM

フロントエンドエンジニアの責任分析:主な仕事は何ですか?インターネットの急速な発展に伴い、フロントエンドエンジニアは非常に重要な専門的役割を果たし、ユーザーとWebサイトアプリケーションの間の橋渡しとして重要な役割を果たします。では、フロントエンドエンジニアは主に何をするのでしょうか?この記事では、フロントエンド エンジニアの責任を分析して調べてみましょう。 1. フロントエンド エンジニアの基本的な責任 Web サイトの開発と保守: フロントエンド エンジニアは、Web サイトの HTML、CSS、JavaScr の作成など、Web サイトのフロントエンド開発を担当します。

フロントエンドとバックエンドとはどういう意味ですか? フロントエンドとバックエンドとはどういう意味ですか? Mar 19, 2024 am 11:20 AM

違い: フロントエンドは、ユーザーがブラウザーで見る Web ページ、画像、その他のコンテンツなどのユーザー インターフェイスの設計と操作を担当します。バックエンドは、データの処理と、サーバー側のスクリプト、データベース、API などの論理操作の実行を担当します。

See all articles