skip to main content
article

Using the BlueJ IDE in a data structures course

Published: 27 June 2005 Publication History

Abstract

This poster describes the use of the BlueJ Java IDE in a data structures course. The BlueJ IDE is an excellent tool for teaching programming using an objects-first approach. Learners are able to create, inspect and interact with instances of classes without the requirement to initiate a process with a main method. The ability to inspect 'live' objects can provide insights in specific areas of programming beyond the basic concepts. We have made use of BlueJ in an introductory course on data structures for students who have previously learned object oriented programming using BlueJ. The course deals with stacks, queues, lists, binary trees and graphs.Descriptions, diagrams, animations and simulations can all play a part in understanding the way in which these structures store and provide access to their data. However, interacting directly with actual objects which have been instantiated from code which the student has written can make the data structure much more tangible. The capability in BlueJ to inspect an object and to navigate object references to inspect associated objects allows a direct visual exploration of the internal representation of a data structure.For example, BlueJ allows the student to write a linked list class, create and populate an instance of the class, and visually inspect the nodes of the list. Object references can be followed from node to node to traverse the list. This experiment provides strong contrast with a visualization of the storage in an array list. The point can be emphasized that data structures with the same interface can have completely different internal representations.Similarly, a graph data structure is represented diagrammatically in terms of vertices joined by edges. However, there are a number of ways in which graphs can be represented internally, including adjacency lists and adjacency matrices. An adjacency list representation consists of a list of vertices, each of which is associated with a list of edges originating from that vertex. BlueJ allows visual exploration of such a structure, which can then be related back to the diagrammatic representation.Since BlueJ also allows API class instances to be inspected, the internal representations used by the Java Collections Framework classes can be explored.The poster shows examples of visual exploration of data structures with BlueJ. Further materials will be available at: http://hamilton.bell.ac.uk/datastructures.

Cited By

View all
  • (2020)Learning and Teaching Undergraduate Introductory Programming Courses in Java – The Use of an IDE VS Command Line2020 International Conference on Computational Science and Computational Intelligence (CSCI)10.1109/CSCI51800.2020.00184(992-997)Online publication date: Dec-2020
  • (2020)Student Adoption and Perceptions of a Web Integrated Development EnvironmentProceedings of the 51st ACM Technical Symposium on Computer Science Education10.1145/3328778.3366949(1172-1178)Online publication date: 26-Feb-2020
  • (2018)Backscatter as a Covert Channel in Mobile DevicesGetMobile: Mobile Computing and Communications10.1145/3229316.322932722:1(31-34)Online publication date: 25-May-2018
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM SIGCSE Bulletin
ACM SIGCSE Bulletin  Volume 37, Issue 3
September 2005
418 pages
ISSN:0097-8418
DOI:10.1145/1151954
Issue’s Table of Contents
  • cover image ACM Conferences
    ITiCSE '05: Proceedings of the 10th annual SIGCSE conference on Innovation and technology in computer science education
    June 2005
    440 pages
    ISBN:1595930248
    DOI:10.1145/1067445
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 27 June 2005
Published in SIGCSE Volume 37, Issue 3

Check for updates

Author Tags

  1. data structures
  2. java
  3. teaching

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)1
Reflects downloads up to 09 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2020)Learning and Teaching Undergraduate Introductory Programming Courses in Java – The Use of an IDE VS Command Line2020 International Conference on Computational Science and Computational Intelligence (CSCI)10.1109/CSCI51800.2020.00184(992-997)Online publication date: Dec-2020
  • (2020)Student Adoption and Perceptions of a Web Integrated Development EnvironmentProceedings of the 51st ACM Technical Symposium on Computer Science Education10.1145/3328778.3366949(1172-1178)Online publication date: 26-Feb-2020
  • (2018)Backscatter as a Covert Channel in Mobile DevicesGetMobile: Mobile Computing and Communications10.1145/3229316.322932722:1(31-34)Online publication date: 25-May-2018
  • (2018)The Tick Programmable Low-Latency SDR SystemGetMobile: Mobile Computing and Communications10.1145/3229316.322932622:1(26-30)Online publication date: 25-May-2018
  • (2018)When Mixed Reality Meets Internet of ThingsGetMobile: Mobile Computing and Communications10.1145/3229316.322932022:1(10-14)Online publication date: 25-May-2018
  • (2017)MetatationACM Transactions on Computer-Human Interaction10.1145/313160924:5(1-41)Online publication date: 13-Nov-2017
  • (2017)Technology Acceptance and User ExperienceACM Transactions on Computer-Human Interaction10.1145/312735824:5(1-30)Online publication date: 6-Oct-2017
  • (2014)Security, cybercrime, and scaleCommunications of the ACM10.1145/265484757:9(64-71)Online publication date: 1-Sep-2014
  • (2014)Securing the tangled webCommunications of the ACM10.1145/264313457:9(38-47)Online publication date: 1-Sep-2014
  • (2014)Privacy, anonymity, and big data in the social sciencesCommunications of the ACM10.1145/264313257:9(56-63)Online publication date: 1-Sep-2014
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media