While TDD is universally accepted in the Ruby community, the design principles that underlay OOD are much less widely practiced. That's both too bad and to our detriment. Even a little bit of knowledge about OOD leads to improved code and simplified tests. Over the lifetime of an application, good design provides significant payback.
The talk will cover all the SOLID principles:
- Single Responsibility
- Open Closed
- Liskov Substitution
- Interface Segregation
- Dependency Inversion
… and give examples of the effect that following them would have on TDD.
Sandi Metz works for Duke University in Durham, NC, is a member of the newly formed West End Ruby Group on Carborro, NC. and is one of the many DevChix. She's been working in Ruby and Rails for over 4 years (since 0.13) and has an ongoing and active interested in all things OOD.