Object-oriented programming tries to model real-life objects into the programming world. This makes the programs easy to co-relate with real-world and understand. Encapsulation is one of the key concepts, which plays crucial role in this modelling along with Abstraction and...
English meaning of abstraction Something that exists only as an idea. Technical translation Abstraction is the concept of representing something at high level, without going into too much details. Anyone involved into object oriented programming would be already aware of...
To understand a typical design anti-pattern causing Class Explosion, consider a use-case of Restaurant. They need to serve several menu items, some of them are listed below in form of Class names. DoubleCheesePizza ItalianPizza FreshVeggiePizza Vegetable Sandwich Cheese Sandwich Aalu-matar Sandwich...