Ruta

Ruta de Anchor

Empieza por las abstracciones en las que la mayoría de los equipos confía para enviar programas rápido.

7 términos2 Categorías cubiertas
Secuencia de la ruta

Sigue los términos en orden y profundiza cuando haga falta.

La ruta está ordenada para reducir cambio de contexto. Empieza arriba, abre cada término y usa los enlaces relacionados cuando un concepto necesite más profundidad.

01
Herramientas de DevEmpieza aquí

Framework Anchor

The most popular framework for building Solana programs in Rust. Anchor provides macros (#[program], #[account], #[derive(Accounts)]) that auto-generate boilerplate for account validation, serialization, discriminators, and error handling. It includes a CLI (anchor init/build/test/deploy), IDL generation, and TypeScript client generation. Reduces program code by ~80% compared to native development.

02
Modelo de Programación

Cuenta

The fundamental data storage unit on Solana. Every piece of state is stored in an account identified by a 32-byte public key. Accounts hold a lamport balance, an owner program, a data byte array (up to 10MB), and an executable flag. Only the owning program can modify an account's data, but anyone can credit lamports to it.

03
Modelo de Programación

Instrucción

A single operation within a transaction that invokes a program. An instruction specifies: (1) the program ID to call, (2) an array of account metas (pubkey, is_signer, is_writable), and (3) an opaque data byte array. Programs decode the instruction data to determine which operation to perform.

04
Modelo de Programación

Dirección Derivada de Programa (PDA)

An account address derived deterministically from a program ID and a set of seeds, with no corresponding private key. PDAs are created by finding a pubkey that does NOT lie on the Ed25519 curve (using a bump seed). Since there's no private key, only the deriving program can sign for the PDA via invoke_signed, making PDAs ideal for program-controlled state.

05
Modelo de Programación

Invocación Entre Programas (CPI)

A mechanism for one program to call another program's instructions during execution. CPIs enable composability—e.g., a DeFi program can call the Token Program to transfer tokens. CPI depth is limited to 4 levels. The caller passes accounts and instruction data, and the callee runs with the same transaction context.

06
Modelo de Programación

IDL (Lenguaje de Definición de Interfaz)

Interface Definition Language—a JSON specification that describes a program's instructions, accounts, types, and error codes. Anchor auto-generates the IDL from the program source code. Client libraries (TypeScript, Python) use the IDL to serialize/deserialize instruction data and accounts, enabling type-safe interaction without manual encoding.

07
Modelo de Programación

Discriminador

An 8-byte identifier prepended to account data and instruction data to distinguish types. Anchor computes it as the first 8 bytes of `sha256('account:<AccountName>')` for accounts and `sha256('global:<function_name>')` for instructions. Discriminators prevent type cosplay attacks by ensuring data is deserialized as the correct type.

Cómo usar esta ruta

Sigue los términos en orden y profundiza cuando haga falta.

La ruta está ordenada para reducir cambio de contexto. Empieza arriba, abre cada término y usa los enlaces relacionados cuando un concepto necesite más profundidad.

1

Lee la ruta en orden en lugar de saltar aleatoriamente entre términos.

2

Abre las páginas de término siempre que un concepto necesite definiciones, aliases y enlaces relacionados.

3

Usa términos relacionados y continuación por categoría para profundizar sin perder el contexto de la ruta.

Ruta

Sigue

Estas entradas viven junto al término actual y ayudan a que la página se sienta parte de un grafo de conocimiento más amplio en lugar de un callejón sin salida.

Ruta siguiente

Ruta de Runtime

Entiende cómo Solana ejecuta trabajo antes de optimizar o debuggear.