Web3 to termin często używany w odniesieniu do zbioru technologii i protokołów tworzących zdecentralizowaną sieć.
Obejmuje to technologię blockchain, rozproszone rozwiązania pamięci masowej i protokoły sieciowe peer-to-peer.
W tym artykule przeprowadzimy Cię od podstaw przez proces tworzenia podstawowej aplikacji Web3.
Krok 1: Wybierz platformę Blockchain
Pierwszym krokiem w tworzeniu aplikacji Web3 jest wybór platformy blockchain. Dostępnych jest kilka opcji, w tym Ethereum, Bitcoin i EOS.
Na potrzeby tego samouczka będziemy używać Ethereum, która jest jedną z najpopularniejszych platform blockchain i obsługuje funkcjonalność inteligentnych kontraktów.
Krok 2: Skonfiguruj środowisko programistyczne
Po wybraniu platformy blockchain kolejnym krokiem jest skonfigurowanie środowiska programistycznego. W przypadku Ethereum będziesz musiał zainstalować:
Node.js
Struktura Trufli
Nadzienie
Metamaska
Node.js to środowisko uruchomieniowe JavaScript, które umożliwia uruchamianie JavaScriptu po stronie serwera.
Truffle Framework to platforma programistyczna dla Ethereum, która zapewnia narzędzia do kompilowania, testowania i wdrażania inteligentnych kontraktów.
Ganache to lokalna sieć blockchain, której możesz używać do testowania aplikacji. Metamask to rozszerzenie przeglądarki umożliwiające interakcję z siecią Ethereum.
Krok 3: Utwórz inteligentny kontrakt
Następnym krokiem jest stworzenie inteligentnego kontraktu. Inteligentna umowa to samowykonująca się umowa, w której warunki umowy między kupującym a sprzedającym są zapisane bezpośrednio w liniach kodu.
W Ethereum inteligentne kontrakty są pisane w Solidity, języku programowania zaprojektowanym specjalnie dla inteligentnych kontraktów. Oto przykład prostego inteligentnego kontraktu, który przechowuje ciąg znaków:
solidność pragmy ^0.8.0; kontrakt MojaKontrakt { string public myString = "Witaj, świecie!"; funkcja setString(pamięć string nowyString) public { mójString = nowyString; } }
Ten kontrakt definiuje zmienną łańcuchową o nazwie myString oraz funkcję o nazwie setString, która umożliwia aktualizację wartości myString.
Krok 4: Skompiluj i wdróż inteligentny kontrakt
Po utworzeniu inteligentnej umowy następnym krokiem jest jej skompilowanie i wdrożenie w sieci Ethereum. Aby to zrobić, musisz uruchomić następujące polecenia w terminalu:
trufle skompiluj trufle migruj
Polecenie trufle kompilacji kompiluje Twój inteligentny kontrakt i generuje kod bajtowy, który zostanie wdrożony w sieci Ethereum. Polecenie trufle migracji wdraża kod bajtowy w sieci Ethereum.
Krok 5: Utwórz aplikację Web3
Ostatnim krokiem jest utworzenie aplikacji Web3, która wchodzi w interakcję z inteligentnym kontraktem. Aby to zrobić, musisz utworzyć plik HTML i plik JavaScript. Oto przykład pliku HTML:
Moja aplikacja Web3 Bieżąca wartość myString: Update
Ten plik HTML definiuje prostą stronę internetową, która wyświetla bieżącą wartość myString, pole wejściowe umożliwiające aktualizację wartości myString oraz przycisk umożliwiający przesłanie zaktualizowanej wartości.
Plik JavaScript app.js to miejsce, w którym napiszemy kod umożliwiający interakcję z siecią Ethereum i naszą inteligentną umową. Oto przykład kodu JavaScript:
window.addEventListener('load', async () => { if (window.ethereum) { window.web3 = new Web3(window.ethereum); oczekuj window.ethereum.enable(); } else { alert('Proszę zainstalować MetaMask do korzystania z tej aplikacji.'); } const kontraktAddress = 'your_ccontract'; const kontraktABI = [{ "constant": false, "inputs": [{ "name": "_newString", "type": "string" } ], "name": "setString", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function" }]; const myContract = new web3.eth.Contract (contractABI, ContractAddress); const mójString = oczekuj myContract.methods.myString().call(); document.getElementById('myString').innerText = mójString; const setString = async () => { const newString = document.getElementById („newString”).wartość; oczekuj na mojąKontrakt.methods.setString(nowyString).send({from: web3.eth.defaultAccount}); const updateString = oczekuj na mojąKontrakt.methods.myString().call(); („myString”).innerText = zaktualizowany ciąg } });
Ten kod inicjuje bibliotekę Web3, łączy się z siecią Ethereum za pomocą Metamask i tworzy instancję naszego inteligentnego kontraktu przy użyciu adresu kontraktu i ABI.
Następnie wyświetla aktualną wartość myString na stronie internetowej i umożliwia użytkownikowi jej aktualizację poprzez wywołanie funkcji setString w inteligentnym kontrakcie.
Podsumowując, w tym artykule przeprowadziliśmy Cię przez proces tworzenia od podstaw podstawowej aplikacji Web3.
Zaczęliśmy od wyboru platformy blockchain, skonfigurowania środowiska programistycznego, stworzenia inteligentnego kontraktu, skompilowania i wdrożenia inteligentnego kontraktu w sieci Ethereum, a na koniec stworzenia aplikacji Web3 współdziałającej z inteligentnym kontraktem.
Chociaż jest to bardzo prosty przykład, powinien dać ci dobry punkt wyjścia do odkrywania ekscytującego świata programowania Web3.
Obserwuj mnie, aby uzyskać inny samouczek lub omów go w komentarzach