Kho lưu trữ Solana Program Examples trên GitHub cung cấp nhiều thư mục con, mỗi thư mục chứa các ví dụ mã để giúp các nhà phát triển học tập và thử nghiệm với việc phát triển blockchain Solana.
Bạn có thể tìm thấy các ví dụ trong solana-developers/program-examples cùng
với các tệp README giải thích cách chạy các ví dụ khác nhau. Hầu hết các ví dụ
đều độc lập và có sẵn bằng Rust thuần túy (tức là không sử dụng framework) và
Anchor.
Trong kho lưu trữ, bạn sẽ tìm thấy các thư mục con sau đây, mỗi thư mục chứa các chương trình ví dụ khác nhau:
Ngoài ra còn có các ví dụ chương trình hệ sinh thái
Kiến thức cơ bản
Chứa một loạt các ví dụ minh họa các bước nền tảng để xây dựng các chương trình Solana sử dụng thư viện Rust gốc. Các ví dụ này được thiết kế để giúp các nhà phát triển hiểu các khái niệm cốt lõi của lập trình Solana.
| Tên ví dụ | Mô tả | Ngôn ngữ |
|---|---|---|
| Account Data | Lưu một địa chỉ với tên, số nhà, đường và thành phố vào một tài khoản. | Native, Anchor |
| Checking Accounts | Các bài học bảo mật hướng dẫn cách thực hiện kiểm tra tài khoản | Native, Anchor |
| Close Account | Hướng dẫn cách đóng tài khoản để lấy lại rent. | Native, Anchor |
| Counter | Một chương trình đếm đơn giản theo tất cả các kiến trúc khác nhau. | Native, Anchor, mpl-stack |
| Create Account | Cách tạo một tài khoản hệ thống trong một chương trình. | Native, Anchor |
| Cross Program Invocation | Sử dụng phép so sánh bàn tay và đòn bẩy, ví dụ này hướng dẫn cách gọi một chương trình khác từ bên trong một chương trình. | Native, Anchor |
| hello solana | Ví dụ hello world chỉ in hello world vào nhật ký giao dịch. | Native, Anchor |
| Pda Rent payer | Hướng dẫn cách sử dụng các lamport từ một PDA để thanh toán cho một tài khoản mới. | Native, Anchor |
| Processing Instructions | Hướng dẫn cách xử lý instruction data dạng chuỗi và u32. | Native, Anchor |
| Program Derived Addresses | Hướng dẫn cách sử dụng seeds để tham chiếu đến một PDA và lưu dữ liệu vào đó. | Native, Anchor |
| Realloc | Hướng dẫn cách tăng và giảm kích thước của một tài khoản hiện có. | Native, Anchor |
| Rent | Tại đây bạn sẽ học cách tính toán các yêu cầu rent trong một chương trình. | Native, Anchor |
| Repository Layout | Các khuyến nghị về cách cấu trúc bố cục chương trình của bạn. | Native, Anchor |
| Transfer SOL | Các phương thức khác nhau để chuyển SOL cho tài khoản hệ thống và PDA. | Native, Anchor, Seahorse |
Token
Hầu hết các token trên Solana đều sử dụng tiêu chuẩn token Solana Program Library (SPL). Tại đây bạn có thể tìm thấy nhiều ví dụ về cách mint, chuyển, đốt token và cả cách tương tác với chúng trong các chương trình.
| Tên Ví Dụ | Mô Tả | Ngôn Ngữ |
|---|---|---|
| Tạo Token | Cách tạo token và thêm metadata Metaplex vào đó. | Anchor, Native |
| NFT Minter | Mint duy nhất một lượng token rồi xóa quyền mint. | Anchor, Native |
| PDA Mint Authority | Hướng dẫn cách thay đổi quyền mint của một mint để mint token từ bên trong chương trình. | Anchor, Native |
| SPL Token Minter | Giải thích cách sử dụng Associated Token Accounts để theo dõi các token account. | Anchor, Native |
| Token Swap | Ví dụ toàn diện hướng dẫn cách xây dựng một pool AMM (nhà tạo lập thị trường tự động) cho SPL token. | Anchor |
| Transfer Tokens | Hướng dẫn cách chuyển SPL token bằng CPI vào token program. | Anchor, Native |
| Token-2022 | Xem Token 2022 (Token extensions). | Anchor, Native |
Token Extensions (Token 2022)
Token 2022 là tiêu chuẩn mới cho token trên Solana. Đây là tiêu chuẩn linh hoạt hơn, cho phép bạn thêm tới 16 extension khác nhau vào một token mint để bổ sung thêm chức năng cho nó. Danh sách đầy đủ các extension có thể tìm thấy trong Hướng Dẫn Bắt Đầu
| Tên Ví Dụ | Mô Tả | Ngôn Ngữ |
|---|---|---|
| Cơ Bản | Cách tạo token, mint và chuyển token. | Anchor |
| Trạng thái tài khoản mặc định | Extension này cho phép bạn tạo token account với một trạng thái nhất định, ví dụ như bị đóng băng. | Anchor, Native |
| Mint Close Authority | Với Token Program cũ, không thể đóng một mint. Giờ đây điều đó đã khả thi. | Anchor, Native |
| Nhiều Extension | Hướng dẫn cách thêm nhiều extension vào một mint duy nhất. | Native |
| NFT Metadata Pointer | Có thể sử dụng metadata extension để tạo NFT và thêm metadata on-chain động. | Anchor |
| Không Thể Chuyển Nhượng | Hữu ích cho các trường hợp như thành tích, chương trình giới thiệu hoặc bất kỳ soul bound token nào. | Anchor, Native |
| Phí Chuyển | Mỗi lần chuyển token sẽ giữ lại một lượng token trong token account, lượng này có thể được thu thập sau. | Anchor, Native |
| Transfer Hook | Bốn ví dụ về cách thêm chức năng bổ sung cho token của bạn bằng CPI từ token program vào chương trình của bạn. | Anchor |
Ví dụ chương trình Solana trong hệ sinh thái
Các bên thứ ba thường duy trì thư viện ví dụ chương trình Solana của riêng họ. Các thư viện này được duy trì bởi các nhà cung cấp chứ không phải bởi Solana Foundation.
- Ví dụ chương trình Solana của Quicknode cung cấp thêm các chương trình, đặc biệt dành cho phần mềm tài chính, cho cả các phiên bản Anchor mới hơn và framework Quasar.
Is this page helpful?