
Characteristics of Object-Oriented Programming
How Rust approaches the three core object-oriented concepts — objects, encapsulation, and inheritance — and why the language takes a different path from classical OOP
Trait Objects for Polymorphic Code
How to achieve runtime polymorphism in Rust using trait objects, the rules of object safety, the mechanics of dynamic dispatch, and the trade-offs between generics and trait objects.
Implementing an Object-Oriented Design Pattern
Walk through implementing the state pattern in Rust using trait objects and an alternative type-driven approach, illustrated by a blog post workflow.