Clean Ruby plus quick refrence for forwarding (with Inheritance, Consultation, and Delegation), and visualizations of how messages are handled by method_missing, SimpleDelegator, DelegateClass, and Forwardable.
Learn to think about thinking. At the basis of every program lies a human being's mental model. Creating a program which accurately reflects a shared mental model is crucial to building habitable and maintainable systems.
East-oriented code. Learn how to better understand encapsulation and create code which enforces that the right objects have the right responsibilities.
Data, Context, and Interaction (DCI). Discover ways to flatten your object structure and create highly cohesive groups of objects that keep related things together, right where you need them.
Additional materials:
Forwarding, Inheritance, Delegation cheatsheet. Breeze through the quick refrence for forwarding with Inheritance, Consultation, and Delegation.
Visualization of message handling. Get this cheatsheet giving you a fast understanding with visualizations of how messages are handled by method_missing, SimpleDelegator, DelegateClass, and Forwardable helping you know how and when to use them.