Dokumentacja SolanaTworzenie programów

Przykłady programów

Repozytorium Solana Program Examples na GitHubie zawiera kilka podfolderów, z których każdy zawiera przykłady kodu, aby pomóc deweloperom w nauce i eksperymentowaniu z rozwojem blockchaina Solana.

Przykłady znajdziesz w repozytorium solana-foundation/program-examples wraz z plikami README, które wyjaśniają, jak uruchomić poszczególne przykłady. Większość przykładów jest samodzielna i dostępna w jednym lub kilku z następujących wariantów: Anchor, Pinocchio oraz natywny Rust.

W repozytorium znajdziesz następujące podfoldery, z różnorodnymi przykładami programów w każdym z nich:

Dostępne są również przykłady programów ekosystemowych

Podstawy

Zawiera serię przykładów demonstrujących podstawowe kroki do budowania programów Solana przy użyciu natywnych bibliotek Rust. Przykłady te zostały zaprojektowane, aby pomóc deweloperom zrozumieć podstawowe koncepcje programowania na Solanie.

Nazwa przykładuOpisJęzyk
Account DataZapisywanie adresu z imieniem, numerem domu, ulicą i miastem na koncie.Native, Anchor, Pinocchio
Checking AccountsLekcje bezpieczeństwa pokazujące, jak przeprowadzać weryfikację kont.Native, Anchor, Pinocchio
Close AccountPokazuje, jak zamknąć konta, aby odzyskać ich rent.Native, Anchor, Pinocchio
CounterProsty program licznika we wszystkich różnych architekturach.Native, Anchor, Pinocchio, mpl-stack
Create AccountJak utworzyć konto systemowe w ramach programu.Native, Anchor, Pinocchio
Cross Program InvocationNa przykładzie analogii dłoni i dźwigni pokazuje, jak wywołać inny program z poziomu programu.Native, Anchor, Pinocchio
hello solanaPrzykład „hello world“, który wypisuje hello world w logach transakcji.Native, Anchor, Pinocchio
Pda Rent payerPokazuje, jak można użyć lamport z PDA do opłacenia nowego konta.Native, Anchor, Pinocchio
Processing InstructionsPokazuje, jak obsługiwać instruction data w postaci ciągu znaków i u32.Native, Anchor, Pinocchio
Program Derived AddressesPokazuje, jak używać seedów do odwoływania się do PDA i zapisywania w nim danych.Native, Anchor, Pinocchio
ReallocPokazuje, jak zmienić rozmiar istniejącego konta w ramach limitów środowiska uruchomieniowego.Native, Anchor, Pinocchio
Repository LayoutZalecenia dotyczące strukturyzowania układu programu.Native, Anchor, Pinocchio
Transfer SOLRóżne metody transferu SOL dla kont systemowych i PDA.Native, Anchor, Pinocchio, Seahorse

Tokeny

Większość tokenów w sieci Solana korzysta ze standardu tokenów Solana Program Library (SPL). Tutaj znajdziesz wiele przykładów dotyczących tworzenia, przesyłania i spalania tokenów, a także interakcji z nimi w programach.

Nazwa przykładuOpisJęzyk
Create TokenJak utworzyć token i dodać do niego metadane Metaplex.Anchor, Native, Pinocchio
NFT MinterTworzenie dokładnie jednej jednostki tokena, a następnie usunięcie uprawnień do mintowania.Anchor, Native, Pinocchio
PDA Mint AuthorityPokazuje, jak zmienić uprawnienia mintowania, aby mintować tokeny z poziomu programu.Anchor, Native, Pinocchio
Token SwapRozbudowany przykład pokazujący, jak zbudować pulę AMM (automated market maker) dla tokenów SPL.Anchor
Transfer TokensPokazuje, jak przesyłać tokeny SPL przy użyciu CPI do token program.Anchor, Native, Pinocchio
Token-2022Zobacz Token 2022 (Token extensions).Anchor, Native, Pinocchio

Token Extensions (Token 2022)

Token 2022 to nowy standard tokenów w sieci Solana. Jest bardziej elastyczny i pozwala dodać 16 różnych rozszerzeń do mintu tokena, aby wzbogacić go o dodatkowe funkcjonalności. Pełna lista rozszerzeń znajduje się w Przewodniku wprowadzającym

Nazwa przykładuOpisJęzyk
BasicsJak utworzyć token, mintować go i przesyłać.Anchor
Default account stateTo rozszerzenie pozwala tworzyć token accounts w określonym stanie, na przykład zamrożonym.Anchor, Native, Pinocchio
Mint Close AuthorityW starym Token Program zamknięcie mintu nie było możliwe. Teraz jest.Anchor, Native, Pinocchio
Multiple ExtensionsPokazuje, jak dodać wiele rozszerzeń do jednego mintu.Native, Pinocchio
NFT Metadata pointerMożliwe jest użycie rozszerzenia metadanych do tworzenia NFT i dodawania dynamicznych metadanych on-chain.Anchor
Not TransferablePrzydatne na przykład dla osiągnięć, programów poleceń lub tokenów soul bound.Anchor, Native, Pinocchio
Transfer feeKażdy transfer tokenów zatrzymuje pewną ich ilość w token account, która następnie może zostać odebrana.Anchor, Native, Pinocchio
Transfer HookCztery przykłady dodawania dodatkowej funkcjonalności do tokena przy użyciu CPI z Token Program do Twojego programu.Anchor

Przykłady programów Solana w ekosystemie

Zewnętrzni dostawcy często utrzymują własne biblioteki przykładowych programów Solana. Są one zarządzane przez dostawców, a nie przez Solana Foundation.

Is this page helpful?

Spis treści

Edytuj stronę