This is almost certainly a personal problem, but I can never wrap my head around the "open/closed" thing. I'm actually a big fan of the other SOLID principles and use them daily, which makes this extra awkward.
The problem with the open/closed principle is that the explanations of it start convoluted and get even more convoluted from there. With a bunch of disclaimers needing to be added to any example of an open Vs closed implementation using a modern framework/language.
Now if they're just talking about immutable objects, that makes sense. But it doesn't seem that simple, and many of the examples aren't really implementing immutable objects.
The problem with the open/closed principle is that the explanations of it start convoluted and get even more convoluted from there. With a bunch of disclaimers needing to be added to any example of an open Vs closed implementation using a modern framework/language.
Even the Wikipedia article makes no sense to me:
https://en.wikipedia.org/wiki/Open%E2%80%93closed_principle
Now if they're just talking about immutable objects, that makes sense. But it doesn't seem that simple, and many of the examples aren't really implementing immutable objects.