Rust is a modern programming language that comes with extensive safety features built right into the compilation process. It is suitable for safety-critical libraries and industrial applications while providing a relatively friendly way to develop any type of software.
Example program in Rust - Tools and project structure - How simple things are done - Using libraries
Documentation and best practices - Printing, formatting and debugging - Mutable and imutable variables - Value and reference passing
Structured data types - Algebraic data types - Pattern matching - Error handling
|2021-11-22||Object life cycle
Object construction - Builder pattern - Moving, borrowing, copying, cloning - Boxed objects - Memory safety
Simple templates - Traits and boxes - Practical applications
Thread safety - Ownership passing - Mutual exclusion
Questions and answers - Code from students - What next?
Credit is awarded for reasonable amount of activity in all homework projects. After each lecture, a homework assignment is published in the course upstream repository. The solution must be submitted by the deadline noted in the assignment by pushing it into the individual student repository. Each solution will be assigned 0-10 points, course credit requires a minimum of 60% point average across all assignments.
As an alternative, a reasonably sized individual project can be proposed on an individual basis.