The 5 SOLID design principles (the Single Responsibility Principle, the Open/Closed Principle, the Liskov Substitution Principle, the Interface Segregation Principle and the Dependency Inversion Principle) form a great foundation for understanding good Object Oriented design. But the SOLID principles were originally conceived with statically typed OO languages, such as C++ and Java, in mind. How well do these principles hold up when the implementation language is Ruby? Are the principles just as pertinent as they were in Java, or does the dynamic nature of Ruby change what we mean by good design? In this presentation we will examine the SOLID principles to understand their core purpose, and then run them through the "Ruby Filter" to see if any of these core principles survive. By understanding these principles, we become better Ruby programmers.
Sign in to add slides, notes or videos to this session