Rumah  >  Artikel  >  hujung hadapan web  >  Web3.0 akan datang! Adakah ia mesra bahagian hadapan?

Web3.0 akan datang! Adakah ia mesra bahagian hadapan?

青灯夜游
青灯夜游ke hadapan
2022-11-09 20:44:381585semak imbas

Web3.0 akan datang! Adakah ia mesra bahagian hadapan?

Baru-baru ini suara web3.0 semakin kuat dan menggila. Untuk bahagian hadapan kami, apakah teknologi yang kami perlukan? (Belajar perkongsian video: bahagian hadapan web)

Pertama sekali, mari kita perkenalkan cara web3.0 diperolehi

Internet

Mari kita bincangkan dahulu tentang apa itu web Pada tahun 1989, sebuah kumpulan teknikal yang diketuai oleh Tim Berners-Lee di CERN (European Institute for Particle Physics) telah menyerahkan protokol baharu untuk Internet dan sistem dokumen menggunakan protokol tersebut. Sistem ini dinamakan World Wide Web, atau singkatannya WWW (World Wide Web), yang kini kita kenali sebagai "Internet". Teknologi yang digunakan adalah terutamanya HTML, URI, URL, HTTP, dsb., dan boleh memaparkan kandungan web secara statik. Iaitu, kami

Web1.0

Secara umumnya, Web1.0 merujuk kepada Internet pada tahun 1990-an dan awal abad ke-21. Secara terang-terangan, ia adalah Internet yang terdiri daripada blog, papan mesej dan portal awal seperti AOL dan CompuServe Tapak web yang terkenal di China seperti Sina, Sohu dan NetEase adalah produk pada masa itu. Pada Web1.0, halaman web statik pada dasarnya dibaca secara pasif, dan protokol pembinaan halaman web menggunakan HTTP, FTP, dsb. Dalam kes Web1.0, kandungan web adalah baca sahaja dan statik, serupa dengan majalah ia hanya boleh dilihat tetapi tidak boleh diubah suai atau berinteraksi. Di bawah Web1.0, pengguna hanyalah pengguna maklumat (halaman web) dan tidak boleh berinteraksi dengan mereka. Web1.0 juga menggunakan akses Internet dail, dengan lebar jalur purata 50k.

Secara amnya, Web1.0 adalah baca sahaja dan tidak berpusat.

Web2.0

Web2.0 mungkin menjadi terkenal sekitar tahun 2005. Makna umum Web2.0 ialah pengguna boleh mencipta dan menerbitkan kandungan mereka sendiri di halaman web, mengambil bahagian secara aktif dalam Internet, dan tidak lagi membaca halaman web secara pasif. Dana akhir dan kawalan keseluruhan halaman web masih diduduki oleh pemilik halaman web. Media sosial seperti Facebook, Twitter dan YouTube juga merupakan produk era ini. Sudah tentu, percambahan kandungan yang dihasilkan pengguna dengan cara ini juga mewujudkan monopoli semula jadi, yang juga akan membawa kepada beberapa masalah: 1. Data pengguna berpusat 2. Data pengguna tidak mudah alih 3. Data pengguna dijual

Ringkasnya, Web2.0 ialah rangkaian terdesentralisasi yang kedua-duanya membaca dan menulis dan data dipusatkan ke tangan pengguna dan bukannya eksklusif kepada satu syarikat. Mengedarkan data ke rangkaian dengan teknologi blockchain terdesentralisasi. Web3.0 adalah istilah yang telah wujud selama bertahun-tahun, tetapi baru mula mendapat populariti pada tahun lalu. Dengan Web3, rangkaian tidak berpusat, jadi tiada pihak berkuasa mengawalnya, dan aplikasi terdesentralisasi (dapps) yang dibina di atas rangkaian dibuka. Sifat terbuka rangkaian terdesentralisasi bermakna tiada satu pihak boleh mengawal data atau menyekat akses. Sesiapa sahaja boleh membina dan menyambungkan dapps yang berbeza tanpa kebenaran daripada syarikat pusat.

Ciri utama Web3.0 termasuk yang berikut:

Web Semantik - Ia adalah kunci kepada Web3.0 dan memudahkan mesin memproses data.

    AI - AI ialah salah satu faktor utama yang mempengaruhi populariti teknologi Web3.0. Ia membolehkan mesin menjadi lebih pintar melalui sejumlah besar data web untuk memenuhi keperluan pengguna.
  • Grafik 3D - Web3.0 telah mengatasi Internet tradisional kerana teknologi tiga dimensinya, ia menyediakan dunia dalam talian tiga dimensi yang lebih realistik berbanding 2D.
  • Ubiquity – Konsep wujud atau di mana-mana pada masa yang sama, dengan peningkatan peranti mudah alih memudahkan ramai orang mengakses internet pada bila-bila masa dan di mana-mana sahaja.
  • Keterbukaan dan kebolehoperasian, yang merujuk kepada keterbukaan dari segi antara muka pengaturcaraan aplikasi, format data, protokol dan saling kendali antara peranti dan platform.
  • Repositori data global, keupayaan untuk mengakses maklumat merentas program dan rangkaian.
  • Ringkasnya: Web3.0 ialah segala-galanya tentang membaca, menulis dan memiliki Internet.
  • Pengenalan

