-
-
This is the view of the generator after running the jar file.
-
After all parameters have been selected or input, the generator outputs the code.
-
If the code is too long for the output box, click the "Expand" button for a full view.
-
Clicking the "Export as .txt file" button will write a file with the generated code.
-
The output box notifies you when the file is written, and where it can be found on your computer.
-
You can create a lab for students to become more familiar with the selected data structure by clicking the "Generate Custom Lab" button.
-
The output box notifies you when the file is written, and where it can be found on your computer.
Inspiration
While learning about array lists last year the first step in a lab we were given was to create an ArrayList with some given data and it was a pain typing everything out with the right formatting. This tool is a result of that twinge of annoyance. When I got to thinking about what else could be done with custom data I realized our application could be used in an educational context to to create custom labs.
What it does
This tool can be used to convert data into data structures for easy copy and paste to avoid the hassle of typing. Simply input text, select parameters, and press the "Generate" button. It can also be used to create custom Java labs based on the input data and parameters. Computer Science teachers can easily create multiple forms of randomized Java labs to prevent cheating and file sharing among students by pressing the "Generate Custom Lab" button. We also coded sample answers to labs for each data structure available in the "Sample Answers" folder in the GitHub repo.
How we built it
We made a Java Swing GUI that references two classes we created. One class converts the input text and parameters into a data structure and the other uses those same inputs to create custom randomized Java labs.
Challenges we ran into
While creating the custom labs we had to make sure the names of the files weren't the same as previously generated versions. Additionally, completing the GUI was challenging because we were unfamiliar with how to do so.
Accomplishments that we are proud of
A completed GUI with functional buttons, drop-down menus, and input fields
What We learned
Java GUI and file creation/manipulation
What's next for Data Structure Generator
We would like to expand the types of Java Data Structures that our program can handle and add compatibility for Data Structures in other programming languages such as Python.
Log in or sign up for Devpost to join the conversation.