OOPSLA '04

Program
Technical Program
  Invited Speakers
  Technical Papers
  Onward!
  Panels
  Practitioner Reports
  Tutorials
Workshops
DesignFest
Educators' Symposium
Demonstrations
Posters
Doctoral Symposium
Exhibits
Student Research Comp.
FlashBoF
 
Turing Lecture
 
Social Events
 
Week at a Glance
 
Final Program (1.5M .pdf)

Find in Program
 

Page
Printer-friendly

Basket
view, help
Object-Oriented Programming, Systems, Languages and Applications
Home    Program    Housing & Transportation    Registration    Submissions    Wiki    Maps
 
  > Educators' Symposium

 : Monday

New Ideas for Old Problems

Ballroom C
Monday, 10:30, 1 hour 30 minutes
 


 
7·8·9·10·11·12·13·14·15·16·17·18·19·20·21

"Objects First, Interfaces Next" or Interfaces before Inheritance
Axel Schmolitzky
University of Hamburg
schmolitzky@acm.org

Objects first is a pedagogy that tries to introduce the core concepts of object-oriented programming—classes, objects, and methods—as early as possible in a programming course, even before variables, types, assignments and control structures are explicitly introduced. The concept of a named interface is typically introduced at a much later stage, usually in connection with inheritance, polymorphism, and abstract classes. In this paper we point out that interfaces as a language mechanism can be introduced much earlier, even before inheritance. This way the concept of an explicit class interface can be decoupled from the more complicated issues of inheritance and subtype-polymorphism.



Ancestor Worship in CS1: On the Primacy of Arrays
Phil Ventura
State University of West Georgia
pventura@westga.edu

Christopher Egert
University at Buffalo, SUNY
egert@cse.buffalo.edu

Adrienne Decker
University at Buffalo, SUNY
adrienne@cse.buffalo.edu

History has given us the array as the fundamental data structure to present to students within the CS1 curriculum. However, with the recent growth in popularity of object-oriented languages for CS1 (C++, Java, C#), and with that, the acceptance of the Objects-First or Objects-Early approach to teaching CS1, it becomes imperative that we re-evaluate our long-held beliefs about what is appropriate to teach. It is our position that the first data structure that students are exposed to should not be arrays, but rather some other form of collection. We will give some examples of how to use java.util.HashMap and some of the other Java Collections classes in substitution of arrays. We also present data concerning the academic performance of students using arrays versus those using Java Collections for CS1 lab exercises.



greenfoot: Combining Object Visualisation with Interaction
Michael Kölling
University of Southern Denmark
mik@mip.sdu.dk

Poul Henriksen
University of Southern Denmark
polle@mip.sdu.dk

The introduction of programming education with object-oriented languages slowly migrates down the curriculum and is now often introduced at the high school level. This migration requires teaching tools that are adequate for the intended target audience. In this paper, we present a new tool, named greenfoot, for teaching object-oriented programming aimed at students at or below college level, with special emphasis of supporting school age learners. Greenfoot was designed by analysing and combining the most beneficial aspects of several existing tools. It aims at combining the simplicity and visual appeal of microworlds with much of the flexibility and interaction of BlueJ. To achieve its goals of providing a suitable learners? environment, greenfoot provides a meta-framework that allows easy creation of different, significantly varied microworlds.



Activity Session: Predicting the Future of OO Teaching by Inventing It
Details to follow...