✍️
Team FitBob
  • Introduction and Foreword
  • Motivation
  • Features
  • Tech Stack
  • Software Engineering Practices
    • Requirements
    • Software Design Patterns
      • Model View Controller (MVC)
      • Abstraction Occurrence Pattern
  • Deployments
    • Trying Our App
  • Activity diagram
  • Frontend
    • Login
    • User Registration
    • Client Screens
      • Client Dashboard
      • Client Profile
      • Eating History
      • Meals
    • Personal Trainer screens
      • Personal Trainer Profile
      • Personal Trainer Dashboard
        • Clients
        • Meal plans
        • Meals
    • Recipe screens
    • Search screen
    • Searching for Restaurants
    • Notes on BeautifulSoup and Flask
    • Request/Success/Failure Cycle
  • Backend
    • Notes on Django
    • API
    • Entity relationship diagram
  • Testing
    • User Testing
    • Backend
  • Project Limitations and Constraints
  • Closing Thoughts.
  • Project log
  • Poster
Powered by GitBook
On this page

Was this helpful?

  1. Software Engineering Practices
  2. Software Design Patterns

Model View Controller (MVC)

Decoupling the user interface from the control logic and data.

PreviousSoftware Design PatternsNextAbstraction Occurrence Pattern

Last updated 3 years ago

Was this helpful?

Oftentimes in our application, the actions taken by the user require some data to be fetched/updated from the backend.

For example, when the user creates a new food item, the app will have to:

  1. Send the data associated with the new food item to our backend server.

  2. Wait for the new food item to be created in our database.

  3. Bring the user back the page where he views the list of food items available.

  4. Update the list of food items to include the one that was newly created.

The following diagrams illustrates how this functionality is handled in our application.