Using a restricted subset of Java in the first part of CS1

Gerald A. Shultz · Journal of computing sciences in colleges · 2007

Despite the elegance and relative simplicity of Java, using it as a first programming language is still a daunting task. In a typical CS1 text, a large number of features of Java are covered in detail in a breadth-first fashion while the author struggles with whether to introduce objects early or late. An alternative is to use a well-defined, simpler initial subset of Java for the first part of the course, allowing for coverage of the core concepts of both object-oriented and procedural programming, and then to fill in further details later. One possible implementation of this idea is the Reduced Initial Subset of Java (RisoJava) language. RisoJava has the additional benefit that it can be directly translated into the JBoxes system, allowing students to see a concrete semantic model of RisoJava programs, both their own and examples provided by the instructor. Instead of using a large number of predefined Java classes, RisoJava provides a small collection of classes that are nonetheless powerful enough to allow for interesting programming examples and exercises in the first part of the CS1 course. Anecdotal experience suggests that this approach is feasible, and is perhaps especially valuable for non-CS majors in the CS1 course.

Read the paper · More papers on PaperTik