Difference between revisions of "Information hiding"
From Wiki @ Karl Jones dot com
Karl Jones (Talk | contribs) |
Karl Jones (Talk | contribs) (→See also) |
||
Line 18: | Line 18: | ||
* [[Modularity (programming)]] | * [[Modularity (programming)]] | ||
* [[Opaque data type]] | * [[Opaque data type]] | ||
− | * [[Scope ( | + | * [[Scope (computer science)]] |
* [[Separation of concerns]] | * [[Separation of concerns]] | ||
* [[Transparency (human–computer interaction)]] | * [[Transparency (human–computer interaction)]] |
Latest revision as of 08:25, 24 August 2016
In computer science, information hiding is the principle of segregation of the design decisions in a computer program that are most likely to change, thus protecting other parts of the program from extensive modification if the design decision is changed.
Description
The protection involves providing a stable interface which protects the remainder of the program from the implementation (the details that are most likely to change).
Written another way, information hiding is the ability to prevent certain aspects of a class or software component from being accessible to its clients, using either programming language features (like private variables) or an explicit exporting policy.
See also
- Compartmentalization (information security)
- Implementation inheritance
- Interface (computer science)
- Inheritance semantics
- Law of Demeter
- Modularity (programming)
- Opaque data type
- Scope (computer science)
- Separation of concerns
- Transparency (human–computer interaction)
- Virtual inheritance
External links
- Information hiding @ Wikipedia