A Brief History of Computing by Gerard O'Regan
Author:Gerard O'Regan
Language: eng
Format: epub
Publisher: Springer London, London
9.4 Object-Oriented Languages
Object-oriented programming is a paradigm shift in programming. The traditional view of programming is that a program is a collection of functions or a list of instructions to be performed on the computer. Object-oriented programming considers a computer program to be a collection of objects that act on each other. Each object is capable of sending and receiving messages and processing data. That is, each object may be viewed as an independent entity or actor with a distinct role or responsibility.
An object is a ‘black box’ which sends and receives messages. A black box consists of code (computer instructions) and data (information which these instructions operate on). The traditional way of programming kept code and data separate. For example, functions and data structures in the C programming language are not connected. However, in the object-oriented world, code and data are merged into a single indivisible thing called an object.
The reason that an object is called a black box is that the user of an object never needs to look inside the box, since all communication to it is done via messages. Messages define the interface to the object. Everything an object can do is represented by its message interface. Therefore, there is no need to know anything about what is in the black box (or object) in order to use it. The approach is to access to an object only through its messages, while keeping the internal details private is called information hiding,7 and this dates back to work done by Parnas in the early 1970s.
The origins of object-oriented programming go back to the invention of Simula 67 at the Norwegian Computing Research Centre8 in the late 1960s. It introduced the notion of a class and instances of a class.9 The Smalltalk object-oriented language was developed at Xerox in the mid-1970s. Xerox introduced the term ‘object-oriented programming’ for the use of objects and messages as the basis for computation. Many modern programming languages (e.g. Java and C++) support object-oriented programming. The main features of object-oriented languages are presented in Table 9.1.Table 9.1Object-oriented paradigm
Download
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.
Computer Vision & Pattern Recognition | Expert Systems |
Intelligence & Semantics | Machine Theory |
Natural Language Processing | Neural Networks |
Algorithms of the Intelligent Web by Haralambos Marmanis;Dmitry Babenko(8310)
Test-Driven Development with Java by Alan Mellor(6828)
Data Augmentation with Python by Duc Haba(6747)
Principles of Data Fabric by Sonia Mezzetta(6488)
Learn Blender Simulations the Right Way by Stephen Pearson(6397)
Microservices with Spring Boot 3 and Spring Cloud by Magnus Larsson(6261)
Hadoop in Practice by Alex Holmes(5966)
Jquery UI in Action : Master the concepts Of Jquery UI: A Step By Step Approach by ANMOL GOYAL(5816)
RPA Solution Architect's Handbook by Sachin Sahgal(5661)
Big Data Analysis with Python by Ivan Marin(5410)
The Infinite Retina by Robert Scoble Irena Cronin(5353)
Life 3.0: Being Human in the Age of Artificial Intelligence by Tegmark Max(5162)
Pretrain Vision and Large Language Models in Python by Emily Webber(4379)
Infrastructure as Code for Beginners by Russ McKendrick(4148)
Functional Programming in JavaScript by Mantyla Dan(4044)
The Age of Surveillance Capitalism by Shoshana Zuboff(3964)
WordPress Plugin Development Cookbook by Yannick Lefebvre(3863)
Embracing Microservices Design by Ovais Mehboob Ahmed Khan Nabil Siddiqui and Timothy Oleson(3662)
Applied Machine Learning for Healthcare and Life Sciences Using AWS by Ujjwal Ratan(3639)
