Continuing on our discussion of SOLID development principles, in this guide I'll walk you through the open/closed principle:
For some reason or another, developers seem to struggle understanding this SOLID element more than some of the others. With this in mind, I'll give a dead simple explanation of how the open/closed principle works, followed by a Ruby code example.
I think that once you see how powerful this concept is, you'll fall in love with it because, at it's core, it allows you to scale your code without having to worry about wasting time on legacy classes.