Object-oriented programming

UML notation for a class. This Button class has variables for data, and functions. Through inheritance a subclass can be created as subset of the Button class. Objects are instances of a class.
The TIOBE programming language popularity index graph from 2002 to 2018. In the 2000s the object-oriented Java (blue) and the procedural C (black) competed for the top position.

Programming paradigm based on the concept of "objects", which can contain data and code: data in the form of fields (often known as attributes or properties), and code, in the form of procedures (often known as methods).

- Object-oriented programming
UML notation for a class. This Button class has variables for data, and functions. Through inheritance a subclass can be created as subset of the Button class. Objects are instances of a class.

500 related topics

Relevance

C++

General-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes".

General-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes".

Bjarne Stroustrup, the creator of C++, in his AT&T New Jersey office c. 2000
A quiz on C++11 features being given in Paris in 2015
Scene during the C++ standards committee meeting in Stockholm in 1996
The draft "Working Paper" standard that became approved as C++98; half of its size was devoted to the C++ Standard Library.

The language has expanded significantly over time, and modern C++ now has object-oriented, generic, and functional features in addition to facilities for low-level memory manipulation.

Visual Basic .NET

Hello world! window

Visual Basic, originally called Visual Basic .NET (VB.NET), is a multi-paradigm, object-oriented programming language, implemented on .NET, Mono, and the .NET Framework.

C Sharp (programming language)

General-purpose, multi-paradigm programming language.

General-purpose, multi-paradigm programming language.

C-sharp musical note

C# encompasses static typing, strong typing, lexically scoped, imperative, declarative, functional, generic, object-oriented (class-based), and component-oriented programming disciplines.

Charles Babbage, sometimes referred to as the "father of computing".

Field (computer science)

In computer science, data that has several parts, known as a record, can be divided into fields (data fields).

In computer science, data that has several parts, known as a record, can be divided into fields (data fields).

Charles Babbage, sometimes referred to as the "father of computing".

In object-oriented programming, a field (also called data member or member variable) is a particular piece of data encapsulated within a class or object.

A diagram showing how the user interacts with application software on a typical desktop computer. The application software layer interfaces with the operating system, which in turn communicates with the hardware. The arrows indicate information flow.

Objective-C

A diagram showing how the user interacts with application software on a typical desktop computer. The application software layer interfaces with the operating system, which in turn communicates with the hardware. The arrows indicate information flow.

Objective-C is a general-purpose, object-oriented programming language that adds Smalltalk-style messaging to the C programming language.

Python (programming language)

High-level, interpreted, general-purpose programming language.

High-level, interpreted, general-purpose programming language.

The designer of Python, Guido van Rossum, at OSCON 2006
The standard type hierarchy in Python 3
Python Powered

It supports multiple programming paradigms, including structured (particularly procedural), object-oriented and functional programming.

Computer memory map

Imperative programming

Programming paradigm of software that uses statements that change a program's state.

Programming paradigm of software that uses statements that change a program's state.

Computer memory map

The concepts behind object-oriented programming attempt to extend this approach.

Scala (programming language)

Scala is a strong statically typed general-purpose programming language which supports both object-oriented programming and functional programming.

Smalltalk

Smalltalk-80: The Language and its Implementation'', a.k.a. the "Blue book", an original book on the language

Smalltalk is an object-oriented, dynamically typed reflective programming language.

Ruby (programming language)

Interpreted, high-level, general-purpose programming language which supports multiple programming paradigms.

Interpreted, high-level, general-purpose programming language which supports multiple programming paradigms.

Yukihiro Matsumoto, the creator of Ruby

It supports multiple programming paradigms, including procedural, object-oriented, and functional programming.