Glenn Vanderburg 4.2
Ruby's object model is an unusual combination of features. Together, those features have a profound effect on how Rubyists design software. Overviews of Ruby tend to focus on dynamic typing, but for someone trying to learn good design in Ruby, dynamic typing is just the tip of the iceberg. This talk examines the shape of object-oriented design in Ruby, showing how modules, mixins, eigenclasses, and other features combine in surprising ways to change how Ruby programmers deal with modularity, separation of concerns, extensibility, and other design concerns.