Object-oriented programming

Object-oriented programming

Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or properties), and the code is in the form of procedures (often known as methods).

Author
enAlan Kay
Comment
enObject-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or properties), and the code is in the form of procedures (often known as methods).
Depiction
Oop-uml-class-example.png
Tiobeindex.png
Has abstract
enObject-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or properties), and the code is in the form of procedures (often known as methods). A common feature of objects is that procedures (or methods) are attached to them and can access and modify the object's data fields. In this brand of OOP, there is usually a special name such as <span class="k">this</span><span class="w"></span> or <span class="kc">self</span> used to refer to the current object. In OOP, computer programs are designed by making them out of objects that interact with one another. OOP languages are diverse, but the most popular ones are class-based, meaning that objects are instances of classes, which also determine their types. Many of the most widely used programming languages (such as C++, Java, Python, etc.) are multi-paradigm and they support object-oriented programming to a greater or lesser degree, typically in combination with imperative, procedural programming. Significant object-oriented languages include:Java,C++,C#,Python,R,PHP,Visual Basic.NET,JavaScript,Ruby,Perl,SIMSCRIPT,Object Pascal,Objective-C,Dart,Swift,Scala,Kotlin,Common Lisp,MATLAB,andSmalltalk.
Has close match
19803-2
Hypernym
Paradigm
Is Part Of
target
Is primary topic of
Object-oriented programming
Label
enObject-oriented programming
Link from a Wikipage to an external page
archive.org/details/buildingbusiness0000eele
portal.acm.org/citation.cfm%3Fid=547964&dl=ACM&coll=portal
archive.org/details/designpatternsel00gamm
gagne.homedns.org/%7etgagne/contrib/EarlyHistoryST.html
web.archive.org/web/20050404075821/http:/gagne.homedns.org/~tgagne/contrib/EarlyHistoryST.html
mitpress.mit.edu/sicp/
thenewstack.io/why-are-so-many-developers-hating-on-object-oriented-programming/
web.archive.org/web/20171226134539/http:/mitpress.mit.edu/sicp/
java.sun.com/docs/books/tutorial/java/concepts/index.html
www.codeproject.com/Articles/22769/Introduction-to-Object-Oriented-Programming-Concep
archive.org/details/objectorientedan00booc
archive.org/details/objectorientedin00tayl
archive.org/details/objectorientedmo00rumb
archive.org/details/objecttechnology00harm
pub.bruckner.cz/titles/oop
Link from a Wikipage to another Wikipage
.NET Framework
ABAP
Abstract class
Abstract data type
Abstract factory pattern
Abstraction (computer science)
Ada (programming language)
Adapter pattern
Addison-Wesley
Adele Goldberg (computer scientist)
Alan Kay
Alexander Stepanov
ALGOL
Algorithm
Artificial intelligence
Association for Computing Machinery
Attribute (computing)
BASIC
Behavioral pattern
Behavioral subtyping
Bertrand Meyer
Bjarne Stroustrup
Brad Cox
Bridge pattern
Builder pattern
Byte Magazine
C (programming language)
C++
CADES
Category:Norwegian inventions
Category:Object-oriented programming
Category:Programming paradigms
Chain-of-responsibility pattern
Character (computing)
Christopher J. Date
Circle-ellipse problem
Class (computer programming)
Class (computer science)
Class-based programming
Class variable
Clojure
closed principle
CLU (programming language)
COBOL
COBOL 2002
Cocoa (software)
Code refactoring
Code reuse
ColdFusion
Command pattern
Common Lisp
Common Lisp Object System
Common Object Request Broker Architecture
Comparison of programming languages (object-oriented programming)
Comparison of programming paradigms
Compiler
Component-based software engineering
Composite pattern
Composition over inheritance
Computer program
Computer simulation
Conditional (computer programming)
Constructor (object-oriented programming)
Control flow
Coupling (computer programming)
Craig Larman
Creational pattern
C Sharp (programming language)
Dan Ingalls
Dart (programming language)
Data
Data abstraction
Data-driven programming
Data structure
Data structures
Data type
Decorator pattern
Delegation (object-oriented programming)
Delphi (programming language)
Dependency inversion principle
Design by contract
Design by Contract
Design pattern (computer science)
Design Patterns (book)
Distributed Component Object Model
Distributed Data Management Architecture
Document Object Model
Don't repeat yourself
DRDA
Duplicate code
Dynamic binding (computing)
Dynamic dispatch
Dynamic programming
Dynamic programming language
ECMAScript
Eiffel (programming language)
Emerald (programming language)
Encapsulation (computer programming)
Equivalence class
Erich Gamma
Eric S. Raymond
Erlang (programming language)
ETH Zürich
Event-driven programming
Facade pattern
Factory method pattern
F-Coalgebra
Field (computer science)
File:Oop-uml-class-example.png
File:Tiobeindex.png
Flavors (programming language)
Flyweight pattern
Fortran
Fortran 2003
FoxPro
Functional programming
Function literal
Generic programming
Go (programming language)
Graphical user interface
GRASP (object-oriented design)
Groovy (programming language)
Hash table
HTML
IBM i
IDEF4
Imperative programming
Information hiding
Inheritance (object-oriented programming)
Instance (computer science)
Instance variable
Integer (computer science)
Integrated development environment
Intel iAPX 432
Interface description language
Interface segregation principle
Interpreter (computing)
Interpreter pattern
Is a
Iterator pattern
ITT Inc.
Ivan Sutherland
JADE (programming language)
Java (programming language)
Java Data Objects
JavaScript
Jeroo
Joe Armstrong (programming)
John Vlissides
John Wiley & Sons
KISS principle
Kotlin (programming language)
Lepus3
Linn Products
Liskov substitution principle
Lisp (programming language)
Lisp machine
List (abstract data type)
Lookup table
Loop (computing)
Lua (programming language)
Luca Cardelli
Mac OS X
MATLAB
McGraw-Hill
Mediator pattern
Member variable
Memento pattern
Message passing
Meta-object protocol
Method (computer science)
Microsoft Press
MIT
MIT Press
Mixin
Mixins
Modula-2
Modularity (programming)
Modular programming
Multi-paradigm
Multi-paradigm programming language
Multiple dispatch
Multiple inheritance
Mutable
Name binding
Namespace
Niklaus Wirth
Noun
Oberon (programming language)
Object (computer science)
Object (IBM i)
Object association
Object-based
Object composition
Object database
Objective-C
Object modeling language
Object model reference
Object-oriented analysis and design
Object-oriented programming
Object-Oriented Software Construction
Object Pascal
Object-relational impedance mismatch
Object-relational mapping
Observer pattern
Open recursion
Open-source software
Paradigm
Parametric polymorphism
Pascal (programming language)
Paul Graham (computer programmer)
Perl
PHP
Physical modelling
Pointer (computer programming)
Polymorphism (computer science)
Prentice Hall
Procedural programming
Programming paradigm
Program semantics
Prototype-based programming
Prototype pattern
Proxy pattern
Python (programming language)
R (programming language)
Raku (programming language)
Ralph Johnson (computer scientist)
RDBMS
Record (computer science)
Recursive type
Rekursiv
Relational database
Relational database management systems
Responsibility-driven design
Richard Helm
Rich Hickey
Robert C. Martin
Rob Pike
Roman numerals
Ruby (programming language)
Ruby on Rails
Ruby programming language
Scala (programming language)
Self (programming language)
Separation of concerns
SIMSCRIPT
Simula
Single inheritance
Single responsibility principle
Singleton pattern
Sketchpad
Smalltalk
Software maintenance
SOLID (object-oriented design)
Springer Verlag
State pattern
Steve Yegge
Strategy pattern
String (computer science)
Structural pattern
Structured programming
Subroutine
Subtype polymorphism
Subtyping
Sun Microsystems
Swift (programming language)
Syntactic sugar
System F-sub
Tcl
Template method pattern
This (computer programming)
Thread (computer science)
Trait (computer programming)
Type checker
Underscore
Unified Modeling Language
Unix
UTF-8
Variable (computer science)
VB.NET
Verb
Visitor pattern
Visual Basic
Visual Basic.NET
Visual FoxPro
Windows PowerShell
Wirth's law
Xerox PARC
XHTML
XML
Quote
enI thought of objects being like biological cells and/or individual computers on a network, only able to communicate with messages .
SameAs
4233947-9
4xkwX
Hlutbundin forritun
Lập trình hướng đối tượng
m.05prj
Nesne yönelimli programlama
Objectgeoriënteerd programmeren
Object-oriented programming
Objekgeoriënteerde programmering
Objektema programado
Objektinis programavimas
Objektno orijentirano programiranje
Objektno orijentirano programiranje
Objektno-orijentisano programiranje
Objektorienteeritud programmeerimine
Objektorienterad programmering
Objektorienteret programmering
Objektorientert programmering
Objektorientert programmering
Objektorientētā programmēšana
Objektorientierte Programmierung
Objekt-orientizita programifo
Objektově orientované programování
Objektovo orientované programovanie
Objektuetara bideratutako programazioa
Objektumorientált programozás
Obyekt yönümlü proqramlaşdırma
Olio-ohjelmointi
Pemrograman berorientasi objek
Pengaturcaraan berorientasi objek
Programação orientada a objetos
Programación empobinada a oxetos
Programación orientada a objetos
Programación orientada a obxectos
Programació orientada a objectes
Programare orientată pe obiecte
Programimi i orientuar në objekte
Programmation orientée objet
Programmatura ad res directa
Programmazione orientata agli oggetti
Programowanie obiektowe
Prugrammazzioni urientata all'uggetta
Q79872
Uprogramishaji kiviumbile
Αντικειμενοστρεφής προγραμματισμός
Аб’ектна-арыентаванае праграмаванне
Барноманависии шайъгаро
Об'єктно-орієнтоване програмування
Обектно ориентирано програмиране
Обжектке багытталган программалоо
Объектно-ориентированное программирование
Объект хандалтат программчлал
Объектіге-бағытталған бағдарламалау
Објектно-ориентирано програмирање
Објектно-оријентисано програмирање
Օբյեկտ կողմնորոշված ծրագրավորում
תכנות מונחה-עצמים
اوبجیکٹ اوریئنٹڈ پروگرامنگ
برمجة كائنية التوجه
برنامه‌نویسی شیءگرا
پرۆگرامسازیی تەنخواز
ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग
वस्तुभिमुख आज्ञावली
অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং
பொருள் நோக்கு நிரலாக்கம்
ഒബ്ജക്റ്റ് ഓറിയന്റഡ് പ്രോഗ്രാമിങ് ഭാഷ
වස්තූන් අරමුණුකරගත් ක්‍රමලේඛනය
การเขียนโปรแกรมเชิงวัตถุ
အော့ဗ်ဂျက် အိုရီယင့်တက် ပရိုဂရမ်းမင်း
ობიექტზე ორიენტირებული პროგრამირება
オブジェクト指向プログラミング
面向对象程序设计
객체 지향 프로그래밍
SeeAlso
Comparison of programming languages (object-oriented programming)
Formal semantics of programming languages
List of object-oriented programming languages
Object-oriented design
Subject
Category:Norwegian inventions
Category:Object-oriented programming
Category:Programming paradigms
Thumbnail
Oop-uml-class-example.png?width=300
WasDerivedFrom
Object-oriented programming?oldid=1124983356&ns=0
Width
50.0
WikiPageLength
64443
Wikipage page ID
27471338
Wikipage revision ID
1124983356
WikiPageUsesTemplate
Template:As of
Template:Authority control
Template:Citation needed
Template:Cite book
Template:Cite journal
Template:Code
Template:Main
Template:Portal
Template:Programming paradigms
Template:Quote
Template:Quote box
Template:Redirect
Template:Reflist
Template:See also
Template:Short description
Template:Software engineering
Template:Types of programming languages
Template:Unreferenced section
Template:Use dmy dates
Template:Wikibooks
Template:Wikiquote
Template:Wikiversity