Courses

  1. Introduction

    • Basic types
    • Variables
    • Operators
    • Functions & Expression statements
    • Basic statement (if, while, loop, ...)
    • Link: Course 1
  2. Ownership

    • Prerequisite: String type
    • Ownership management
    • Borrowing & References
    • Reborrowing
    • Optimizations
    • Link: Course 2
  3. Error Management

    • Enums
    • Errors (panic, Option, Result)
    • Statements (if let / while let / let ... else)
    • Question mark operator
    • Link: Course 3
  4. Strings

    • Type of strings, creation
    • Methods
    • Iterators
    • Coercion
    • Range operation, UTF-8 constraints
    • String formatting
    • Creating and updating strings
    • Associated traits
    • Link: Course 4
  5. Complex data types

    • Tuples
    • Arrays
    • Structures
    • New type idiom
    • Type alias
    • Box (heap allocation)
    • Link: Course 5
  6. OOP concepts

    • Methods for structs
    • Traits
    • Super Traits
    • Special traits
    • Link: Course 6
  7. Generics and Match

  8. Containers

    • Closures
    • Iterators
    • Vectors
    • Sorting data sequences
    • HashMap
    • HashSet
    • BTreeMap
    • BTreeSet
    • Link: Course 8
  9. Project management

    • Modules (visibility concepts)
    • Crates
    • Conditional Compilation
    • Building scripts
    • Tests
    • Documentation
    • Workspaces
    • Link: Course 9
  10. Unsafe

    • Unsafe blocks
    • NonNull pointers
    • Interior Mutability
    • Reference Count
    • Link: Course 10
  11. Macros & FFI

    • Macros (normal, procedural, etc)
    • File Operations
    • File system operations
    • Execution Envinronment
    • FFI
    • Link: Course 11