Comience con Rust: Installation y su primera herramienta CLI: una guía para principiantes

Un lenguaje de programación popular en los últimos años, ya que combina seguridad y alto rendimiento y puede usarse en muchas aplicaciones. Combina las características positivas de C y C ++ con la sintaxis moderna y la simplicidad de otros lenguajes de programación como Python. En este artículo, analizaremos paso a paso la instalación de Rust en varios sistemas operativos y configuraremos una interfaz de línea de comandos simple para comprender la estructura y la funcionalidad de Rust.

Instalación de Rust – paso a paso

Independientemente del sistema operativo, es bastante fácil instalar Rust gracias al instalador oficial rustupque está disponible de forma gratuita en el Óxido sitio web. Esto significa que la instalación solo toma unos pocos pasos y solo difiere ligeramente para los diversos sistemas operativos.

Instalación de óxido en Windows

En Windows, el instalador controla completamente la instalación, y puede seguir los pasos a continuación:

  1. Vaya a la subsección de “instalar” en el sitio web oficial de Rust (https://www.rust-lang.org/tools/install) y descargue el rustup-init.exe archivo allí. El sitio web reconoce el sistema operativo subyacente para que las sugerencias apropiadas para el sistema utilizado se realicen directamente.
  2. Tan pronto como se complete la descarga, el rustup-init.exe el archivo se puede ejecutar. Luego se abre una línea de comando con varias instrucciones de instalación.
  3. Presione la tecla ENTER para ejecutar la instalación estándar para instalar Rust. Esto también incluye las siguientes herramientas:
    • rustc es el compilador, que compila el código y verifica los errores antes de la ejecución.
    • cargo Es la herramienta de gestión de construcción y paquetes de Rust Rust.
    • rustup es el administrador de la versión.

Después de una instalación exitosa, Rust debe estar automáticamente disponible en su PATH. Esto se puede verificar fácilmente en PowerShell o CMD utilizando los siguientes comandos:

rustc --version cargo --version

Si se muestran “Rustc” y “Cargo” en la salida con los números de versión respectivos, entonces la instalación fue exitosa. Sin embargo, si no se encuentra el comando, puede deberse a las variables de entorno. Para verificarlos, puede seguir la ruta “Esta PC -> Propiedades -> Configuración avanzada del sistema -> Variables de entorno”. Una vez allí, debe asegurarse de que el camino hacia el óxido, por ejemplo, “c: \ users \ username \ .cargo \ bin”, esté presente en el PATH variable.

Instalación de Rust en Ubuntu/Linux

En Linux, Rust se puede instalar completamente a través del terminal sin tener que descargar nada del sitio web de Rust. Para instalar Rust, se deben realizar los siguientes pasos:

  1. Abra el terminal, por ejemplo, con la combinación clave Ctrl + Alt + T.
  2. Para instalar Rust, se ejecuta el siguiente comando:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

3. Luego se le preguntará si la instalación debe iniciarse. Esto se puede confirmar ingresando “1” (predeterminado), por ejemplo. Luego se descargan todos los paquetes requeridos y el entorno está configurado.
4. Puede que tenga que establecer la ruta manualmente. En este caso, puede usar este comando, por ejemplo:

source $HOME/.cargo/env

Una vez que se haya completado la instalación, puede verificar si todo ha funcionado correctamente. Para hacer esto, puede mostrar explícitamente las versiones de Rustc y carga:

rustc --version cargo --version

Instalación de óxido bajo macOS

Hay varias formas de instalar Rust en MacOS. Si ha instalado HomeBrew, simplemente puede usar esto para instalar Rust ejecutando el siguiente comando:

brew install rustup rustup-init

Alternativamente, también puede instalar óxido directamente usando este script:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Durante la instalación, se le preguntará si desea ejecutar la instalación estándar. Simplemente puede confirmar esto presionando la tecla ENTER. Independientemente de la variante seleccionada, puede verificar la instalación mostrando la versión de Rust para asegurarse de que todo haya funcionado:

rustc --version 
cargo --version

Creando un proyecto de óxido con carga

Durante la instalación de Rust, probablemente ya se haya encontrado con el cargo programa. Este es el administrador oficial de paquetes y el sistema de construcción de óxido y es comparable a pip en Python. cargo Realiza las siguientes tareas, entre otras:

  • Inicialización de un proyecto
  • Gestión de dependencias
  • Compilando el código
  • Ejecución de pruebas
  • Optimización de compilaciones

Esto le permite administrar proyectos completos en Rust sin tener que lidiar con complicados scripts de construcción. También te ayuda a configurar nuevos proyectos de manera rápida y fácil, que luego se pueden llenar de vida.

Para nuestro ejemplo, crearemos un nuevo proyecto. Para hacer esto, vamos a la terminal y navegamos a una carpeta en la que queremos guardarla. Luego ejecutamos el siguiente comando para crear un nuevo proyecto de óxido:

cargo new json_viewer --bin

Llamamos a este proyecto json_viewer Porque estamos construyendo una herramienta CLI que se pueda usar para abrir y procesar Json archivos. El --bin La opción indica que queremos crear un programa ejecutable y no una biblioteca. Ahora debería poder ver la siguiente estructura de carpeta en su directorio después de ejecutar el comando:

json_viewer/ 
├── Cargo.toml # Project configuration 
└── src 
     └── main.rs # File for Rust Code

Cada nuevo proyecto tiene esta estructura. Cargo.toml Contiene todas las dependencias y metadatos de su proyecto, como el nombre, las bibliotecas utilizadas o la versión. El src/main.rspor otro lado, más tarde contiene el código de óxido real, que luego define los pasos que se ejecutan cuando se inicia el programa.

Primero, podemos definir una función simple aquí que genera una salida en el terminal:

fn main() { 
     println!("Hello, Rust CLI-Tool!"); 
}

El programa puede llamarse fácilmente desde la terminal utilizando cargo:

cargo run

Para que este llamado funcione, debe asegurarse de que esté en el directorio principal del proyecto, es decir, donde el Cargo.toml se almacena el archivo. Si todo se ha configurado y ejecutado correctamente, recibirá esta salida:

Hello, Rust CLI-Tool!

Con estos pocos pasos, acaba de crear su primer proyecto de óxido exitoso, en el que podemos construir en la siguiente sección.

Construyendo una herramienta CLI: Parser JSON Simple

Ahora comenzamos a llenar el proyecto con la vida y crear un programa que pueda leer archivos JSON y generar su contenido en la terminal de manera estructurada.

El primer paso es definir las dependencias, es decir, las bibliotecas que usaremos en el curso del proyecto. Estos se almacenan en el Cargo.toml archivo. En Rust, las llamadas cajas son comparables a las bibliotecas o módulos que ofrecen ciertas funcionalidades predefinidas. Por ejemplo, pueden consistir en un código reutilizable escrito por otros desarrolladores.

Necesitamos las siguientes cajas para nuestro proyecto:

  • serde habilita la serialización y la deserialización de formatos de datos como Json o Yaml.
  • serde_jsonpor otro lado, es una extensión que se desarrolló específicamente para trabajar con archivos JSON.

Para que su proyecto acceda a estas cajas, deben almacenarse en el Cargo.toml archivo. Esto se ve así inmediatamente después de crear el proyecto:

[package] 
name = "json_viewer" 
version = "0.1.0" 
edition = "2021" 

[dependencies]

Ahora podemos agregar las cajas requeridas en el [dependencies] sección. Aquí también definimos la versión para ser utilizada:

[dependencies] 
serde = "1.0" 
serde_json = "1.0"

Para garantizar que las dependencias adicionales estén disponibles en el proyecto, primero deben descargarse y construir. Para hacer esto, el siguiente comando terminal se puede ejecutar en el directorio principal:

cargo build

Durante la ejecución, cargo Busca las cajas del repositorio de óxido central.io para las dependencias y las versiones especificadas para descargarlas. Estas cajas se compilan junto con el código y almacenan en caché para que no tengan que descargar nuevamente para la próxima compilación.

Si estos pasos han funcionado, ahora estamos listos para escribir el código de óxido real que abre y procesa el archivo JSON. Para hacer esto, puedes abrir el src/main.rs archivo y reemplace el contenido existente con este código:

use std::fs;
use serde_json::Value;
use std::env;

fn main() {
    // Check arguments
    let args: Vec<String> = env::args().collect();
    if args.len() < 2 {
        println!(“Please specify the path to your file.”);
        return;
    }

    // Read in File
    let file_path = &args[1];
    let file_content = fs::read_to_string(file_path)
        .expect(“File could not be read.”);

    // Parse JSON
    let json_data: Value = serde_json::from_str(&file_content)
        .expect(“Invalid JSON format.”);

    // Print JSON
    println!(" JSON-content:\n{}”, json_data);
}

El código sigue estos pasos:

  1. Verifique los argumentos:
    • Leemos los argumentos de la línea de comandos a través de env::args().
    • El usuario debe especificar la ruta al archivo JSON al inicio.
  2. Lea el archivo:
    • Con la ayuda de fs::read_to_string()el contenido del archivo se lee en una cadena.
  3. PARSE JSON:
    • La caja serde_json Convierte la cadena en un objeto de óxido con el valor de tipo.
  4. Salida de formato:
    • El contenido se sale legiblemente en la consola.

Para probar la herramienta, puede, por ejemplo, crear un archivo de prueba en el directorio del proyecto bajo el nombre examples.json:

{
  "name": "Alice",
  "age": 30,
  "skills": ["Rust", "Python", "Machine Learning"]
}

El programa se ejecuta luego usando cargo run y la ruta al archivo JSON también se define:

cargo run ./example.json

Esto nos lleva al final de nuestro primer proyecto en Rust y hemos creado con éxito una herramienta CLI simple que puede leer archivos JSON y llevarlos a la línea de comandos.

Esto es lo que debes llevar contigo

  • Instalar Rust es rápido y fácil en muchos sistemas operativos. Los otros componentes que se requieren ya están instalados.
  • Con la ayuda de cargose puede crear un proyecto vacío directamente, que contiene los archivos necesarios y en el que puede comenzar a escribir código de óxido
  • Antes de comenzar Programacióndebe ingresar las dependencias y descargarlas utilizando el comando de compilación.
  • Ahora que todo está configurado, puede comenzar con la programación real.