Mind map
Key Terminology associated with Object- Orientated Programming
Map content
Key Terminology associated with Object- Orientated Programming
Abstraction
- Definition: The ability to represent a complex reality in terms of a simplified model. Abstraction is not limited to OOP. It is used in procedural languages in top down step-wise refinement and through the use of subprograms, functions, etc. An example of an abstraction is the MOVE command in COBOL. While the MOVE may seem like a concrete statement, it truly is abstract. By MOVEing A-VAR to B-VAR, COBOL is required to do all of the editing, alignment, and error checking to be sure it is legal and to handle fields of dissimilar lengths and types.
Polymorphism
- Definition: Literally "many forms", this powerful feature allows us to have the same method take on different meanings depending on which class is instantiated. An example might be an abstract idea called a shape. The shape could have two characteristics: area and perimeter. There could be two type of shapes (inherited) called circle and square. We would indicate in the shape class, that there are two values to be determined, area and perimeter. The first determining a value indicating the number of square inches and the other inches. Since I don't know what shape it is I cannot tell you the equation for the area or the perimeter. I will leave those details out. When I create a class of circles, I do know how to calculate the area and perimeter of a circle and can now provide these details to the appropriate functions. The same goes when I create a class of squares. Since both circles and squares are inherited from shapes they are considered part of the shapes class and can be thought
Multiple inheritance
- Definition: The ability to inherit and refine from more than one class. Using the person-student inheritance example (from inheritance above), we can also add that a person is also an employee and has employee functions as well. In this case the student inherits both person and employee characteristics/functions.
Inheritance
- Definition: The ability to "add on" to a class, additional components and/or to "override" certain components of the class we are inheriting from to create a more specific model. Suppose we created a person class. The person could be refined to be a student by adding student characteristics and functions. Since a person may be defined to have a name, address, age, etc., we could now say that a student is a person who attends a school, has a GPA, major etc.
Encapsulation
- Definition: The ability to "hide" the implementation and the data stored in an object. This protects programs from the "side-effects" of unwanted changes. The Input-Process-Output (IPO) chart is a good example of encapsulation. The Input and Output represent the interface but the process itself and any variables (other than the Input and Output variables) are considered to be local. Local variables altered in the process are separate from local variables in another process, even though they may share the same name. Since variables are declared in the Data Division of a COBOL program, they are global (not local) and are available to all paragraphs in the program. This makes variables in a program susceptible to alteration in a paragraph where they are not intended to be.
Information
- Description
- GCSE Art and Design Mind Map on Key Terminology associated with Object- Orientated Programming, created by Emma Moody on 28/09/2017.
- Created by
- Emma Moody
- Views
- 2
- Rating