Difference between revisions of "Information hiding"

From Wiki @ Karl Jones dot com
Jump to: navigation, search
(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...")
 
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.

See Separation of concerns.

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

External links