OO: Python to Rust
About this course
OO: Python to Rust is a hands-on course on object-oriented design for engineers moving from Python (a class-based, dynamic OO language) to Rust (a struct-and-trait-based language with no inheritance and strict ownership). You will learn how Rust models the four classical OO pillars - encapsulation, abstraction, polymorphism, and code reuse - without classes or inheritance, using structs, methods (impl blocks), traits, trait objects, generics, enums, and the type state pattern. The course translates common Python OO patterns (dataclasses, dunder methods, ABCs, mixins, descriptors, protocols, the singleton, factory, observer, strategy, and decorator patterns) into idiomatic Rust, and explains why some of them simply don't apply once you have algebraic data types and ownership. You will refactor a non-trivial Python OO codebase into Rust, learn when composition beats inheritance, when an enum beats a class hierarchy, and how to design APIs that leverage Rust's compile-time guarantees. By the end of the course, you will be able to read OO Python code and produce a correct, idiomatic Rust translation, and justify your design decisions on a code review. Part of the Rust for Data Engineering specialization.
Price shown by Coursera — confirm on their site.
Enroll on CourseraYou'll be redirected to Coursera to complete enrollment.
- Listed & compared by CourseAsk
- English · All Levels
More courses from Coursera
Coursera
TCP/IP and Internet
Birla Institute of Technology & Science, Pilani · MOOC / Non-credit
Coursera
Agile Project Management
University of Colorado Boulder · Master's Degree
Coursera
Conservation and Sustainable Development
University of Michigan · MOOC / Non-credit
Coursera
Extra-Galactic Astronomy
University of Cambridge · MOOC / Non-credit