Stos Web3: odniesienie dla programistów

Chcesz zaangażować się w budowanie projektów Web3? To odniesienie przedstawi najpopularniejsze warstwy i środowiska programistyczne.

Nie jest tajemnicą, że w tej chwili wokół tego tematu – Web3 – jest sporo szumu. Wiele osób porzuciło pracę w FAANG i wybitne startupy, aby rozpocząć nowy start w metaverse Web3.

I zakładając, że czujesz podobne swędzenie – od czego zacząć? Ten artykuł jest w całości poświęcony tym, którzy chcą od razu przejść do tworzenia Web3. Skoncentrujemy się na różnych kategoriach, z których każda zawiera cenne zasoby ułatwiające rozpoczęcie podróży.

Aby to odniesienie było dostępne, podzielę zasoby na osobne sekcje.

A te sekcje to:

  • Warstwy. Najpopularniejsze Blockchainy wykorzystywane w rozwoju.
  • Środowisko deweloperskie. Narzędzia ułatwiające wdrażanie na tych warstwach.
  • Tożsamość. Jak budować wokół tożsamości portfela i korzystać z logowania kryptograficznego.
  • Magazynowanie. Tworzenie trwałego przechowywania danych z wykorzystaniem technologii P2P.
  • API. Bezpośredni dostęp do głównych sieci w celu pobrania informacji.
  • Fronton. Popularne frameworki do obsługi front-endu.

Stos to termin używany do określenia konkretnej kombinacji technologii wykorzystywanych do osiągnięcia określonego celu. Może to być tworzenie pełnego stosu, czy, w tym przypadku, stos Web3. Warto zauważyć, że technologia związana z tworzeniem aplikacji i produktów Web3 jest dość „niestabilna”.

W pewnym sensie wiele rzeczy się zmienia, ponieważ coraz więcej osób czuje się komfortowo z budowaniem oprogramowania na blockchain. Dlatego naszym celem dla tego odniesienia jest wymienienie zasobów, które zostały już wykorzystane w rzeczywistych projektach.

Jeśli to wszystko brzmi dobrze, możemy zacząć.

Warstwy

Podstawa każdego projektu Web3 zaczyna się od warstwy. Określona sieć blockchain, w której będzie działać Twoja aplikacja lub produkt.

#1. Ethereum

Ethereum zyskał popularność dzięki natywnej propozycji inteligentnych kontraktów.

Od tego czasu programiści uczynili z niego preferowaną warstwę blockchain do tworzenia aplikacji Web3 nowej generacji. Jest to również preferowana warstwa dla wielu projektów NFT, więc jeśli masz ochotę pracować nad aplikacjami związanymi z NFT, Ethereum ma wiele do zaoferowania po wyjęciu z pudełka.

#2. Wielokąt

The Wielokąt warstwa jest łańcuchem bocznym Ethereum, oferującym bardziej skomplikowane praktyki bezpieczeństwa przy jednoczesnym utrzymaniu niższych opłat transakcyjnych (gazowych). Jest to popularny wybór w przypadku projektów, w których liczba transakcji jest wyjątkowo duża, ale cena transakcji jest niska.

Ponieważ Polygon jest łańcuchem bocznym, często jest również określany jako łańcuch blokowy warstwy 2. Jednak szybki rozwój Polygon sprawia, że ​​jest popularnym wyborem nie tylko dla aplikacji NFT, ale także dApps i systemów płatności.

Inne godne uwagi warstwy Web3:

  • Solana. Blockchain zbudowany w celu tworzenia aplikacji DeFi na dużą skalę.
  • BLISKO Protokół. Łańcuch bloków inteligentnych kontraktów z ogromnymi zasobami dla programistów.
  • Polkadota. Protokół cross-blockchain do budowania projektów zarządzania.
  • Tezos. Platforma skoncentrowana na energii do budowania zdecentralizowanych platform kreatywnych.
  • Fantom. Platforma inteligentnych kontraktów Open-Source do budowania dApps.

Środowisko deweloperskie

Środowisko programistyczne pozwala pominąć całą część „zacznij od zera”. Na razie są to w większości oparte na Ethereum.

#1. Kask

Kask to środowisko deweloperskie dla programistów Ethereum. Działa, pomagając programistom w zautomatyzowaniu procesu budowania i łączenia zdecentralizowanych aplikacji, ale także inteligentnych kontraktów. Jego popularność wynika z wbudowanej sieci Hardhat Network, kopii sieci Ethereum jeden do jednego, której można używać do lokalnego testowania aplikacji.

#2. Trufla

