Challenge: MVP Pattern
In this challenge, you have to implement the MVP pattern to solve the given problem.
We'll cover the following
Problem statement
In this challenge, you need to implement sending and displaying a sent email using the MVP pattern. You have already been given the dummy code for the classes you need to implement.
The Model
class should contain the following:
-
The properties: sender’s name, receiver’s name, and the email title
-
The get and set functions to access and set the values of each property
In the View
class, you need to do the following:
- Define the
sendEmail
function to send an email
In the Presenter
class, you need to do the following:
-
Define the
setModel
function that sets the model -
Define the
getView
function to return the view -
Define the
sendEmail
function that sets the properties of the email and displays the email information
Input
The sendEmail
function is called
Output
The information of the email is displayed
Sample input
var model = new Model()
var view = new View()
var presenter = new Presenter(view)
presenter.setModel(model)
view.registerWith(presenter)
presenter.getView().sendEmail("Rachel", "Joey", "Rent Discussion")
presenter.getView().sendEmail("Monica", "Phoebe", "Smelly Cat Draft")
Sample output
"Email From: Joey To: Rachel Title: Rent Discussion"
"Email From: Phoebe To: Monica Title: Smelly Cat Draft"
Level up your interview prep. Join Educative to access 80+ hands-on prep courses.