Documentación de SolanaDesarrollo de programas

Ejemplos de programas

El repositorio Solana Program Examples en GitHub ofrece varias subcarpetas, cada una con ejemplos de código para ayudar a los desarrolladores a aprender y experimentar con el desarrollo en la blockchain de Solana.

Puedes encontrar los ejemplos en el solana-developers/program-examples junto con archivos README que te explican cómo ejecutar los diferentes ejemplos. La mayoría de los ejemplos son independientes y están disponibles en Rust nativo (es decir, sin framework) y Anchor.

Dentro del repositorio encontrarás las siguientes subcarpetas, cada una con varios programas de ejemplo:

Conceptos básicos

Contiene una serie de ejemplos que demuestran los pasos fundamentales para construir programas en Solana utilizando bibliotecas nativas de Rust. Estos ejemplos están diseñados para ayudar a los desarrolladores a comprender los conceptos básicos de la programación en Solana.

Nombre del ejemploDescripciónLenguaje
Account DataGuardar una dirección con nombre, número de casa, calle y ciudad en una cuenta.Nativo, Anchor
Checking AccountsLecciones de seguridad que muestran cómo realizar verificaciones de cuentasNativo, Anchor
Close AccountTe muestra cómo cerrar cuentas para recuperar su rent.Nativo, Anchor
CounterUn programa contador simple en todas las diferentes arquitecturas.Nativo, Anchor, mpl-stack
Create AccountCómo crear una cuenta del sistema dentro de un programa.Nativo, Anchor
Cross Program InvocationUsando una analogía de mano y palanca, muestra cómo llamar a otro programa desde un programa.Nativo, Anchor
hello solanaEjemplo de hola mundo que simplemente imprime hola mundo en los registros de transacciones.Nativo, Anchor
Pda Rent payerMuestra cómo puedes usar los lamports de un PDA para pagar una nueva cuenta.Nativo, Anchor
Processing InstructionsMuestra cómo manejar datos de instrucción de tipo string y u32.Nativo, Anchor
Program Derived AddressesMuestra cómo usar seeds para referirse a un PDA y guardar datos en él.Nativo, Anchor
ReallocMuestra cómo aumentar y disminuir el tamaño de una cuenta existente.Nativo, Anchor
RentAquí aprenderás cómo calcular los requisitos de rent dentro de un programa.Nativo, Anchor
Repository LayoutRecomendaciones sobre cómo estructurar el diseño de tu programa.Nativo, Anchor
Transfer SOLDiferentes métodos para transferir SOL para cuentas del sistema y PDAs.Nativo, Anchor, Seahorse

Tokens

La mayoría de los tokens en Solana utilizan el estándar de token de la Biblioteca de Programas de Solana (SPL). Aquí encontrarás muchos ejemplos sobre cómo acuñar, transferir, quemar tokens e incluso cómo interactuar con ellos en programas.

Nombre del ejemploDescripciónLenguaje
Create TokenCómo crear un token y añadirle metadatos de Metaplex.Anchor, Native
NFT MinterAcuñar solo una cantidad de un token y luego eliminar la autoridad de acuñación.Anchor, Native
PDA Mint AuthorityMuestra cómo cambiar la autoridad de acuñación de un mint para acuñar tokens desde un programa.Anchor, Native
SPL Token MinterExplica cómo usar Associated Token Accounts para poder realizar seguimiento de token accounts.Anchor, Native
Token SwapEjemplo extenso que muestra cómo construir un pool AMM (creador de mercado automatizado) para tokens SPL.Anchor
Transfer TokensMuestra cómo transferir tokens SPL usando CPIs en el programa de tokens.Anchor, Native
Token-2022Ver Token 2022 (Token Extensions).Anchor, Native

Token 2022 (Token Extensions)

Token 2022 es un nuevo estándar para tokens en Solana. Es más flexible y te permite añadir 16 extensiones diferentes a un token mint para agregarle más funcionalidad. Puedes encontrar una lista completa de las extensiones en la Guía de inicio

Nombre del ejemploDescripciónLenguaje
BasicsCómo crear un token, acuñarlo y transferirlo.Anchor
Default account stateEsta extensión te permite crear token accounts con un estado determinado, por ejemplo congelado.Anchor, Native
Mint Close AuthorityCon el antiguo programa de tokens no era posible cerrar un mint. Ahora sí lo es.Anchor, Native
Multiple ExtensionsMuestra cómo puedes añadir múltiples extensiones a un solo mintNative
NFT Metadata pointerEs posible usar la extensión de metadatos para crear NFTs y añadir metadatos dinámicos en la cadena.Anchor
Not TransferableÚtil por ejemplo para logros, programas de referidos o cualquier token vinculado al alma (soul bound).Anchor, Native
Transfer feeCada transferencia de tokens retiene algunos tokens en el token account que luego pueden ser recolectados.Anchor, Native
Transfer HookCuatro ejemplos para añadir funcionalidad adicional a tu token usando un CPI desde el programa de tokens a tu programa.Anchor

Is this page helpful?

Tabla de Contenidos

Editar Página