Problem Statement
Design OO food delivery app catering to use cases -
-
User can search different restaurant
-
User can select a restaurant
-
User sees a menu
-
Restaurant can change the menu any time
-
User adds an item from menu
-
User orders the food
-
User can track the order in real time
-
User can cancel the order
-
User pays for the order
-
Calculation of Tax based on the type of Restraunt
Soulution:
Design Patterns involved in the design of this app:
-
Builder Design Pattern (For adding food item and ordering)
-
Interpreter Design Pattern (User can Search Different restaurant)
-
Iterator Pattern (User Sees Menu)
-
Observer Pattern (Track an order in Real Time)
-
(Command Design Pattern) Order and cancellation of Food
-
(Strategy Design Pattern) Calculation of Tax based on the type of Restraunt