Rust Language Schulung

Alle Preise zzgl. MwSt

Last updated

Kurs Code

rust3d

Dauer

21 hours (üblicherweise 3 Tage inklusive Pausen)

Überblick

Rust ist eine Programmiersprache für Systeme, die sich auf Sicherheit, Speicher, Geschwindigkeit und Parallelität konzentriert.

Machine Translated

Schulungsübersicht

# Day 1

 

- Introduction

- Installation

  - rustup

  - cargo, rustc

  - crates.io 

- create a first project

  - creating a library or executable

  - Cargo.toml

  - Cargo.lock

  - exploring the source

  - cargo tools

  - hello world program

- Basic syntax

  - functions

  - variables

  - types

  - structs and enums

  - control flow: if, loops, pattern matching

  - exercise: the guessing game

- Ownership

  - moves

  - mutability

  - borrowing

  - lifetimes

  - exercise: fixing borrow checker compilation errors

- Modules

  - importing code

  - visibility

  - source code organisation

- Traits and generics

  - methods

  - generic types, functions and methods

  - type aliases

- Standard library

  - Option

  - Result

  - collections: Vec, HashMap

  - iterators

  - exercise: start building a small in memory database

 

# Day 2

 

- Tools

  - importing crates

  - unit tests

  - benchmarks

  - fuzzing

  - documentation

  - attributes

  - exercise: integrate unit tests, CI and other tools for the database example

- Strings and slices

  - String

  - &str

  - &[u8]

- Iterators

- Closures

  - exercise: start implementing queries

- Destructuring

  - if let

- API design

  - Usual traits

    - Clone and Copy

    - Debug and Display

    - PartialEq, Eq

    - Drop

  - Static VS dynamic dispatch

  - Associated types

  - Deref

  - Into

- I/O

  - exercise: add optional file storage for the database

- Concurrency

  - threads

  - channels

  - Send, Sync

  - mutability

  - Arc, Mutex

  - exercise: multiple clients querying the database while storing regularly

 

# Day 3

 

- FFI

  - repr(C)

  - exporting functions and structures

  - unsafe

  - Box

  - rusty-cheddar and rust-bindgen

  - linking

  - cargo-vendor

  - exercise: making a C interface for our in memory database

- common libraries and interfaces (adaptable depending on what the students want to focus on)

  - docs.rs

  - Command

  - clap

  - serde

  - log

  - tokio

  - rocket

  - lazy_static

  - nom

Erfahrungsberichte

★★★★★
★★★★★

Verwandte Kategorien

Kombinierte Kurse

Sonderangebote

Sonderangebote Newsletter

Wir behandeln Ihre Daten vertraulich und werden sie nicht an Dritte weitergeben.
Sie können Ihre Einstellungen jederzeit ändern oder sich ganz abmelden.

EINIGE UNSERER KUNDEN

is growing fast!

We are looking for a good mixture of IT and soft skills in Germany!

As a NobleProg Trainer you will be responsible for:

  • delivering training and consultancy Worldwide
  • preparing training materials
  • creating new courses outlines
  • delivering consultancy
  • quality management

At the moment we are focusing on the following areas:

  • Statistic, Forecasting, Big Data Analysis, Data Mining, Evolution Alogrithm, Natural Language Processing, Machine Learning (recommender system, neural networks .etc...)
  • SOA, BPM, BPMN
  • Hibernate/Spring, Scala, Spark, jBPM, Drools
  • R, Python
  • Mobile Development (iOS, Android)
  • LAMP, Drupal, Mediawiki, Symfony, MEAN, jQuery
  • You need to have patience and ability to explain to non-technical people

To apply, please create your trainer-profile by going to the link below:

Apply now!

This site in other countries/regions