Coder Social home page Coder Social logo

samples_rust's Introduction

Samples RUST

  • array_type.
    • Uso de arrays
    • Mutable / immutable
    • Lectura de parámetros por teclado
  • cargo_workspace.
    • Creación de workspace con Cargo
  • clone.
    • Clonado de variable
  • constants
    • Uso de mut (mutable)
  • control_flow
    • Uso de variables mut
    • Uso de bucle loop
    • Contadores y ruptura de bucles
    • Distinct
    • Else if
    • Infinite loop
    • Loop con retorno
    • Loop con labels
    • While
    • Loop over collections
    • Reverse loop
  • closures. Proyecto de ejemplo con closures.
  • closures_2.
    • Análisis de closures.
    • Closures equivalentes, con y sin anotaciones. Inferencia de tipos.
  • closures_3.
    • Captura de referencias y valores in/out en closures (FnMut, FnOnce y Fn)
  • enums
  • errors_recoverable
    • Uso de Result <T, E> para obtención de mensajes de error
    • Uso de método unwrap_or_else para evitar match anidados
  • errors_unrecoverable
    • Invocación de macro panic!
    • Asignación de env var RUST_BACKTRACE=full para mostrado de traza completa
    • Closures
  • floating_point. Variables float
  • functions. Declaración e invocaciones
  • functions_with_return
  • guessing_game
    • Importacion de librerías
    • Generador de números aleatorios
    • Lectura de entradas de teclado
    • Adición de dependencias en Cargo.toml
  • guessing_game_1
    • Shadowing: reutilización de variables
    • Conversión de String en tipos numéricos
  • guessing_game_2
    • Inferencia de tipos en comparación de variables
  • guessing_game_3
    • match
    • Instrucciones en caso de match
    • match: Result Ok y Err
  • hash_maps.
  • hash_maps_scopes.
    • Utilización de variables fuera de ámbito
    • Inserción si key no existe
    • Borrado / sustitución de elementos
  • if_let. Uso y comparaciones con Enums
  • iterators.
    • Creación y consumo de iterators. Mutabilidad de variables
    • Closures con iterators y consumo
  • lifetimes. Ámbito de variables
  • lifetimes_functions. Ámbito de variables en su utilización con funciones y referencias
  • lifetimes_structs. Ámbito de variables en structs
  • lifetimes_elision.
    • Análisis de lifetimes en funciones
    • Análisis de reglas del compilador para asignación de lifetimes
  • lifetimes_static.
    • Uso de lifetime 'static
    • Análisis de lifetimes en genéricos y traits unidos
  • match_control_flow
    • Uso de None y Some (null no existe)
    • match
  • methods
    • Instrucciones para hacer Debug
    • Struct, impl y contextos
    • Parámetro self
    • Porqué usar métodos en lugar de funciones
  • methods_several_params
    • Múltiples implementaciones del mismo struct
  • minigrep. Grep project that contains several concepts:
    • Organizing code
    • Using vectors and strings
    • Handling errors
    • Using traits and lifetimes where appropriate
    • Writing tests
    • Closures, iterators and trait objects.
  • minigrep_2.
  • minigrep_3. Separation of Concerns for Binary Projects
  • minigrep_4.
    • Manejo de Err messages amigables
    • Uso de unwrap_or_else
    • Introducción a closures
  • minigrep_5.
    • Uso de Box para manejar errores de forma genérica
    • Uso de operador ? en lugar de método expect
    • Uso de retorno Ok(()) cuando no hay nada específico que devolver
  • minigrep_6. Evolución de código a una librería. Cambio de ámbito de funciones.
  • minigrep_tdd.
    • Uso de #[allow(unused_variables)]
    • Definición de lifetimes
  • minigrep_env.
    • Uso de variables de entorno (std::env) a partir de proyecto minigrep_tdd
  • minigrep_errs.
    • Evolución de minigrep_env utilizando standard_out y standard_error
  • minigrep_iterator.
    • Evolución de minigrep_env utilizando iterators
  • numeric_operations. Suma, división, resta, multiplicación
  • ownership
    • Move
    • Proceso en memoria
    • Drop function (variable sale de scope)
    • Punteros
    • Limpieza de variables
    • Uso de copy
  • ownership_functions
    • Entrada / salida de scope de variables
    • Invocación automática de Drop
  • ownership_mutable_references
    • Variables mutables / immutables
    • Referencias a variables mut
    • Creación de nuevos ámbitos
    • Scope de referencias
    • Punteros colgantes y variables borrowed (prestadas)
  • ownership_parameters
    • Retorno de valores múltiples
  • ownership_references
    • Referencias (punteros)
    • Parámetros como referencia
    • Mutable / immutable
    • Owner de un valor / Referencia al valor (puntero)
  • ownership_return_scope
    • Owner de una variable
    • Casuística de invocación automática drop
    • Scope de variables de retorno
  • profiles. Uso de profiles disponibles en Cargo.
  • project_1
    • Invocación a println
    • Llamada a macros o a functions
  • project_2. Ejemplo de proyecto
  • pub_use
    • Importación de módulos en Cargo.toml
    • Uso de pub use en lib.rs para utilización pública de un módulo descrito
    • Importación del módulo desde main.rs
  • restaurant
    • Creación y uso de módulos. Module tree de ejemplo
  • restaurant_2. Creación de crate (lib) e invocación a módulos de librería
  • restaurant_3. Librería
    • Struct con campos públicos y privados
    • Módulos e implementación de struct
  • restaurant_4. Enum pública / privada en módulo
  • several_modules.
    • Creación de lib con módulo.
    • Importación del módulo front_of_house desde lib.rs
    • Estructura de folders para la visibilidad de módulo y función.
  • shadowing.
    • Uso de let
    • Reutilización de variables
    • Ámbitos con curly brackets
  • slices
    • Slices como tipos de referencia en lugar de referencia a Collections completas
  • slices_int. Uso de slices con tipos int
  • slices_parameters.
    • Uso de variables / referencias y slices equivalentes
  • smart_pointers_box
    • Smart Pointer: Box < T >
  • smart_pointers_deref
    • Referenciar / Dereferenciar punteros (deref)
    • Deref Coercion
  • statements_expressions
    • No retornan values
    • Uso de sentencias / funciones
  • strings
  • strings_iterating.
  • strings_slicing. Segmentación de un String
  • struct_dgb_macro_print
    • Uso de debug. Retorno del owner de values
  • struct_full_example. Ejemplo de un programa que calcula el área de un rectángulo
  • struct_full_example_structs
    • Debug
    • Uso de referencias y evitar move
  • struct_full_example_tuples. Uso de tuplas
  • struct_init. Uso de structs
  • struct_tuple. Structs con y sin campos
  • tests. Uso general de tests
  • tests_order.
    • Ejecución de tests en orden pretendido, ignore de otros, mostrado de output,etc
  • tests_panic. Captura de panic! en tests
  • test_panic_2. Captura de mensajes de error de la app y mostrado de panic!
  • test_panic_3. Uso de Result en lugar de panic!
  • traits. Trait con importación de crates.
  • traits_default_implementation. Trait con implementación de métodos por default
  • typle_type
    • Uso de diferentes tipos en tuplas
    • Desestructuración de tuplas
  • use_keyword
    • crates
    • Referencia de tipos con el mismo nombre (importaciones)
    • Módulos e invocación de funciones de módulos
  • variables. Tipos de variables
  • vectors. Declaración y uso de vectores
  • vectors_enum. Uso de enums para construir vectores con elementos de distinto tipo

Contributor Covenant Contributor Covenant Contributor Covenant

samples_rust's People

Contributors

jonatanvicente avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.