In this project, you will design software for a smart coffee machine that allows users to make various decisions according to their preferences.
Note: The main objective of the project is to explore different ways of designing. By implementing concepts such as Interface, Abstract Class, and Enum, I aim to gain practical experience in software design. Therefore, let's strive to apply the fundamental concepts of Object-Oriented Programming (OOP), including Inheritance, Abstraction, Polymorphism, and Encapsulation.
- Americano
- Espresso
- Cappucino
- Latte
- Mocha
- Macchiato
- Affogato
- Iced BaseCoffee (Cold Brew)
- Frappuccino (Cold BaseCoffee)
- IrishCoffee BaseCoffee
These coffee types represent the variety of options that your smart coffee machine should be able to prepare.