What is Object Oriented Programm? OOP Explained in Depth