4.2 Fundamentals of data structures Flashcards
What does Abstraction mean
Removing unnecessary details, from a problem making a comlex problem simpler
What is Representational Abstraction
A scenario arrived by removing unnecessary details
What is Abstraction by Genralisation
When you group things in terms of a set of common characteristics, describing a “kind of” relationship which arrives at a hierarchy where going up you genralise and as you go down you specialise
What is Information Hiding
The process of hiding all of the details of an object that do not contribute to its essential characteristics
How is information hidiing used practically
Most systems hide their complexity behind an interface as it provides abstraction of what lies behind, like in an OS which uses a GUI that allows the user to interact with the computer system without any knowledge of its work around
What is the advantage of Information hiding and Interfaces
1 - Interfaces using information hiding allows the machine to be changed or upgraded without the need to modify the interface
What is Procedural Abstraction
The result sof abstracting away the actual values used in a computation to create a procedure
What is Functional Abstraction
Abstraction with disreagard to the computational method which creates a function which only necessitates the number, order and type of inputs to get the results
What is the key distinction between Functional and Procedural Programming
In functional the particular computational method is hidden