Ohjelmaesimerkit
Solana Program Examples -arkisto GitHubissa tarjoaa useita alihakemistoja, joista kukin sisältää koodiesimerkkejä auttaakseen kehittäjiä oppimaan ja kokeilemaan Solana-lohkoketjukehitystä.
Löydät esimerkit solana-developers/program-examples
-hakemistosta yhdessä
README-tiedostojen kanssa, jotka selittävät kuinka ajaa eri esimerkkejä.
Useimmat esimerkit ovat itsenäisiä ja saatavilla natiivina Rustina (eli ilman
kehystä) ja Anchor-versioina.
Arkistosta löydät seuraavat alihakemistot, joista kukin sisältää erilaisia esimerkkiohjelmia:
Perusteet
Sisältää sarjan esimerkkejä, jotka havainnollistavat perustavia askeleita Solana-ohjelmien rakentamiseen käyttäen natiiveja Rust-kirjastoja. Nämä esimerkit on suunniteltu auttamaan kehittäjiä ymmärtämään Solana-ohjelmoinnin ydinkäsitteitä.
Esimerkin nimi | Kuvaus | Kieli |
---|---|---|
Account Data | Osoitteen tallentaminen nimellä, talon numerolla, kadulla ja kaupungilla tiliin. | Natiivi, Anchor |
Checking Accounts | Turvallisuusoppitunteja, jotka näyttävät kuinka tehdä tilien tarkistuksia | Natiivi, Anchor |
Close Account | Näyttää kuinka sulkea tilejä saadaksesi rent-maksun takaisin. | Natiivi, Anchor |
Counter | Yksinkertainen laskuriohjelma kaikissa eri arkkitehtuureissa. | Natiivi, Anchor, mpl-stack |
Create Account | Kuinka luoda järjestelmätili ohjelman sisällä. | Natiivi, Anchor |
Cross Program Invocation | Käsi- ja vipuanalogiaa käyttäen tämä näyttää kuinka kutsua toista ohjelmaa ohjelman sisältä. | Natiivi, Anchor |
hello solana | Hello world -esimerkki, joka vain tulostaa hello world -tekstin transaktiolokeissa. | Natiivi, Anchor |
Pda Rent payer | Näyttää kuinka voit käyttää PDA:n lamporteja maksaaksesi uudesta tilistä. | Natiivi, Anchor |
Processing Instructions | Näyttää kuinka käsitellä ohjedataa merkkijonona ja u32:na. | Natiivi, Anchor |
Program Derived Addresses | Näyttää kuinka käyttää seedejä PDA:n viittaamiseen ja datan tallentamiseen siihen. | Natiivi, Anchor |
Realloc | Näyttää kuinka kasvattaa ja pienentää olemassa olevan tilin kokoa. | Natiivi, Anchor |
Rent | Tässä opit kuinka laskea rent-vaatimuksia ohjelman sisällä. | Natiivi, Anchor |
Repository Layout | Suosituksia siitä, kuinka jäsentää ohjelmasi rakenne. | Natiivi, Anchor |
Transfer SOL | Erilaisia menetelmiä SOL:n siirtämiseen järjestelmätileille ja PDA:ille. | Natiivi, Anchor, Seahorse |
Tokenit
Useimmat Solanan tokenit käyttävät Solana Program Library (SPL) -tokenstandardia. Täältä löydät monia esimerkkejä siitä, miten luoda, siirtää ja polttaa tokeneita sekä miten käyttää niitä ohjelmissa.
Esimerkin nimi | Kuvaus | Kieli |
---|---|---|
Create Token | Miten luoda token ja lisätä siihen metaplex-metatietoja. | Anchor, Native |
NFT Minter | Vain yhden tokenin määrän luominen ja sitten luontioikeuden poistaminen. | Anchor, Native |
PDA Mint Authority | Näyttää, miten muuttaa tokenin luontioikeutta, jotta voit luoda tokeneita ohjelman sisältä. | Anchor, Native |
SPL Token Minter | Selittää, miten käyttää associated token accounteja token-tilien seurantaan. | Anchor, Native |
Token Swap | Laaja esimerkki, joka näyttää, miten rakentaa AMM (automated market maker) -pooli SPL-tokeneille. | Anchor |
Transfer Tokens | Näyttää, miten siirtää SPL-tokeneita käyttäen CPI:tä token-ohjelmaan. | Anchor, Native |
Token-2022 | Katso Token 2022 (Token Extensions). | Anchor, Native |
Token 2022 (Token Extensions)
Token 2022 on uusi standardi tokeneille Solanassa. Se on joustavampi ja mahdollistaa 16 erilaisen laajennuksen lisäämisen token mintiin toiminnallisuuden lisäämiseksi. Täydellinen luettelo laajennuksista löytyy aloitusoppaasta
Esimerkin nimi | Kuvaus | Kieli |
---|---|---|
Basics | Miten luoda token, mintata ja siirtää sitä. | Anchor |
Default account state | Tämä laajennus mahdollistaa token-tilien luomisen tietyssä tilassa, esimerkiksi jäädytettynä. | Anchor, Native |
Mint Close Authority | Vanhalla token-ohjelmalla ei ollut mahdollista sulkea mintiä. Nyt se on. | Anchor, Native |
Multiple Extensions | Näyttää, miten voit lisätä useita laajennuksia yhteen mintiin | Native |
NFT Metadata pointer | On mahdollista käyttää metadata-laajennusta NFT:iden luomiseen ja dynaamisten on-chain-metatietojen lisäämiseen. | Anchor |
Not Transferable | Hyödyllinen esimerkiksi saavutuksille, suositteluohjelmille tai mille tahansa sieluun sidotuille tokeneille. | Anchor, Native |
Transfer fee | Jokainen tokenien siirto pidättää osan tokeneista token-tilillä, jotka voidaan sitten kerätä. | Anchor, Native |
Transfer Hook | Neljä esimerkkiä lisätoiminnallisuuden lisäämisestä tokeniisi käyttäen CPI:tä token-ohjelmasta omaan ohjelmaasi. | Anchor |
Is this page helpful?