Skip to content

gmershad/FoodDelivery

Repository files navigation

Problem Statement


Design OO food delivery app catering to use cases -

  1. User can search different restaurant

  2. User can select a restaurant

  3. User sees a menu

  4. Restaurant can change the menu any time

  5. User adds an item from menu

  6. User orders the food

  7. User can track the order in real time

  8. User can cancel the order

  9. User pays for the order

  10. Calculation of Tax based on the type of Restraunt


Soulution:

Design Patterns involved in the design of this app:

  1. Builder Design Pattern (For adding food item and ordering)

  2. Interpreter Design Pattern (User can Search Different restaurant)

  3. Iterator Pattern (User Sees Menu)

  4. Observer Pattern (Track an order in Real Time)

  5. (Command Design Pattern) Order and cancellation of Food

  6. (Strategy Design Pattern) Calculation of Tax based on the type of Restraunt

img

img

img

img