Difference between revisions of "Information hiding"
From Wiki @ Karl Jones dot com
Karl Jones (Talk | contribs) (Created page with "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 protec...") |
Karl Jones (Talk | contribs) |
||
Line 5: | Line 5: | ||
== Description == | == 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). | + | The protection involves providing a stable [[Interface (computer science)|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. | + | Written another way, information hiding is the ability to prevent certain aspects of a [[Class (computer science)|class]] or [[software component]] from being accessible to its [[Client (computing)|clients]], using either [[programming language]] features (like private variables) or an explicit exporting policy. |
== See also == | == See also == | ||
Line 13: | Line 13: | ||
* [[Compartmentalization (information security)]] | * [[Compartmentalization (information security)]] | ||
* [[Implementation inheritance]] | * [[Implementation inheritance]] | ||
+ | * [[Interface (computer science)]] | ||
* [[Inheritance semantics]] | * [[Inheritance semantics]] | ||
* [[Law of Demeter]] | * [[Law of Demeter]] |
Revision as of 07:09, 28 April 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 (programming)
- Separation of concerns
- Transparency (human–computer interaction)
- Virtual inheritance
External links
- Information hiding @ Wikipedia