Object-oriented programming is a design philosophy. Writing applications with an object-oriented programming language is fundamentally different to writing applications with older procedural languages, such as C and Pascal. Procedural languages use a set of instructions to tell the computer what to do step by step, by relying on procedures (or routines). However, object-oriented programming is all about the object. This may seem like a pretty obvious statement given the name, but essentially, when we think about object-oriented programming, we need to think about the object.
The object is a data structure that contains information about the attributes of the object, in the form of properties and the actions performed by, or to, the object in the form of methods. Objects can be considered things and in the English language, they would...