Object-oriented programming: Difference between revisions

Content deleted Content added
No edit summary
Tags: Visual edit Mobile edit Mobile web edit
WikiCleanerBot (talk | contribs)
m v2.05b - Bot T12 CW#548 - Fix errors for CW project (Punctuation in link - Title linked in text)
Line 15:
Many of the most widely used programming languages (such as C++, Java, Python, etc.) are [[multi-paradigm programming language|multi-paradigm]] and they support object-oriented programming to a greater or lesser degree, typically in combination with [[imperative programming|imperative]], [[procedural programming]].
 
Significant object-oriented languages include: [[Ada (programming language)|Ada]], [[ActionScript]], [[C++]], [[Common Lisp]], [[C Sharp (programming language)|C#]], [[Dart (programming language)|Dart]], [[Eiffel (programming language)|Eiffel]], [[Fortran|Fortran 2003]], [[Haxe]], [[Java (programming language)|Java]], [[JavaScript]], [[Kotlin (programming language)|Kotlin]], [[Logo (programming language)|logo]], [[MATLAB]], [[Objective-C]], [[Object Pascal]], [[Perl]], [[PHP]], [[Python (programming language)|Python]], [[R (programming language)|R,]], [[Raku (programming language)|Raku]], [[Ruby (programming language)|Ruby]], [[Scala (programming language)|Scala]], [[SIMSCRIPT]], [[Simula]], [[Smalltalk]], [[Swift (programming language)|Swift]], [[Vala (programming language)|Vala]] and [[Visual Basic.NET]].
 
==History==
Line 248:
 
===Real-world modeling and relationships===
OOP can be used to associate real-world objects and processes with digital counterparts. However, not everyone agrees that OOP facilitates direct real-world mapping (see [[object-oriented programming#Criticism|Criticism]] section) or that real-world mapping is even a worthy goal; [[Bertrand Meyer]] argues in ''[[Object-Oriented Software Construction]]''<ref name="Meyer230">Meyer, Second Edition, p. 230</ref> that a program is not a model of the world but a model of some part of the world; "Reality is a cousin twice removed". At the same time, some principal limitations of OOP have been noted.<ref>M.Trofimov, ''OOOP – The Third "O" Solution: Open OOP.'' First Class, [[Object Management Group|OMG]], 1993, Vol. 3, issue 3, p.14.</ref>
For example, the [[circle-ellipse problem]] is difficult to handle using OOP's concept of [[inheritance (object-oriented programming)|inheritance]].