|
ABSTRACT
This paper argues for a design driven approach to an object-oriented CS1-CS2 sequence in which object-orientation is thematic. Our approach integrates several components: (i) a strong object-oriented approach, (ii) design using UML, (iii) design patterns to manage complexity, and (iv) complex examples and projects to motivate the use of object-orientation and to motivate students by solving non-trivial problems. While this is a "programming-first" approach to CS1-CS2, it addresses several disadvantages of programming-first approaches noted in CC2001 [7]. The approach focuses on design rather than syntax, so students do not lose sight of the forest for the trees. We use (relatively speaking) large and complex examples, especially in the CS2 course, which allows us to address in a meaningful way issues of programming in the large. Because the approach is design driven and heavily object oriented, the course is not biased against novices in favor of students with prior programming experience, since CS1 students with prior programming experience typically have no design experience and only procedural programming experience.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
Owen Astrachan , Garrett Mitchener , Geoffrey Berry , Landon Cox, Design patterns: an essential component of CS curricula, Proceedings of the twenty-ninth SIGCSE technical symposium on Computer science education, p.153-160, February 26-March 01, 1998, Atlanta, Georgia, United States
|
 |
2
|
|
| |
3
|
Casperson, Michael E., Michael Killing and John Rosenberg. Teaching Introductory Object-Oriented Programming with Java - Dangers, Traps and a Road Map. Workshop at the ACM SIGCSE Symposium, 2001.
|
| |
4
|
Dahl, Ole-Johan and Kristen Nygaard. How Object-Oriented Programming Started. Available on-line at http://www.ifi.uio.no/kristen/FORSKNINGSDOK_MAPPE/F_00_start.html
|
| |
5
|
Duvall, Robert, Matthew Chotin, Michelle Neuringer, David Goldberg and Andy van Dam. Object-Oriented Programming Chapters (draft). Available on-line at http://www.cs.brown.edu/courses/cs015/2001/Chapters/contents.html
|
| |
6
|
|
| |
7
|
The Joint Task Force on Computing Curricula (IEEE Computer Society and Association for Computing Machinery). Computing Curricula 2001 (final report), December 2001. Available on-line at http://www.computer.org/education/cc2001/final
|
 |
8
|
|
| |
9
|
Nguyen, Dung and Stephen Wong. OOP in Introdutory CS: Better Students through Abstraction. Fifth Workshop on Pedagogies and Tools for Assimilatng Object-Oriented Concepts, OOPSLA, 2001. Available on-line at http://exciton.cs.rice.edu/research/OOPSLA01/
|
| |
10
|
Nygaard, Kristen. Invited talk given at OOPSLA 2001.
|
| |
11
|
|
 |
12
|
|
CITED BY 26
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Christopher Egert , Kevin Bierre , Andrew Phelps , Phil Ventura, Hello, M.U.P.P.E.T.S.: using a 3D collaborative virtual environment to motivate fundamental object-oriented learning, Companion to the 21st ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications, October 22-26, 2006, Portland, Oregon, USA
|
|
|
Phil Ventura , Christopher Egert , Adrienne Decker, Ancestor worship in CS1: on the primacy of arrays, Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications, October 24-28, 2004, Vancouver, BC, CANADA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Carl Alphonce , Blake Martin, Green: a customizable UML class diagram plug-in for eclipse, Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, October 16-20, 2005, San Diego, CA, USA
|
|
|
|
|
|
Carl Alphonce , Blake Martin, Green: a customizable UML class diagram plug-in for eclipse, Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, October 16-20, 2005, San Diego, CA, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|