Formation Symfony 3

Mohamed IDBRAHIM

MVC

Mohamed IDBRAHIM

C'est quoi ?

MVC

Mohamed IDBRAHIM

C'est quoi un MVC ?

  • Model View Controller.
  • Architecture logique sous forme d'un Design Pattern.
  • Le Design Pattern le plus utilisé.
  • Sépare les fonctionnalités de l'application.
  • Sorte d'organisation.

Mohamed IDBRAHIM

Framework utilise MVC

Laravel

Symfony

Codeigniter

Yii

CakePHP

Zend

Sinatra

Ruby & Rails

Django

Flesk

Angular

Express

Mohamed IDBRAHIM

Model

  • Représente une table.
  • Interagir avec la base de données (Select, Insert, Update, Delete). 
  • Communiquer avec le contrôleur.

Mohamed IDBRAHIM

View

  • Représentation HTML & CSS.
  • Communique avec le Contrôleur.
  • Recevoir les données depuis le contrôleur.
  • Moteur de template (Twig, Blade, Smarty).

Mohamed IDBRAHIM

Controller

  • Recevoir et traiter les données depuis (View, Url).
  • Représenter le code métier de l'application.
  • Récupèrer les données avec le model.
  • Passer les données vers la vue.

Mohamed IDBRAHIM

View

Controller

Router

Model

Database

Browser

User

Mohamed IDBRAHIM

<?php
//Exemple de code contrôleur
class SiteController extends Controller
{
    public function indexAction()
    {
        return $this->render('AppBundle:Default:index.html.twig', $data);
    }
}

Exemple de code

//Exemple d'une Route
site_home:
    path:      /site
    defaults: { _controller: AppBundle:Site:index }
//Exemple de view
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        <title>{% block title %}Welcome!{% endblock %}</title>
        {% block stylesheets %}{% endblock %}
        <link rel="icon" type="image/x-icon" href="{{ asset('favicon.ico') }}" />
    </head>
    <body>
        {% block body %}{% endblock %}
        {% block javascripts %}{% endblock %}
    </body>
</html>

Mohamed IDBRAHIM

Architecture

des

Fichiers

Made with Slides.com