Towards understandable, maintainable code.
Explain how OO and ruby work together in producing readable, flexible, fun to work with code.
Why is this important
- Code as conversation
Methods at the core
- good method goals
- composed method pattern via TextProcessor
- explained method as basic building block
Ruby method specialities
- default params
- block arguments
Objects interacting in the system
- SOLID design principles
Refactoring example from sandi metz
- achieve open/closed via SRP and DI