1995
DOI: 10.1145/216922.216928
|View full text |Cite
|
Sign up to set email alerts
|

The top 10 reasons why OOP can't be taught in CS1

Abstract: Over the past year we have changed our CS 1 course from a standard Pascal-based, procedural programming course into one that emphasizes C++ and object-oriented programming (OOP). While our experience to date indicates that this was a good decision for both our students and our department, the decision did not come easy. We struggled long and hard with many, if not most, of the questions and issues that have come to be associated with teaching OOP to undergraduates. This paper recounts our struggles, and presen… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

0
4
0

Year Published

2004
2004
2012
2012

Publication Types

Select...
3
2

Relationship

0
5

Authors

Journals

citations
Cited by 6 publications
(4 citation statements)
references
References 2 publications
0
4
0
Order By: Relevance
“…There is as much literature discussing the value of teaching within one paradigm or another as literature discussing language choice (for example [7,8,9,10,12,19,24]). Certainly, if such an approach is necessary, then the results presented here must be qualified according to the instructor's choice of paradigm.…”
Section: Language Comparisonmentioning
confidence: 99%
“…There is as much literature discussing the value of teaching within one paradigm or another as literature discussing language choice (for example [7,8,9,10,12,19,24]). Certainly, if such an approach is necessary, then the results presented here must be qualified according to the instructor's choice of paradigm.…”
Section: Language Comparisonmentioning
confidence: 99%
“…Most reference text will try to cover as much material as possible, and the student faces a hard time trying to filter out what is needed and ignoring all of the other information. [3] C++ C++ derives both its popularity and problems from C, since it is so deeply rooted in it. C++ adds several powerful features to C, such as templates and object orientation, but these are seldom of relevance to the novice programmer.…”
Section: Object Oriented Programmingmentioning
confidence: 99%
“…However, a problem that could not be overlooked was still apparent: several students seemed to face difficulties in deeply comprehending the fundamental concepts of OOP. This was partly attributed to the fact that students were introduced in the 2nd semester to procedural programming with C. Several researchers have pointed out that students face more difficulties when moving from imperative/procedural programming to OOP (Decker & Hirshfield, 1994;Hadjerrouit, 1998;Tempte, 1991;Wick, 1995). Hadjerrouit (1998Hadjerrouit ( , 1999 mentions that students with prior experience in procedural languages face difficulties with OOP concepts during their introduction to Java, and specifically with making good use of the various OOP concepts/constructs that-as a result-are used in a procedural-like manner.…”
Section: Introductionmentioning
confidence: 99%