Bagi kami pembangun hadapan, apakah teknologi yang harus kami kuasai atau apa yang perlu kami ketahui? Ringkasnya, pembangun web3 mencipta aplikasi susunan penuh terdesentralisasi yang hidup dan berinteraksi dengan blockchain. Mari kita bincangkan secara ringkas di bawah.

Mari kita fahami terlebih dahulu apa itu istilah profesional:
  • Web3: Ia adalah sambungan antara blockchain Ethereum dan Kontrak Pintar anda.
  • Ethereum: Rangkaian sumber terbuka terdesentralisasi yang membolehkan pengguna berinteraksi dengan rangkaian dengan mencipta kontrak pintar. Mata wang kripto aslinya ialah Ethereum. Ethereum ialah mata wang kripto kedua paling berharga dari segi permodalan pasaran selepas Bitcoin. Ia dicipta pada tahun 2013 oleh Vitalik Buterin.
  • Kontrak Pintar Kontrak Pintar: Ia adalah atur cara komputer yang disimpan pada rantaian blok yang berjalan apabila syarat yang telah ditetapkan dipenuhi. Kontrak pintar ditulis dalam bahasa Solidity.
  • Terdesentralisasi: Status data tidak dikumpul oleh entiti pusat, platform atau individu individu
  • Rangkaian sekatan: Rangkaian rantaian blok ialah sambungan titik ke titik di mana maklumat disimpan dalam berbilang Dikongsi antara peranti, hampir mustahil untuk digodam. Ia adalah sistem merekod maklumat dengan cara yang menyukarkan atau mustahil untuk menukar maklumat yang disimpan pada rangkaian.
  • Kepekatan: bahasa pengaturcaraan berorientasikan objek untuk menulis kontrak pintar. Ia digunakan untuk melaksanakan kontrak pintar pada pelbagai platform blockchain, terutamanya Ethereum. Sintaks Solidity adalah serupa dengan javascript. Untuk memahami Solidity, sebaiknya anda mempunyai latar belakang dalam bahasa pengaturcaraan seperti javascript. Melompat terus ke Solidity ialah idea yang tidak baik
  • Dapp: singkatan kepada Decentralized App. Ia adalah aplikasi yang menjalankan kod backend mereka (kontrak pintar terutamanya ditulis dalam Solidity) pada rangkaian terdesentralisasi atau blockchain. Dapps boleh dibina menggunakan rangka kerja bahagian hadapan seperti react, vue atau Angular.
  • Bitcoin: Mata wang kripto yang pertama digunakan secara meluas di dunia.
  • Crypto: Juga dikenali sebagai Cryptocurrency, cryptocurrency, mata wang digital terdesentralisasi.
  • NFT: Token Non-Fungible, aset digital dengan pemilikan direkodkan pada rantaian.
  • DAO: Organisasi Autonomi Terpencar, organisasi autonomi terpencar.
  • Metaverse: konsep dunia maya yang dicipta dengan cara teknologi.
  • Kewangan Terdesentralisasi DeFi: Sistem kewangan terdesentralisasi.
  • Token: Ia boleh difahami sebagai nama kolektif untuk aset digital seperti mata wang kripto dan NFT.
  • GameFi: Game DeFi, permainan rantai versi Cina, sistem kewangan dalam permainan boleh dipetakan kepada realiti melalui mata wang kripto dan NFT.

Selepas memperkenalkan perkara di atas, mari kita bercakap tentang klasifikasi blockchain untuk pembangun. Terutamanya pembangunan blockchain teras (jurutera blockchain teras bertanggungjawab untuk seni bina dan protokol keselamatan sistem blockchain) dan pembangunan perisian blockchain (pembangun blockchain ini mencipta Dapps menggunakan seni bina reka bentuk yang disediakan oleh pembangun blockchain teras).

Mula

Mari kita beralih kepada sesuatu yang praktikal Untuk pembangunan bahagian hadapan kami, kami ingin membangunkan aplikasi terdesentralisasi yang berada dan berinteraksi dengan rantaian blok perpustakaan web3.js dan Ethers.js.

web3.js

