Що таке архітектурний патерн MVC?
Model-View-Controller розділяє відповідальності.
Компоненти
Model: Дані та бізнес логіка
javascript
class UserModel {
async getUser(id) {
return await db.users.findById(id);
}
async updateUser(id, data) {
return await db.users.update(id, data);
}
}View: UI/Презентація
javascript
function UserView({ user }) {
return (
<div>
<h1>{user.name}</h1>
<p>{user.email}</p>
</div>
);
}Controller: Обробляє input
javascript
class UserController {
constructor(model, view) {
this.model = model;
this.view = view;
}
async showUser(id) {
const user = await this.model.getUser(id);
this.view.render(user);
}
}Коротка відповідь
Для співбесідиPremium
Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.