Abstraction (computer science)

In software, an abstraction provides access while hiding details that otherwise might make access more challenging.[1] It focuses attention on details of greater importance.[2][3] Examples include the abstract data type which separates use from the representation of data[4] and functions that form a call tree that is more general at the base and more specific towards the leaves.

  1. ^ Colburn, Timothy; Shute, Gary (5 June 2007). "Abstraction in Computer Science". Minds and Machines. 17 (2): 169–184. doi:10.1007/s11023-007-9061-7. ISSN 0924-6495. S2CID 5927969.
  2. ^ Kramer, Jeff (1 April 2007). "Is abstraction the key to computing?". Communications of the ACM. 50 (4): 36–42. doi:10.1145/1232743.1232745. ISSN 0001-0782. S2CID 12481509.
  3. ^ Ben-Ari, Mordechai (1 March 1998). "Constructivism in computer science education". ACM SIGCSE Bulletin. 30 (1): 257, 257–261. doi:10.1145/274790.274308. ISSN 0097-8418.
  4. ^ Liskov, Barbara (1 May 1988). "Keynote address - data abstraction and hierarchy". Addendum to the proceedings on Object-oriented programming systems, languages and applications (Addendum) - OOPSLA '87. Vol. 23. ACM. pp. 17–34. doi:10.1145/62138.62141. ISBN 0897912667. S2CID 14219043. {{cite book}}: |journal= ignored (help)