---
title: "Cómo aprender desarrollo en Solana"
description: "Aprende cómo funciona el desarrollo en Solana, los conceptos clave del desarrollo en Solana y cómo convertirte en desarrollador de Solana"
---

# Cómo aprender desarrollo en Solana

Este artículo explicará por qué el desarrollo en Solana es adecuado para crear programas y [apps](https://www.alchemy.com/dapps/top/defi-dapps), presentará una hoja de ruta para aprender desarrollo en Solana y, por último, responderá preguntas sobre el desarrollo en Solana. Al terminar este artículo, entenderás cómo convertirte en desarrollador de Solana y contarás con recursos para ayudarte a aprender desarrollo en Solana.

## **4 razones para aprender desarrollo en Solana**

Solana es una plataforma blockchain rápida y escalable diseñada específicamente para aplicaciones descentralizadas. Permite a los desarrolladores construir y desplegar apps de forma rápida y eficiente, lo que la convierte en una plataforma ideal para crear proyectos nuevos e innovadores.

¿Interesado en profundizar más? Aquí hay algunas razones adicionales por las que el desarrollo en Solana es una buena opción para crear dApps.

### **1. Alta escalabilidad**

Solana es conocida por su alta escalabilidad, con la capacidad de procesar decenas de miles de transacciones por segundo. Esto la convierte en una plataforma atractiva para construir apps que necesitan manejar un gran volumen de transacciones, como exchanges descentralizados o juegos.

### **2. Funciones avanzadas**

Solana ofrece varias funciones avanzadas que se pueden aprovechar para construir apps innovadoras, como soporte para smart contracts, proof of history (PoH) para el procesamiento de transacciones seguro y rápido, y soluciones de Layer 2 como Optimistic Rollup.

### **3. Ecosistema sólido**

Un [ecosistema](https://www.alchemy.com/ecosystem/solana) próspero de desarrolladores, inversionistas y emprendedores, lo que la convierte en un lugar interesante para cualquiera interesado en el espacio blockchain. Al aprender desarrollo en Solana, puedes formar parte de esta comunidad y contribuir al crecimiento y desarrollo de la plataforma.

### **4. Demanda creciente**

A medida que aumenta la demanda de apps construidas en Solana, habrá una demanda correspondiente de desarrolladores con experiencia en desarrollo en Solana. Al aprender desarrollo en Solana, puedes posicionarte como un activo valioso para empresas que buscan construir apps en la plataforma.

## **Cómo convertirte en desarrollador de Solana**

Algunos de los conceptos más importantes que los desarrolladores deben aprender en la [hoja de ruta del desarrollador de Solana](https://vitto.cc/the-complete-solana-development-roadmap/) son:

1. Programas de Solana
1. Transacciones
1. Modelo de cuentas de Solana
1. Lenguajes de programación de Solana
1. Configurar el entorno de desarrollo de Solana
1. Usar frameworks de desarrollo de Solana
1. Desarrollar programas
1. Desplegar programas
1. Probar programas
1. Construir apps

### **1. Aprende los programas de Solana**

Los programas de Solana son smart contracts en la blockchain de Solana que contienen código ejecutable y se pueden usar para interpretar instrucciones dentro de transacciones en la blockchain. Pueden ser programas nativos, que están integrados en el núcleo de la blockchain de Solana y solo pueden actualizarse como parte de las actualizaciones de software de la blockchain, o programas on-chain, que son programas escritos por usuarios que se pueden desplegar y actualizar directamente en la blockchain por sus respectivos propietarios.

Los programas de Solana se ejecutan en el runtime Sealevel, que es el modelo de procesamiento paralelo de la blockchain de Solana que ayuda a habilitar sus altas velocidades de transacción. Los programas se consideran sin estado (stateless) ya que solo contienen código compilado, y pueden ser actualizados por sus propietarios. También pueden poseer otras cuentas y pueden leer o acreditar cualquier otra cuenta, pero solo pueden cambiar los datos o debitar cuentas que poseen.

### 2. Aprende las transacciones de Solana

En Solana, las transacciones se envían al cluster y son procesadas por el runtime de Solana. Las transacciones contienen un arreglo compacto de firmas, seguido de un mensaje. El mensaje incluye un encabezado, un arreglo compacto de direcciones de cuenta, un blockhash y un arreglo compacto de instrucciones. Las instrucciones especifican un único programa, un subconjunto de las cuentas de la transacción que deben pasarse al programa, y un arreglo de bytes de datos que se pasa al programa.

El programa interpreta el arreglo de datos y opera sobre las cuentas especificadas por las instrucciones. Los programas pueden retornar exitosamente o con un código de error, lo que provoca que toda la transacción falle. Las transacciones se verifican por el número de firmas y que cada firma haya sido firmada por la clave privada correspondiente a la clave pública en el mismo índice del arreglo de direcciones de cuenta del mensaje.

### 3. Aprende el modelo de cuentas de Solana

El runtime Sealevel de Solana tiene un [modelo de cuentas](https://www.alchemy.com/overviews/solana-account-model) único en comparación con la Máquina Virtual de Ethereum (EVM). En Sealevel, cualquier cuenta puede almacenar estado, a diferencia de Ethereum, donde solo los smart contracts pueden almacenar estado en su almacenamiento. En Solana, el estado de un smart contract se almacena en otras cuentas, y cada cuenta asigna un contrato propietario para tener control exclusivo sobre las mutaciones de estado.

**Sealevel** tiene dos tipos de cuentas: ejecutables y no ejecutables.

1. **Cuentas ejecutables**: son inmutables y pueden almacenar su propio bytecode ejecutable o una dirección proxy de una cuenta con bytecode ejecutable mutable
1. **Cuentas no ejecutables**: almacenan datos y pueden ser modificadas por su propietario, pero los cambios realizados por cualquier otro programa serán revertidos

En Sealevel, las cuentas ejecutables almacenan una clave pública que identifica la cuenta y el bytecode BPF del programa que se ejecutará cuando se llame a la cuenta, y las cuentas no ejecutables almacenan un balance y datos.

### 4. Aprende los lenguajes de programación de Solana

Los lenguajes de programación usados para el desarrollo en Solana incluyen [Rust](https://www.alchemy.com/overviews/solidity-vs-rust), C y C++. Estos lenguajes se usan para construir programas, también conocidos como smart contracts, que se despliegan en la blockchain de Solana y se ejecutan a través del Runtime de Solana.

Aunque entender estos lenguajes y crear programas no es un requisito para construir en Solana, los desarrolladores pueden optar por aprenderlos para crear sus propios programas. Solana también ofrece una API JSON RPC y varios SDKs, incluyendo solana-[web3.js](https://www.alchemy.com/dapps/web3-js) y Java, C#, Python, Go, Swift, Dart-Flutter y Kotlin, que permiten la creación de aplicaciones descentralizadas que se asemejan a apps web o móviles tradicionales y que interactúan con APIs centralizadas.

### **5. Aprende a configurar tu entorno de desarrollo de Solana**

Para escribir un programa de Solana, los desarrolladores necesitarán construir y probar sus programas en un entorno de desarrollo local usando las [herramientas centrales de desarrollo de Solana](https://www.alchemy.com/overviews/solana-developer-tools), como la interfaz de línea de comandos y el conjunto de herramientas de Solana.

Si recién estás comenzando, sigue esta [guía paso a paso para configurar tu entorno local](https://www.alchemy.com/docs/reference/solana-api-quickstart).

### **6. Aprende los frameworks de desarrollo de Solana**

Los dos principales frameworks de desarrollo para construir aplicaciones en Solana son Anchor y Seahorse. Anchor abstrae gran parte de la complejidad de desarrollar aplicaciones nativamente en Rust. Seahorse es similar a Anchor, pero es un [framework de desarrollo de Solana para desarrolladores de Python](https://www.alchemy.com/overviews/solana-seahorse).

### **7. Aprende a desarrollar un programa de Solana**

En este punto de la hoja de ruta, tendrás suficiente conocimiento conceptual sobre los fundamentos de Solana y las diferentes herramientas que puedes usar para construir aplicaciones. Para aprender a escribir un programa, sigue un [tutorial introductorio de "Hello World" en Solana](https://www.alchemy.com/docs/hello-world-solana-program), o consulta uno de los muchos recursos gratuitos para desarrolladores.

#### **1. Solana Developers**

[Solana Developers](https://solana.com/developers) es un recurso proporcionado por el equipo de Solana para desarrolladores interesados en aprender y construir sobre la plataforma blockchain de Solana. El sitio web ofrece una gran cantidad de información y recursos, incluyendo documentación, tutoriales y soporte de la comunidad, para ayudar a los desarrolladores a comenzar con el desarrollo en Solana.

#### **2. Solana Docs**

[Solana Docs](https://solana.com/developers) es una colección de recursos y documentación proporcionada por Solana. Esto incluye las funciones de la plataforma, detalles técnicos y guías sobre cómo construir y desplegar apps en Solana.

#### **3. Solana Cookbook**

[Solana Cookbook](https://solanacookbook.com/core-concepts/accounts.html#facts) es un recurso para desarrolladores que ofrece información y ejemplos para construir aplicaciones en la blockchain de Solana. Está organizado en diferentes secciones que cubren conceptos centrales, guías y referencias para el desarrollo en Solana. Está abierto a contribuciones de nuevos desarrolladores y ofrece lineamientos para contribuir.

#### **4. Solana Blockchain Developer Bootcamp**

El [Solana Blockchain Developer Bootcamp](https://chain.link/bootcamp/solana-2022-on-demand) está liderado por Solana y [Chainlink](https://www.alchemy.com/dapps/chainlink) para que los participantes aprendan sobre las particularidades de la arquitectura y el modelo de programación de Solana. Esto incluye las bases del desarrollo en Solana usando Rust para construir, desplegar, probar e interactuar con la blockchain de Solana. Los desarrolladores podrán aprender directamente con el apoyo de equipos de Solana, Chainlink y otros para construir apps en Solana y comenzar un nuevo camino.

### 8. Aprende a desplegar un programa de Solana

Una vez que tu código esté completo, puedes compilarlo en bytecode BPF y crear un archivo .so que se puede desplegar en la blockchain.

Para [desplegar tu programa](https://docs.solana.com/cli/deploy-a-program), puedes usar el comando solana program deploy, solana program deploy seguido de la ruta a tu archivo .so compilado. Esto enviará una transacción a la blockchain y desplegará tu programa en la dirección especificada. Un despliegue exitoso mostrará el program id.

### **9. Aprende a probar un programa de Solana**

Solana ofrece varias herramientas para depurar y probar programas, incluyendo el crate solana-program-test, que permite probar y depurar programas de forma interactiva usando un entorno de runtime local. El crate solana-validator permite pruebas más robustas en un nodo validador local, mientras que la herramienta de línea de comandos solana-test-validator permite probar y ejecutar transacciones desde la línea de comandos para aplicaciones en Rust o Javascript/Typescript.

Se recomienda usar la macro msg! en el programa para registrar información durante el proceso de prueba y depuración, pero eliminarla una vez que el programa sea estable para evitar exceder el presupuesto de Compute Unit.

También es posible probar programas usando un nodo validador local, lo que permite pruebas más completas que se asemejan más al comportamiento del programa una vez desplegado en la red de Solana.

### **10. Aprende a construir apps en Solana**

Para construir una dapp en Solana, necesitarás familiarizarte con el [ecosistema de Solana](https://www.alchemy.com/dapps/ecosystem/solana) y aprender a interactuar con la blockchain. Para construir apps en Solana, Solana ofrece numerosas APIs y SDKs que permiten a los desarrolladores construir apps usando lenguajes de programación populares como JavaScript, Java, Python y Go. Puedes acceder a estos SDKs en la página de Solana Developers.

## **Comienza a desarrollar en Solana**

Ahora que conoces los pasos para aprender desarrollo en Solana, el siguiente paso es registrarte para obtener una [cuenta de desarrollador de Solana gratuita](https://dashboard.alchemy.com/signup/?a=learn-solana-development) con Alchemy, ¡y empezar a construir!
