Adding support for language levels to DrJava
Hsia, James I.
Cartwright, Robert S.
Master of Science
This thesis describes the design and implementation of language levels, a pedagogic tool that helps students progressively learn object-oriented programming concepts in discrete stages. While Java is widely used in academia, its complex syntax and large array of constructs are difficult for beginning students to learn. The language levels facility supports a hierarchy of progressively sophisticated subsets of the language. This progression minimizes the clerical burden involved in learning to write Java programs and reinforces the specific abstractions taught at each stage of Rice introductory programming curriculum. In addition, the hierarchy of language levels reduces code clutter by automatically generating routine methods. This language levels facility has been implemented as an extension of DrJava, a pedagogic programming environment for Java developed at Rice University. We anticipate that this extension will enable more students to learn Java and master the principles of object-oriented programming.