• Media type: E-Article
  • Title: Teaching quality object-oriented programming
  • Contributor: Feldman, Yishai A.
  • imprint: Association for Computing Machinery (ACM), 2005
  • Published in: Journal on Educational Resources in Computing
  • Language: English
  • DOI: 10.1145/1101670.1101671
  • ISSN: 1531-4278
  • Keywords: General Computer Science
  • Origination:
  • Footnote:
  • Description: <jats:p>Computer science students need to learn how to write high-quality software. An important methodology for achieving quality is design-by-contract, in which code is developed together with its specification, which is given as class invariants and method pre- and postconditions. This paper describes practical experience in teaching design-by-contract and other principles of object-oriented programming and design by a comprehensive set of programming exercises. These are implemented in Java, augmented with a design-by-contract tool. The conceptual gap between the theoretical principles taught in the course and the capabilities of this programming environment causes pedagogical problems; these problems and some solutions are discussed in this paper.</jats:p>