SubjectsSubjects(version: 970)
Course, academic year 2024/2025
   Login via CAS
Programming in Rust Language - NPRG082
Title: Programování v jazyce Rust
Guaranteed by: Department of Distributed and Dependable Systems (32-KDSS)
Faculty: Faculty of Mathematics and Physics
Actual: from 2024
Semester: winter
E-Credits: 3
Hours per week, examination: winter s.:0/2, C [HT]
Capacity: unlimited
Min. number of students: unlimited
4EU+: no
Virtual mobility / capacity: no
State of the course: taught
Language: English, Czech
Teaching methods: full-time
Additional information: https://d3s.mff.cuni.cz/teaching/nprg082
Guarantor: prof. Ing. Petr Tůma, Dr.
Teacher(s): Lukáš Hozda
Pavel Šimerda
Classification: Informatics > Programming
Incompatibility : NPRG073
Pre-requisite : NPRG031
Annotation -
Basic course of programming in Rust.
Last update: Hnětynka Petr, doc. RNDr., Ph.D. (27.08.2024)
Course completion requirements -

Credit is awarded for obtaining sufficient point total from homework assignments.

Last update: Tůma Petr, prof. Ing., Dr. (02.10.2024)
Syllabus -

1. Introduction. Comparison to other languages - Value ownership and move semantics - Value borrowing and references - Mutable references - Tools

2. Data structures. Enumerations - Tuples - Arrays - Structures - Pattern matching - Error handling - Chained control flow - Input and output - Debugging - Documentation

3. Object ownership and life cycle. Object construction - Builder pattern - Ownership and moving - Copying and cloning - Boxed values - References and lifetimes

4. Polymorphic programming. Simple generics - Enum polymorphics - Trait polymorphism - Dynamic polymorphism

5. Concurrency and parallelism. Multithreaded data model - Threads with moved values - Shared immutable data - Shared mutable data - Mutex wrapper - Channels

6. Coroutine based multitasking. Asynchronous blocks - Asynchronous functions - Scheduler and communication

Last update: Tůma Petr, prof. Ing., Dr. (02.10.2024)
 
Charles University | Information system of Charles University | http://www.cuni.cz/UKEN-329.html