Exemples de programmes
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 avec le développement sur la blockchain Solana.
Vous pouvez trouver les exemples dans le solana-developers/program-examples
ainsi que des 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 :
Bases
Contient une série d'exemples qui démontrent les étapes fondamentales pour construire des programmes Solana en utilisant les bibliothèques Rust natives. Ces exemples sont conçus pour aider les développeurs à comprendre les concepts de base 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. | Natif, Anchor |
Checking Accounts | Leçons de sécurité qui montrent comment effectuer des vérifications de compte | Natif, Anchor |
Close Account | Vous montre comment fermer des comptes pour récupérer leur loyer. | Natif, Anchor |
Counter | Un programme de compteur simple dans toutes les différentes architectures. | Natif, Anchor, mpl-stack |
Create Account | Comment créer un compte système au sein d'un programme. | Natif, Anchor |
Cross Program Invocation | Utilisant une analogie de main et levier pour montrer comment appeler un autre programme. | Natif, Anchor |
hello solana | Exemple Hello world qui affiche simplement hello world dans les journaux de transaction. | Natif, Anchor |
Pda Rent payer | Vous montre comment utiliser les lamports d'un PDA pour payer un nouveau compte. | Natif, Anchor |
Processing Instructions | Vous montre comment gérer les données d'instruction de type chaîne et u32. | Natif, Anchor |
Program Derived Addresses | Montre comment utiliser des seeds pour référencer un PDA et y sauvegarder des données. | Natif, Anchor |
Realloc | Vous montre comment augmenter et diminuer la taille d'un compte existant. | Natif, Anchor |
Rent | Ici vous apprendrez comment calculer les exigences de loyer au sein d'un programme. | Natif, Anchor |
Repository Layout | Recommandations sur la façon de structurer l'agencement de votre programme. | Natif, Anchor |
Transfer SOL | Différentes méthodes de transfert de SOL pour les comptes système et les PDA. | Natif, 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, détruire des tokens et même comment interagir avec eux dans les programmes.
Nom de l'exemple | Description | Langage |
---|---|---|
Create Token | Comment créer un token et y ajouter des métadonnées metaplex. | Anchor, Native |
NFT Minter | Création d'une seule unité d'un token puis suppression de l'autorité de création. | Anchor, Native |
PDA Mint Authority | Montre comment modifier l'autorité de création d'un token pour créer des tokens depuis un programme. | Anchor, Native |
SPL Token Minter | Explique comment utiliser les Associated Token Accounts pour suivre les comptes de tokens. | Anchor, Native |
Token Swap | Exemple détaillé montrant comment construire un pool AMM (automated market maker) pour les tokens SPL. | Anchor |
Transfer Tokens | Montre comment transférer des tokens SPL en utilisant des CPIs vers le programme de token. | Anchor, Native |
Token-2022 | Voir Token 2022 (Extensions de token). | Anchor, Native |
Token 2022 (Extensions de token)
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 token pour lui ajouter plus de fonctionnalités. Une liste complète des extensions peut être trouvée 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 comptes de tokens avec un certain état, par exemple gelé. | Anchor, Native |
Mint Close Authority | Avec l'ancien programme de token, il n'était pas possible de fermer un mint. Maintenant c'est possible. | Anchor, Native |
Multiple Extensions | Vous 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 NFTs et ajouter des métadonnées dynamiques on-chain. | Anchor |
Not Transferable | Utile par exemple pour les réalisations, les programmes de parrainage ou tout token lié à l'âme (soul bound). | Anchor, Native |
Transfer fee | Chaque transfert de tokens retient certains tokens dans le compte de token qui peuvent ensuite être collectés. | Anchor, Native |
Transfer Hook | Quatre exemples pour ajouter des fonctionnalités supplémentaires à votre token en utilisant un CPI du programme de token vers votre programme. | Anchor |
Is this page helpful?