Trufla to oparty na JavaScript framework do budowania inteligentnych kontraktów. Zakłada, że ​​korzystasz z EVM (Ethereum Virtual Machine), dając Ci narzędzia do przyspieszenia procesu rozwoju. Niektóre z tych narzędzi obejmują automatyczne testowanie, kompilator kontraktów i oddzielne narzędzia umożliwiające dostęp do kontaktów bezpośrednio z konsoli.

Inne godne uwagi środowiska deweloperskie Web3:

  • Odlewnia. Oparty na Ruście zestaw narzędzi do tworzenia aplikacji na Ethereum.
  • Duszek. Oparta na Pythonie platforma do budowania i testowania inteligentnych kontraktów.
  • Kotwica. Framework do pracy z Solaną napisany w języku Rust.
  • Rozpocząć. Kompleksowa platforma do budowania na bazie Ethereum.
  • Wafel. Niestandardowe ramy do testowania inteligentnych kontraktów.

Tożsamość

W przeciwieństwie do tradycyjnego uwierzytelniania użytkownika i hasła, w Web3 programiści wdrażają zarówno wykorzystanie portfeli, jak i kluczy publicznych.

#1. PortfelPołącz

PortfelPołącz to protokół open source używany do łączenia się z dApps za pośrednictwem portfela mobilnego. Główna koncepcja korzystania z WalletConnect polega na zeskanowaniu kodu QR, którego użytkownicy mogą następnie użyć do zweryfikowania swojej tożsamości i zatwierdzenia nowego połączenia z aplikacją Web3.

Jeśli znasz portfele takie jak Pillar lub MetaMask – wszystkie integrują się bezpośrednio z WalletConnect. Oznacza to również, że masz dostęp do wielu zasobów dla programistów. Wreszcie, protokół działa ze wszystkimi głównymi łańcuchami bloków, przy czym często dodawanych jest więcej łańcuchów.

#2. Świerk

Świerk jest Wsparcie Y Combinator startup, którego celem jest przeniesienie koncepcji zdecentralizowanej tożsamości na obszary poza blockchainem. Ten zestaw ma na celu pomóc użytkownikom zweryfikować ich tożsamość cyfrową w różnych mediach: mediach społecznościowych, osobistych witrynach internetowych i sieciach blockchain.

Magazynowanie

Jak przechowujesz media – filmy, zdjęcia itp. – w Web3? Odbywa się to głównie za pomocą protokołów przechowywania plików P2P.

#1. IPFS

IPFS to wiodący na świecie protokół pamięci masowej P2P (peer-to-peer). Po przesłaniu pliku do IPFS — rozmiar pliku jest następnie zmieniany, zabezpieczany za pomocą niestandardowego skrótu i ​​przypisywany odcisk palca jako unikalny identyfikator.

Następnie inne węzły (systemy lub osoby), które są częścią tej sieci, mogą uzyskać dostęp do pliku, zweryfikować go i przechowywać w swojej pamięci podręcznej. Po zbuforowaniu plik jest dostępny dla każdego, kto ma odpowiednią metodę dostępu.

Ostatecznie celem IPFS nie jest tylko zapewnienie zdecentralizowanego systemu pamięci masowej. Ale także, aby zapewnić, że treść ma rozpiętość wielu dziesięcioleci, a nie lat. Np. Strona internetowa po pewnym czasie znika, a cała jej zawartość, w tym multimedia, zostaje utracona. IPFS zapewnia prawdziwe rozwiązanie tego problemu.

#2. Skynet

Skynet zapewnia dostępne udostępnianie plików za pomocą (zdecentralizowanej) sieci chmurowej Sia. Możesz go używać od razu ze strony głównej. Po prostu prześlij plik, a otrzymasz link. Trwa 90 dni, chyba że zarejestrujesz się w celu uzyskania klucza API. Chociaż w kontekście rozwoju – Skynet ułatwia replikację tego samego przypadku użycia, ale we własnej zdecentralizowanej aplikacji.

#2. Baza plików

Baza plików to startup SaaS, który zapewnia bezpośrednie połączenie z API Amazon S3. Możesz użyć tego interfejsu API do pobierania danych z zasobników S3, a następnie zlecić ich redystrybucję w różnych opcjach zdecentralizowanej pamięci masowej.

Obecnie Filebase obsługuje między innymi opcje przechowywania oparte na sieci Web3, takie jak Skynet, IPFS, Sia i Storj. Jako programista oznacza to, że możesz uprościć proces dostarczania zdecentralizowanych usług przechowywania plików dla swoich klientów.

Jako nowy użytkownik otrzymujesz również 5 GB wolnego miejsca, chociaż cena jest rozsądna nawet w przypadku płatnych planów.

