{"id":771,"date":"2026-05-12T14:16:03","date_gmt":"2026-05-12T14:16:03","guid":{"rendered":"https:\/\/blogs.ua.es\/jpm33\/?p=771"},"modified":"2026-05-12T14:16:03","modified_gmt":"2026-05-12T14:16:03","slug":"mi-primer-proyecto-rust","status":"publish","type":"post","link":"https:\/\/blogs.ua.es\/jpm33\/2026\/05\/12\/mi-primer-proyecto-rust\/","title":{"rendered":"Mi primer proyecto Rust!"},"content":{"rendered":"\n<p>He decido empezar este proyecto porque buscaba explorar las mejoras de este lenguaje que ofrece la velocidad de C++ pero con la seguridad de memoria que evita esos errores catastr\u00f3ficos de segmentaci\u00f3n (segmentation fault!!!) . Rust no tiene recolector de basura (garbage collector), lo que lo hace muy eficiente, y su sistema de tipos es como tener un mentor revisando tu c\u00f3digo en tiempo real: compila, seguramente funciona.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Instalar Rust<\/h2>\n\n\n\n<p>En cualquier Linux:<\/p>\n\n\n\n<p><\/p>\n\n\n\n<pre><code>curl --proto '=https' --tlsv1.2 -sSf https:\/\/sh.rustup.rs | sh<\/code><\/pre>\n\n\n\n<p>O, en fedora:<\/p>\n\n\n\n<pre><code>sudo dnf install -y rust cargo<\/code><\/pre>\n\n\n\n<p>Instalar Rust en cualquier Linux:<\/p>\n\n\n\n<pre><code>curl --proto '=https' --tlsv1.2 -sSf https:\/\/sh.rustup.rs | sh<\/code><\/pre>\n\n\n\n<p>Esto entre otras cosas te instalar\u00e1 cargo. Cargo: la herramienta de Rust para compilar y gestionar paquetes. Cuando instalas Rustup tambi\u00e9n obtienes la \u00faltima versi\u00f3n estable de la herramienta de compilaci\u00f3n y gesti\u00f3n de paquetes de Rust, conocida como Cargo. Cargo hace un mont\u00f3n de cosas:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>construye tu proyecto con cargo build<\/li>\n\n\n\n<li>ejecuta tu proyecto con cargo run<\/li>\n\n\n\n<li>ejecuta los tests de tu proyecto con cargo test<\/li>\n\n\n\n<li>genera la documentaci\u00f3n de tu proyecto con cargo doc<\/li>\n\n\n\n<li>publica una biblioteca en crates.io con cargo publish<\/li>\n<\/ul>\n\n\n\n<p><strong>Construir Hola Mundo<\/strong><\/p>\n\n\n\n<p>Vamos a ver f\u00e1cil como crear, compilar y ejecutar Hola Mundo:<\/p>\n\n\n\n<pre><code>cargo new hello-world\ncd hello-world<\/code><\/pre>\n\n\n\n<p>si miramos src\/main.rs:<\/p>\n\n\n\n<pre><code>fn main() {\n println!(\"Hello, world!\");\n}<\/code><\/pre>\n\n\n\n<p>Ejecutamos y listo:<\/p>\n\n\n\n<pre><code>$ cargo run\n Compiling hello-world v0.1.0 (\/home\/slimbook\/proyectos\/Formacion\/101-rust\/hello-world)\n Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.23s\n Running `target\/debug\/hello-world`\nHello, world!<\/code><\/pre>\n\n\n\n<p><strong>ENLACES<\/strong><br><a href=\"https:\/\/rust-lang.org\/es\/learn\/get-started\/\">https:\/\/rust-lang.org\/es\/learn\/get-started\/<\/a><br><br><\/p>\n","protected":false},"excerpt":{"rendered":"<p>He decido empezar este proyecto porque buscaba explorar las mejoras de este lenguaje que ofrece la velocidad de C++ pero con la seguridad de memoria que evita esos errores catastr\u00f3ficos de segmentaci\u00f3n (segmentation fault!!!) . Rust no tiene recolector de &hellip; <a href=\"https:\/\/blogs.ua.es\/jpm33\/2026\/05\/12\/mi-primer-proyecto-rust\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":3080,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[135,374,236762],"tags":[236729,236718,236764],"class_list":["post-771","post","type-post","status-publish","format-standard","hentry","category-linux","category-programacion","category-rust","tag-linux","tag-programacion-2","tag-rust"],"_links":{"self":[{"href":"https:\/\/blogs.ua.es\/jpm33\/wp-json\/wp\/v2\/posts\/771","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.ua.es\/jpm33\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.ua.es\/jpm33\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.ua.es\/jpm33\/wp-json\/wp\/v2\/users\/3080"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.ua.es\/jpm33\/wp-json\/wp\/v2\/comments?post=771"}],"version-history":[{"count":4,"href":"https:\/\/blogs.ua.es\/jpm33\/wp-json\/wp\/v2\/posts\/771\/revisions"}],"predecessor-version":[{"id":783,"href":"https:\/\/blogs.ua.es\/jpm33\/wp-json\/wp\/v2\/posts\/771\/revisions\/783"}],"wp:attachment":[{"href":"https:\/\/blogs.ua.es\/jpm33\/wp-json\/wp\/v2\/media?parent=771"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.ua.es\/jpm33\/wp-json\/wp\/v2\/categories?post=771"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.ua.es\/jpm33\/wp-json\/wp\/v2\/tags?post=771"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}