Contoh Program
Repository Solana Program Examples di GitHub menawarkan beberapa subfolder, masing-masing berisi contoh kode untuk membantu pengembang belajar dan bereksperimen dengan pengembangan blockchain Solana.
Anda dapat menemukan contoh-contoh tersebut di
solana-developers/program-examples
bersama dengan file README yang menjelaskan
cara menjalankan berbagai contoh. Sebagian besar contoh bersifat mandiri dan
tersedia dalam Rust native (yaitu, tanpa framework) dan
Anchor.
Di dalam repo ini Anda akan menemukan subfolder berikut, masing-masing dengan berbagai program contoh di dalamnya:
Dasar-dasar
Berisi serangkaian contoh yang mendemonstrasikan langkah-langkah dasar untuk membangun program Solana menggunakan pustaka Rust native. Contoh-contoh ini dirancang untuk membantu pengembang memahami konsep inti pemrograman Solana.
Nama Contoh | Deskripsi | Bahasa |
---|---|---|
Account Data | Menyimpan alamat dengan nama, nomor rumah, jalan dan kota dalam sebuah akun. | Native, Anchor |
Checking Accounts | Pelajaran keamanan yang menunjukkan cara melakukan pemeriksaan akun | Native, Anchor |
Close Account | Menunjukkan cara menutup akun untuk mendapatkan kembali biaya rent. | Native, Anchor |
Counter | Program penghitung sederhana dalam berbagai arsitektur yang berbeda. | Native, Anchor, mpl-stack |
Create Account | Cara membuat akun sistem dalam sebuah program. | Native, Anchor |
Cross Program Invocation | Menggunakan analogi tangan dan tuas untuk menunjukkan cara memanggil program lain dari program. | Native, Anchor |
hello solana | Contoh hello world yang hanya mencetak hello world di log transaksi. | Native, Anchor |
Pda Rent payer | Menunjukkan cara menggunakan lamport dari PDA untuk membayar akun baru. | Native, Anchor |
Processing Instructions | Menunjukkan cara menangani data instruksi string dan u32. | Native, Anchor |
Program Derived Addresses | Menunjukkan cara menggunakan seed untuk merujuk ke PDA dan menyimpan data di dalamnya. | Native, Anchor |
Realloc | Menunjukkan cara menambah dan mengurangi ukuran akun yang sudah ada. | Native, Anchor |
Rent | Di sini Anda akan belajar cara menghitung persyaratan rent dalam sebuah program. | Native, Anchor |
Repository Layout | Rekomendasi tentang cara menyusun tata letak program Anda. | Native, Anchor |
Transfer SOL | Berbagai metode untuk mentransfer SOL untuk akun sistem dan PDA. | Native, Anchor, Seahorse |
Token
Sebagian besar token di Solana menggunakan standar token Solana Program Library (SPL). Di sini Anda dapat menemukan banyak contoh cara mencetak, mentransfer, membakar token dan bahkan cara berinteraksi dengan token tersebut dalam program.
Nama Contoh | Deskripsi | Bahasa |
---|---|---|
Create Token | Cara membuat token dan menambahkan metadata metaplex ke dalamnya. | Anchor, Native |
NFT Minter | Mencetak hanya satu jumlah token dan kemudian menghapus otoritas pencetakan. | Anchor, Native |
PDA Mint Authority | Menunjukkan cara mengubah otoritas pencetakan, untuk mencetak token dari dalam program. | Anchor, Native |
SPL Token Minter | Menjelaskan cara menggunakan Associated Token Account untuk melacak token account. | Anchor, Native |
Token Swap | Contoh ekstensif yang menunjukkan cara membangun pool AMM (automated market maker) untuk token SPL. | Anchor |
Transfer Tokens | Menunjukkan cara mentransfer token SPL menggunakan CPI ke dalam program token. | Anchor, Native |
Token-2022 | Lihat Token 2022 (Token Extensions). | Anchor, Native |
Token 2022 (Token Extensions)
Token 2022 adalah standar baru untuk token di Solana. Standar ini lebih fleksibel dan memungkinkan Anda menambahkan 16 ekstensi berbeda ke token mint untuk menambahkan lebih banyak fungsionalitas ke dalamnya. Daftar lengkap ekstensi dapat ditemukan di Panduan Memulai
Nama Contoh | Deskripsi | Bahasa |
---|---|---|
Basics | Cara membuat token, mencetak dan mentransfernya. | Anchor |
Default account state | Ekstensi ini memungkinkan Anda membuat token account dengan status tertentu, misalnya dibekukan. | Anchor, Native |
Mint Close Authority | Dengan program token lama tidak mungkin menutup mint. Sekarang hal itu dimungkinkan. | Anchor, Native |
Multiple Extensions | Menunjukkan cara menambahkan beberapa ekstensi ke satu mint | Native |
NFT Metadata pointer | Dimungkinkan menggunakan ekstensi metadata untuk membuat NFT dan menambahkan metadata dinamis on chain. | Anchor |
Not Transferable | Berguna misalnya untuk pencapaian, program referral atau token soul bound lainnya. | Anchor, Native |
Transfer fee | Setiap transfer token menahan beberapa token di token account yang kemudian dapat dikumpulkan. | Anchor, Native |
Transfer Hook | Empat contoh untuk menambahkan fungsionalitas tambahan ke token Anda menggunakan CPI dari program token ke program Anda. | Anchor |
Is this page helpful?