Object-oriented programming: Difference between revisions

Content deleted Content added
Corrected the quote and replaced dead reference by working reference.
doi-access=free, and deleting a "dead" URL when the archived link still works is not an improvement
Line 49:
|date=May 1963
|pages=329–346
|doi=10.1145/1461551.1461591|doi-access=free}}
{{open access}}
</ref>
Also, in 1968, an MIT [[ALGOL]] version, AED-0, established a direct link between data structures ("plexes", in that dialect) and procedures, prefiguring what were later termed "messages", "methods", and "member functions".<ref name=simuladev>{{cite journal
Line 61 ⟶ 60:
|pages=245–272
|doi=10.1145/960118.808391
|doi-access=free
|date=August 1, 1978
}}
Line 75:
 
Independently of later MIT work such as AED, [[Simula]] was developed during the years 1961–1967.<ref name=simuladev/>
Simula introduced important concepts that are today an essential part of object-oriented programming, such as [[Class (computer programming)|class]] and [[Object (computer science)|object]], inheritance, and [[Dynamic binding (computing)|dynamic binding]]..<ref name="auto">{{citeCite journal|last = Holmevik|first = Jan Rune|title = Compiling Simula: A historical study of technological genesis|journal = [[IEEE Annals of the History of Computing]]|volume = 16|issue = 4|pages = 25–37|date = Winter 1994|url = http://www.idi.ntnu.no/grupper/su/publ/simula/holmevik-simula-ieeeannals94.pdf|doi = 10.1109/85.329756|s2cid = 18148999|access-date = 3 March 2018|archive-date = 30 August 2017|archive-url = https://web.archive.org/web/20170830065454/http://www.idi.ntnu.no/grupper/su/publ/simula/holmevik-simula-ieeeannals94.pdf|url-status = dead}}</ref>
|author=Jan Rune Holmevik
|title=Compiling SIMULA: a historical study of technological genesis
|journal= [[IEEE Annals of the History of Computing]]
|volume=16
|issue=4
|pages=25–37
|date=Winter 1994
|doi=10.1109/85.329756}}
</ref>
The object-oriented Simula programming language was used mainly by researchers involved with [[physical modelling]], such as models to study and improve the movement of ships and their content through cargo ports.<ref name="auto"/>
 
Line 108 ⟶ 99:
|date=March 1993
|doi= 10.1145/155360.155364
|doi-access=free
}}
{{open access}}
</ref>
 
Line 271 ⟶ 262:
For example, the [[circle-ellipse problem]] is difficult to handle using OOP's concept of [[inheritance (object-oriented programming)|inheritance]].
 
However, [[Niklaus Wirth]] (who popularized the adage now known as [[Wirth's law]]: "Software is getting slower more rapidly than hardware becomes faster") said of OOP in his paper, "Good Ideas through the Looking Glass", "This paradigm closely reflects the structure of systems in the real world and is therefore well suited to model complex systems with complex behavior"<ref>{{cite journal
"This paradigm closely reflects the structure of systems
in the real world and is therefore well suited to model
complex systems with complex behavior"<ref>{{cite journal
|author=[[Niklaus Wirth]]
|journal=[[IEEE Computer]]
Line 283 ⟶ 271:
|title=Good ideas, through the looking glass
|series=Cover Feature
|doi=10.1109/MC.2006.20}}</ref>
|s2cid=6582369
|url=https://pdfs.semanticscholar.org/10bd/dc49b85196aaa6715dd46843d9dcffa38358.pdf |archive-url=https://web.archive.org/web/20161012215755/https://pdfs.semanticscholar.org/10bd/dc49b85196aaa6715dd46843d9dcffa38358.pdf |url-status=dead |archive-date=12 October 2016
}}</ref>
(contrast [[KISS principle]]).