Object oriented programming, commonly shortened to OOP, is a programming language which is organised around objects rather than actions and data as opposed to logic.

OOP takes the view that the thing that is cared about is the object that the user wants to manipulate, not the logic that is required to manipulate them.

Manipulating by logic has typically been how a program has been viewed, something that takes input data, processes it, and produces output data, OOP though deals in objects.

An example of this would be describing a human being by name, address.

This information is typically known as attributes, and code in the form of procedures, or methods. A computer program designed using OOP would be made out of objects that interact with each other.

Some of the most popular object oriented programming languages are Java, C++, C#, Python, PHP, Ruby, Perl, and Swift.

Simula is generally accepted as being the first language with the primary features of an OOP language, this dates it back to 1967.