Centralized mindset: a student problem with object-oriented programming
SIGCSE '95 Proceedings of the twenty-sixth SIGCSE technical symposium on Computer science education
Avoiding object misconceptions
SIGCSE '97 Proceedings of the twenty-eighth SIGCSE technical symposium on Computer science education
A survey of software inspection checklists
ACM SIGSOFT Software Engineering Notes
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
Programming in Java: student-constructed rules
Proceedings of the thirty-first SIGCSE technical symposium on Computer science education
A content analysis of programming examples in high school computer textbooks in Taiwan
Journal of Computers in Mathematics and Science Teaching
Technical opinion: Hello, world considered harmful
Communications of the ACM
Object-Oriented Design Heuristics
Object-Oriented Design Heuristics
Primitive types in Java considered harmful
Communications of the ACM - Evolving data mining into solutions for insights
The Elements of Java Style
Object-Oriented Program Comprehension: Effect of Expertise, Task and Phase
Empirical Software Engineering
Product metrics for object-oriented systems
ACM Computing Surveys (CSUR)
A theory of small program complexity
ACM SIGPLAN Notices
Examples that can do harm in learning programming
OOPSLA '04 Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Dataless objects considered harmful
Communications of the ACM - Medical image modeling
Communications of the ACM - Transforming China
A study of the difficulties of novice programmers
ITiCSE '05 Proceedings of the 10th annual SIGCSE conference on Innovation and technology in computer science education
Java interfaces in CS 1 textbooks
Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applications
Object-Oriented Programming in Python
Object-Oriented Programming in Python
Checklists for grading object-oriented CS1 programs: concepts and misconceptions
Proceedings of the 12th annual SIGCSE conference on Innovation and technology in computer science education
Evaluating OO example programs for CS1
Proceedings of the 13th annual conference on Innovation and technology in computer science education
ICER '08 Proceedings of the Fourth international Workshop on Computing Education Research
C++ how to program, sixth edition
C++ how to program, sixth edition
Developing a common format for sharing programming assignments
ACM SIGCSE Bulletin
Java Programming
Absolute Java
Java Programming: From The Ground Up
Java Programming: From The Ground Up
Introduction to Programming and Object-Oriented Design Using Java
Introduction to Programming and Object-Oriented Design Using Java
Java Programming: Guided Learning with Early Objects
Java Programming: Guided Learning with Early Objects
Big Java
Ray tracing as an object-oriented example for CS 1
Journal of Computing Sciences in Colleges
An introduction to program comprehension for computer science educators
Proceedings of the 2010 ITiCSE working group reports
Concept specification maps: displaying content structures
Proceedings of the 18th ACM conference on Innovation and technology in computer science education
Hi-index | 0.00 |
Research shows that examples play an important role for cognitive skill acquisition. Students as well as teachers rank examples as important resources for learning to program. Therefore examples must be consistent with the principles and rules of the topics we are teaching. However, educators often struggle to find or develop objectoriented example programs of high quality. Common examples are often perceived as not fully faithful to all principles and guidelines of the object-oriented paradigm, or as not following general pedagogical principles and practices. Unless students are able to engage with good examples, they will not be able to tell desirable from undesirable properties in their own and others' programs. In this paper we report on a study in which experienced educators reviewed a wide range of object-oriented examples for novices from popular textbooks. This review was accomplished using an on-line checklist that elicited responses on 10 quality factors. Results show that the evaluation instrument provides a sufficiently consistent set of responses to distinguish examples. The paper then goes on to examine some of the characteristics of good and bad examples and how this study will influence the evolution of the evaluating instrument.