Le dépôt Solana Program Examples sur GitHub propose plusieurs sous-dossiers, chacun contenant des exemples de code pour aider les développeurs à apprendre et expérimenter le développement sur la blockchain Solana.
Vous pouvez trouver les exemples dans le solana-developers/program-examples
accompagnés de fichiers README qui vous expliquent comment exécuter les
différents exemples. La plupart des exemples sont autonomes et sont disponibles
en Rust natif (c'est-à-dire sans framework) et
Anchor.
Dans le dépôt, vous trouverez les sous-dossiers suivants, chacun contenant divers programmes d'exemple :
Il existe également des exemples de programmes de l'écosystème
Bases
Contient une série d'exemples illustrant les étapes fondamentales pour construire des programmes Solana à l'aide de bibliothèques Rust natives. Ces exemples sont conçus pour aider les développeurs à comprendre les concepts fondamentaux de la programmation Solana.
| Nom de l'exemple | Description | Langage |
|---|---|---|
| Account Data | Enregistrement d'une adresse avec nom, numéro de maison, rue et ville dans un compte. | Native, Anchor |
| Checking Accounts | Leçons de sécurité montrant comment effectuer des vérifications de compte. | Native, Anchor |
| Close Account | Montre comment fermer des comptes pour récupérer leur rent. | Native, Anchor |
| Counter | Un programme de compteur simple dans toutes les architectures disponibles. | Native, Anchor, mpl-stack |
| Create Account | Comment créer un compte système au sein d'un programme. | Native, Anchor |
| Cross Program Invocation | À l'aide d'une analogie avec une main et un levier, cet exemple montre comment appeler un autre programme depuis un programme. | Native, Anchor |
| hello solana | Exemple « hello world » qui affiche simplement hello world dans les journaux de transaction. | Native, Anchor |
| Pda Rent payer | Montre comment utiliser les lamport d'un PDA pour payer un nouveau compte. | Native, Anchor |
| Processing Instructions | Montre comment traiter une chaîne instruction data et un u32. | Native, Anchor |
| Program Derived Addresses | Montre comment utiliser des seeds pour référencer un PDA et y enregistrer des données. | Native, Anchor |
| Realloc | Montre comment augmenter et réduire la taille d'un compte existant. | Native, Anchor |
| Rent | Vous apprendrez ici à calculer les exigences de rent au sein d'un programme. | Native, Anchor |
| Repository Layout | Recommandations sur la façon de structurer la mise en page de votre programme. | Native, Anchor |
| Transfer SOL | Différentes méthodes de transfert de SOL pour les comptes système et les PDA. | Native, Anchor, Seahorse |
Tokens
La plupart des tokens sur Solana utilisent le standard de token de la Solana Program Library (SPL). Vous trouverez ici de nombreux exemples sur la façon de créer, transférer et brûler des tokens, ainsi que sur la manière d'interagir avec eux dans des programmes.
| Nom de l'exemple | Description | Langage |
|---|---|---|
| Create Token | Comment créer un token et lui ajouter des métadonnées Metaplex. | Anchor, Native |
| NFT Minter | Créer une seule unité d'un token puis supprimer l'autorité de création. | Anchor, Native |
| PDA Mint Authority | Montre comment modifier l'autorité de création d'un mint afin de créer des tokens depuis un programme. | Anchor, Native |
| SPL Token Minter | Explique comment utiliser les associated token accounts pour assurer le suivi des token accounts. | Anchor, Native |
| Token Swap | Exemple complet montrant comment créer un pool AMM (automated market maker) pour les tokens SPL. | Anchor |
| Transfer Tokens | Montre comment transférer un token SPL en utilisant des CPIs vers le token program. | Anchor, Native |
| Token-2022 | Voir Token 2022 (Token extensions). | Anchor, Native |
Token Extensions (Token 2022)
Token 2022 est un nouveau standard pour les tokens sur Solana. Il est plus flexible et vous permet d'ajouter 16 extensions différentes à un mint de token pour lui apporter davantage de fonctionnalités. Une liste complète des extensions est disponible dans le Guide de démarrage
| Nom de l'exemple | Description | Langage |
|---|---|---|
| Basics | Comment créer un token, le créer et le transférer. | Anchor |
| Default account state | Cette extension vous permet de créer des token accounts avec un état particulier, par exemple gelé. | Anchor, Native |
| Mint Close Authority | Avec l'ancien Token Program, il n'était pas possible de fermer un mint. Désormais, c'est possible. | Anchor, Native |
| Multiple Extensions | Montre comment ajouter plusieurs extensions à un seul mint. | Native |
| NFT Metadata pointer | Il est possible d'utiliser l'extension de métadonnées pour créer des NFT et ajouter des métadonnées dynamiques on-chain. | Anchor |
| Not Transferable | Utile par exemple pour les succès, les programmes de parrainage ou tout token soul bound. | Anchor, Native |
| Transfer fee | Chaque transfert de tokens retient une partie des tokens dans le token account, lesquels peuvent ensuite être collectés. | Anchor, Native |
| Transfer Hook | Quatre exemples pour ajouter des fonctionnalités supplémentaires à votre token en utilisant un CPI depuis le Token Program vers votre programme. | Anchor |
Exemples de programmes Solana de l'écosystème
Des tiers maintiennent souvent leurs propres bibliothèques d'exemples de programmes Solana. Ceux-ci sont maintenus par les fournisseurs et non par la Fondation Solana.
- Exemples de programmes Solana de Quicknode propose des programmes supplémentaires, notamment pour les logiciels financiers, pour les versions plus récentes d'Anchor ainsi que pour le framework Quasar.
Is this page helpful?