Skip to main navigation Skip to search Skip to main content

Using graphics to support the teaching of fundamental object-oriented principles in CS1

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

24 Scopus citations

Abstract

Teaching object-oriented programming in CS1 is hard. Keeping the attention of CS1 students is perhaps even harder. In our experience the former can be done successfully with very satisfying results by focusing on the fundamental principles of object-orientation, such as inheritance, polymorphism and encapsulation. The latter can be done by having students create graphical event-driven programs. Care must be taken, however, since teaching graphics can easily distract students and certainly takes time away from the fundamentals being taught. We use Java as a vehicle for OO instruction, but rather than expose CS1 students to the intricacies of Swing we employ an elegant and small graphics package called NGP. NGP allows students to create event-driven graphical programs using only inheritance and method overriding. We describe how we use NGP to enhance rather than detract from our teaching of fundamental OO principles.

Original languageEnglish
Title of host publicationCompanion of the 18th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA'03
Pages156-161
Number of pages6
DOIs
StatePublished - 2003
Event18th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA'03 - Anaheim, CA, United States
Duration: Oct 26 2003Oct 30 2003

Publication series

NameProceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications, OOPSLA

Conference

Conference18th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA'03
Country/TerritoryUnited States
CityAnaheim, CA
Period10/26/0310/30/03

Keywords

  • CS1
  • Graphics
  • Java
  • NGP
  • Object-orientation

Fingerprint

Dive into the research topics of 'Using graphics to support the teaching of fundamental object-oriented principles in CS1'. Together they form a unique fingerprint.

Cite this