King's College London

Research portal

Usage of the Java Language by Novices over Time: Implications for Tool and Language Design

Research output: Chapter in Book/Report/Conference proceedingConference paperpeer-review

Pierre Weill-Tessier, Alexandra Lucia Costache, Neil Brown

Original languageEnglish
Title of host publication SIGCSE '21: Proceedings of the 52nd ACM Technical Symposium on Computer Science Education
PublisherAssociation for Computing Machinery
Pages328-334
Number of pages7
Edition2021
ISBN (Print)9781450380621
Published13 Mar 2021

Documents

  • SIGCSE2021

    SIGCSE2021.pdf, 411 KB, application/pdf

    Uploaded date:22 Mar 2021

    Version:Accepted author manuscript

King's Authors

Abstract

Java is a popular programming language for teaching at university level. BlueJ is a popular tool for teaching Java to beginners. We provide several analyses of Java use in BlueJ to answer three questions: what use is made of different parts of Java by beginners when learning to program; how has this pattern of use changed between 2013 and 2019 in a longstanding language such as Java; and to what extent do beginners follow the specific style that BlueJ is designed to guide them into? These analyses allow us to see what features are important in object-oriented introductory programming languages, which could inform language and tool designers -- and see to what extent the design of these programming tools can have an effect on the way the language is used. We find that many beginners disobey the guidelines that BlueJ promotes, and that patterns of Java use are generally stable over time -- but we do see decreased exception use and a change in target application domains away from GUI programming towards text processing. We conclude that programming languages for novices could have fewer built-in types but should retain rich libraries.

View graph of relations

© 2020 King's College London | Strand | London WC2R 2LS | England | United Kingdom | Tel +44 (0)20 7836 5454