We are freshmen at Homestead High School and are currently taking a JAVA class, where we utilize the Eclipse IDE to develop projects. We are all extremely passionate coders, and are taking AP Comp Sci next year. We chose to base this project off of libraries, because they foster education through youth development, and by doing this, we are lending a helping hand to a nonprofit organization that helped us all once.
What it does
The program tracks library books and borrowers (students or teachers) that are in a school. Every member has their own information recorded for first name, last name, status (student or teacher), books checked out, book limit, time limit, fine owed. A master report can be created to track the issuance of books for all members, and provides all the information. The report can be printed to a connected printer or exported as an excel .xls file to the desktop for convenience.
How we built it
We used the Eclipse Oxygen IDE, as we are most familiar in working in such an environment, but for this project we wanted a GUI, so we chose Scenebuilder by Gluon, a simple, user friendly program to develop the UIE. For this program, we went through a tutorial from code.makery.ch and based off of that, we decided to create this library program. We split the project into 3 main packages: One for the main class with all launchers; Another for all object classes (members and books); A last one for view (all GUI files with their respective controller classes to code for all actions taken and buttons pressed).
Challenges we ran into
Debugging. There were an unimaginable amount of errors, as we are all new to the JavaFx libraries, and had to do a lot of research in order to completely understand and utilize the methods and classes. We also had to learn CSS Styling, which is how we gave the program the smooth black and green look it has now, with everything from selecting a row in the reports, to the color of a button when the mouse is hovering over it.
Accomplishments that we're proud of
We are really proud that we could have coded such an application, that could really help an organization on a large scale. We are glad to be contributing to such a cause through means of the new technology.
What we learned
New JavaFx libraries and commands, of course, but also how to work in a team and time management. This environment has helped us, being in such a technological environment. Most importantly, we learned how even small programs like this can be turned into something that could benefit the real world. Also, we learned how to troubleshoot!
What's next for the library database program
This program can be expanded upon and easily edited, creating storage programs for bank loans, refugee camps, or just inventory in general. We believe that this program has the power to help millions, if edited correctly, because it lays the groundwork for more complex solutions that could be beneficial to aiding some of the world's problems. We are just freshmen in high school, so I believe that with a few more years of education and research, we can take this program and implement essential features for a large-scale solution.