Inne godne uwagi rozwiązania pamięci masowej Web3:

  • Splot. Arweave to protokół, który pozwala na trwałe i zrównoważone przechowywanie danych za jedną opłatą z góry.
  • Filecoin. Przechowuj dowolny rodzaj multimediów w zdecentralizowanym środowisku chmury.
  • Rój. Samowystarczalny węzeł pamięci masowej P2P, do którego zachęcają inteligentne kontrakty Ethereum.
  • Alef. Twórz aplikacje dApps i pozwól Aleph zarządzać pamięcią masową w chmurze za Ciebie.

API

W przeciwieństwie do tradycyjnego stosu opartego na bazie danych, programiści używają interfejsu API do interakcji z łańcuchem bloków i żądania lub przechowywania w nim danych. Interfejsy API są również czasami określane jako Klienci.

#1. Wykres

Wykres to kompleksowe rozwiązanie API do łączenia się z różnymi łańcuchami bloków. Celem tego interfejsu API jest pomoc programistom w dostępie do danych, które w innym przypadku wymagałyby zbudowania indywidualnych algorytmów. Na przykład punkty danych w blockchain pochodzą od prostych adresów do skomplikowanych transakcji opartych na inteligentnych kontraktach.

Przykładem może być śledzenie historii NFT.

Chociaż śledzenie historii poszczególnych zakupów może być dość łatwe, staje się coraz trudniejsze, gdy próbujesz zrozumieć relacje z różnymi zakupami. W takim przypadku Graph API udostępnia gotowe wywołania i katalogi indeksów, które pomagają szybko zwizualizować konkretny przypadek użycia.

#2. Web3.js

Web3.js to najpopularniejszy interfejs API JavaScript do bezpośredniej interakcji z Ethereum. Służy przede wszystkim do tworzenia aplikacji klienckich, które współdziałają z łańcuchem Ethereum. Zbiór bibliotek podrzędnych zawartych w Web3.js zapewnia funkcje takie jak transfery, inteligentne zarządzanie umowami i inne.

#3. Alchemia

Alchemia szybko stała się jedną z najbardziej szanowanych platform Web3. Ich podejście polega na edukowaniu programistów w zakresie szybkiego tworzenia i skalowania aplikacji Web3. I są w stanie to zrobić, dostarczając wyrafinowany interfejs API Blockchain i zestaw narzędzi programistycznych.

#4. użyj DApp

użyjDApp to platforma oparta na React do interakcji z blockchainem Ethereum. Składa się z React.js, biblioteki Ethers.js, Waffle i komponentów Web-3 React. Jest zwykle używany do tworzenia łatwo dostępnych frontonów witryn internetowych, które mogą wyświetlać różne zapytania dotyczące danych w zależności od potrzeb projektu.

Front-end

Jakich frameworków używają programiści do budowania interfejsów front-end dla projektów Web3?

#1. Reagować

Popularność Reagować jest niezrównany. I nie jest niespodzianką, gdy dowiadujemy się, że jest to również najpopularniejsza biblioteka front-end dla witryn Web3. Architektura oparta na komponentach oznacza, że ​​programiści mogą pracować na wielu częściach frontonu bez ingerencji w główny projekt.

Możesz sprawdzić Biblioteka Web3-React na GitHub dla solidnego punktu wyjścia.

#2. Następny

Next.js jest następcą Reacta, chociaż nie jest bezpośrednio powiązany. Projekty Web3 na dużą skalę wymagają ogromnego zarządzania zasobami, a Next.js jest dostarczany w pakiecie z natywnymi narzędziami zarówno dla projektów statycznych, jak i dynamicznych i jest używany przez firmy takie jak Binance, Bitscreener, Hashnode i inne.

Aby szybko rozpocząć, nie szukaj dalej niż Następny Web3 Boilerplate.

Rozpoczęcie pracy z programowaniem Web3

To dość dużo do ogarnięcia, zwłaszcza jeśli dopiero zaczynasz. Faktem jest, że w tej dziedzinie sprawy zmieniają się dość szybko. Chociaż początkowe projekty były związane z NFT, obecnie większy nacisk kładzie się na zdecentralizowane sieci i poszczególne platformy blockchain.

Jeśli chodzi o rozpoczęcie pracy z projektem Web3, to odniesienie powinno wystarczyć. Polecam również pozostawanie na bieżąco zarówno na Twitterze, jak i na Discordzie, ponieważ są to dwie najbardziej aktywne społeczności, które mają na celu śledzenie najnowszych trendów Web3.