Project

Coffee Machine (Go)

Medium
491 completions
~ 6 hours
4.5

This project allows you to get a taste of Go. Practice working with functions, challenge yourself with loops and conditions, and get more experience with Go.

Provided by

JetBrains Academy JetBrains Academy

About

What can be better than a cup of coffee during a break? Two cups. Press a couple of buttons on the machine, and, voilà, a burst of raw energy is in your hands. But first, we should teach the machine how to do it. In this project, you will work on a coffee machine simulator. This machine uses regular ingredients — coffee, milk, and plastic cups. Should it run out of something, it will show you a notification. Our device will serve espresso, cappuccino, and latte. And since nothing is for free, it will also charge coffee lovers for a cup.

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:
Write a program that puts some basic information on the screen. Let the machine describe what it takes to make a cup of coffee!
The machine should calculate how many ingredients it needs to make the required amount of coffee.
Program the machine to calculate how many cups it can make based on the number of set ingredients.
Teach your virtual coffee machine to perform three basic actions: collect the money, replenish the supplies, and serve the coffee.
Program the machine to display how many supplies it has on the screen. Work on the main loop: now, the menu keeps updating until users choose to exit.
Enhance your coffee machine with any new functionality you wish to add.

Reviews

eomy avatar
eomy
4 months ago
This project demand basic function of go, but combine and use properly those is uneasy challenge for me. Through this project, I could grow my skills!
Aleksei Balaian avatar
Aleksei Balaian
7 months ago
Много новой теории о Golang.Было полезно поработать с указателями.
User 295761623 avatar
User 295761623
9 months ago
This was a good practice for using methods, multiple different custom types, maps and beloved iota (-:

4.5

Learners who completed this project within the Go Developer course rated it as follows:
Usefulness
4.5
Fun
4.5
Clarity
4.5