Revision as of 23:09, 8 August 2009 by Matthew Harward (Talk | contribs)
Abstraction is a term widely used in computer science to represent a number of related concepts. Most commonly this is:
- The mechanism and practice of reducing and factoring out details so that one can focus on a few concepts at a time.
- Something (be it a class, component, idea) that is not related to a concrete instance.
- A simplification of something more complicated to hide unnecessary information.
- The process of considering something independently of its associations, attributes, or concrete accompaniments.
|Techniques: Abstraction | Aggregation versus Composition | Association versus Dependency | Coupling | Encapsulation | Information hiding | Inheritance | Multiple Inheritance | Overloading | Polymorphism
Features: Abstract class | Class versus Object | Component versus Module | Instance | Interface | Method | Package versus Namespace | Superclass | Subclass