Should objects expose high level, 'processed' information or low level, 'raw data'?
Base class has one responsibility, and derived class has another responsibility. Does this conforms to SRP?
What's the difference between principles YAGNI and KISS?
Does using virtual methods violates LSP( L part of SOLID principles) or there are some exceptions? [closed]
Liskov substitution principle - no overriding/virtual methods?
what are “Meta-Data design principles”?