web3.js ialah perpustakaan API JavaScript. Untuk membuat DApp dijalankan pada Ethereum, kami boleh menggunakan objek web3 yang disediakan oleh perpustakaan web3.js. web3.js berkomunikasi dengan nod tempatan melalui panggilan RPC, dan ia boleh digunakan dengan mana-mana nod Ethereum yang mendedahkan lapisan RPC. web3 mengandungi objek eth - web3.eth (khusus untuk berinteraksi dengan blockchain Ethereum) dan objek shh - web3.shh (untuk berinteraksi dengan Whisper)

Tambah web3

Memperkenalkan web3 ke dalam projek anda pada asasnya sama dengan kaedah rujukan kami yang sedia ada

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

gunakan

kemudian Anda perlu mencipta contoh web3 dan sediakan pembekal. Untuk memastikan anda tidak menimpa pembekal sedia ada, seperti pembekal terbina dalam semasa menggunakan Mist, anda perlu menyemak dahulu sama ada tika web3 sudah wujud

if (!web3) {
  web3 = new Web3(web3.currentProvider);
} else {
  web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:8545"));
}

Memandangkan API ini direka bentuk untuk berinteraksi dengan nod RPC tempatan , semua fungsi menggunakan permintaan HTTP segerak secara lalai. Jika anda ingin membuat permintaan tak segerak. Kebanyakan fungsi membenarkan menghantar fungsi panggil balik pilihan mengikut senarai parameter untuk menyokong tak segerak

web3.eth.getBlock(48, function(error, result){
  if(!error)
      console.log(result)
  else
      console.error(error);
})

Direktori khusus API boleh klik untuk melihat

Ethers.js

Menyediakan perpustakaan API JavaScript yang kecil tetapi lengkap untuk blockchain Ethereum dan ekosistemnya Ia pada asalnya digunakan dengan ethers.io dan kini telah dikembangkan menjadi perpustakaan yang lebih umum. Fungsi ini pada asasnya serupa dengan web3.js.

Ciri-ciri adalah seperti berikut:

  • Simpan kunci peribadi pada pelanggan, selamat dan boleh dipercayai
  • Menyokong import dan eksport fail dompet JSON (Geth, Parity dan crowdsale)
  • Buat daripada mana-mana kontrak ABI JavaScript metaclass objek, termasuk ABIv2 dan sokongan ABI
  • yang boleh dibaca manusia yang menyambung ke nod Ethereum melalui JSON-RPC, INFURA, Etherscan atau MetaMask.
  • Perpustakaan ini sangat kecil (dimampatkan ~88kb; tidak dimampatkan 284kb)

Alat

Sudah tentu sebagai tambahan kepada perkara di atas, kami juga akan menggunakan Banyak alatan untuk meningkatkan pembangunan kami

  • Truffle: Menyediakan persekitaran pembangunan untuk menyusun dan menguji kontrak pintar menggunakan Mesin Maya Ethereum, yang digunakan sebagai pergantungan binaan dalam projek
  • Remix IDE: Persekitaran yang sesuai untuk menulis dan menggunakan kontrak pintar, kami boleh menggunakannya untuk mencipta, mengubah suai dan melaksanakan kontrak pintar terus daripada penyemak imbas. Ia lebih seperti editor
  • MetaMask: Sambungan Chrome yang membolehkan anda menyambung ke rangkaian blockchain Ethereum daripada penyemak imbas anda
  • Ganache: Menyediakan persekitaran blockchain tempatan Untuk menguji kontrak pintar anda

Bina

Kami mahu membina tindanan penuhDapp Jika anda ingin menambah antara muka pengguna pada projek anda, react.js, vue.js atau angular. js ialah rangka kerja bahagian hadapan javascript yang baik kerana ia boleh disepadukan dengan mudah dengan rangkaian blockchain menggunakan ethers.js atau web3.js. Terdapat pelbagai platform yang membolehkan anda membuat Dapps lengkap tanpa menulis kod seperti: Bunz, Dapp builder, Atra io, Bubble io

Kesimpulan

Secara umumnya, Web3.0 bukanlah teknologi, tetapi konsep. Kami pembangun bahagian hadapan tidak perlu panik Tidak kira bagaimana teknologi itu berkembang, kami akan sentiasa menggunakan bahagian hadapan. Kami boleh menggunakan react.js, vue.js atau angular.js kami untuk membina platform kami sendiri untuk aplikasi Dapp kami yang dibangunkan sendiri, atau kami boleh menggunakan nodejs untuk melengkapkannya dengan menggunakan web3.js, kit alat yang disediakan oleh Ethereum penyusunan kontrak, pelepasan, dan permohonan kaedah kontrak.

Untuk lebih banyak pengetahuan berkaitan pengaturcaraan, sila lawati: Pengajaran Pengaturcaraan! !

Atas ialah kandungan terperinci Web3.0 akan datang! Adakah ia mesra bahagian hadapan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:juejin.cn. Jika ada pelanggaran, sila hubungi admin@php.cn Padam