Object-Oriented Programming (OOP) is a programming paradigm built on the concept of objects, with each object consisting of a specific data set.
Object oriented is a big deal on the web. In the past, programming was viewed as a being focused on designing the logic behind specific actions. Programs and programming languages were designed to accomplish a specific task. While data manipulation was possible with some languages, it wasn't what the programs were principally designed to do.
Now think about today's most popular web applications: social networks, cloud storage services, project management platforms, web-based email. What do all of these applications have in common? They are all ways of organizing, categorizing, and manipulating information or data:
- Social network organize relationships and short pieces of content (status updates, pictures, video).
- Cloud storage is all about organizing files and data.
- Project management platforms manipulate project milestones, tasks, and progress charts, and describe the relationships between these pieces of data or object.
- Email applications allow you to organize email messages by assigning specific labels to them: unread, read, inbox, trash, spam, and so forth.
In each case, the web applications described are all designed (programmed) to manipulate specific types of data (objects). Obviously, all of these applications are candidates for development with object-oriented programming languages.
Frequently Asked Questions
What are some other programming paradigms?
While object-oriented programming is the most common form of programming on the web, there are many other programming paradigms in use on the web and in other computer settings. Here are a few of the most common:
- Imperative: Imperative programming is made up of statements that tell a program how to reach a desired state.
- Procedural: Procedural programming defines a logical process of steps, a procedure, that a program must take to reach a desired state.
- Declarative: Declarative programing is the counterpoint to Imperative programming. Declarative programming tells a program what should be accomplished rather than dictating the specific steps required to reach the desired state.
- Functional: The logic of calculators and spreadsheet functions, functional programming involves the computation of mathematical functions.
- Event-Driven: Programming that is event-driven reacts to user input.
Keep in mind that the definitions of programming paradigms are not precise or globally standardized. It's also important to remember that different paradigms often coexist within a single program and that a single language can be used to write different types of programming. For example, an email application written in an object-oriented paradigm also includes event-driven actions that react to user input.
What are the most popular object-oriented programming languages?
There are other popular object-oriented programming languages that are more well-known as system and desktop application programming languages, but which also see limited use on the web, and these include Common Lisp, C++, C#, and more.