title: Abstraction VS Information Hiding VS Encapsulation
body: <p>Can you tell me what is the difference between <strong>abstraction</strong> and <strong>information hiding</strong> in software development?</p>
  
  <p>I am confused. Abstraction hides detail implementation and
  information hiding abstracts whole details of something.</p>
  
  <p><strong>Update:</strong> I found a good answer for these three concepts. <a href="https://stackoverflow.com/a/8694874/240733">See the separate answer below</a> for several citations taken from <a href="http://web.archive.org/web/20080906224409/http://www.itmweb.com/essay550.htm" rel="noreferrer">there</a>.</p>