(1) In programming, the process of hiding details of an
object or
function. Information hiding is a powerful programming technique because it reduces complexity. One of the chief mechanisms for hiding information is
encapsulation -- combining elements to create a larger entity. The programmer can then focus on the new object without worrying about the hidden details. In a sense, the entire
hierarchy of
programming languages -- from
machine languages to
high-level languages -- can be seen as a form of information hiding.
Information hiding is also used to prevent programmers from changing --- intentionally or unintentionally -- parts of a program.
(2) Another term for digital watermarking.