Project

Meal Planner (Java)

Challenging
624 completions
~ 36 hours
4.3

Aside from creating a practically useful tool, you will learn about relational databases, SQL, file operations, and arrays.

Provided by

JetBrains Academy JetBrains Academy

About

Every day, people face a lot of difficult choices: for example, what to prepare for breakfast, lunch, and dinner? Are the necessary ingredients in stock? With the Meal Planner, this can be quick and painless! You can make a database of categorized meals and set the menu for the week. This app will also help create and store shopping lists based on the meals so that no ingredient is missing.

Training project icon

Training project

This project allows you to practice and strengthen your coding skills, helping you get ready for more advanced tasks ahead.

What you'll learn

Once you choose a project, we'll provide you with a study plan that includes all the necessary topics from your course to get it built. Here’s what awaits you:
Create a menu that allows you to add new meals, show them, and quit the program.
Improve your program so that it stores all the meals in the database and allows you to access them even after you close and reopen the app.
Work on the “show” command: add the ability to display the meals by the chosen category.
It’s time to plan meals for the whole week! With the new "plan" command, your app should be able to help the user plan their daily meals based on the saved options.
Finally, your app should generate a shopping list containing all the required ingredients for the planned meals and save this list to the file together with the weekly plan.

Reviews

Pavel Utkin
1 month ago
I repeated topics about work with files and learned a lot about databases. This project was fun!
Muzani avatar
Muzani
2 months ago
Learned about JDBC, postgresql, writing to files. Good project to first learn connecting and using a database.
Dylan Kalb avatar
Dylan Kalb
3 months ago
I learned much about using Postgresql(as I had not had practical experience with it beforehand) and not only did I learn to use connections (and close them) and the importance of prepared statements, but I also had a much-needed review of reading and writing to and from files!

4.3

Learners who completed this project within the Java Desktop Application Developer course rated it as follows:
Usefulness
4.6
Fun
4.3
Clarity
4.2