QCM Architecture MVC en PHP
1. Quels sont les objectifs principaux du modèle dans une architecture MVC ?
o Générer l’affichage HTML
o Gérer la logique métier
o Exécuter les requêtes SQL
o Capturer les actions de l'utilisateur
2. Parmi les éléments suivants, quels sont des avantages du pattern MVC ?
o Réutilisabilité du code
o Meilleure organisation et séparation des responsabilités
o Réduction du nombre de fichiers nécessaires
o Meilleure maintenabilité et évolutivité
3. Pourquoi l’architecture MVC est-elle considérée comme modulaire ?
o Chaque composant a un rôle bien défini et peut être modifié
indépendamment
o Le modèle inclut toujours le contrôleur et la vue
o Elle permet d'isoler les responsabilités dans des fichiers séparés
o Elle nécessite uniquement un seul fichier PHP
4. Quels types de codes doivent idéalement se retrouver dans une vue (View) ?
o Connexion à la base de données
o Boucles PHP simples pour itérer sur des données
o Conditions PHP pour afficher certains éléments
o Logique métier complexe
5. Quel fichier serait responsable de vérifier si un utilisateur est authentifié avant
d'accéder à des données sensibles ?
o model.php
o controller.php
o view.php
o config.php
6. Quel est le rôle principal du contrôleur dans MVC ?
o Se connecter à la base de données
o Faire le lien entre les données (modèle) et l’affichage (vue)
o Créer les fichiers HTML dynamiques
o Valider la structure HTML
7. Un développeur écrit une requête SQL directement dans le fichier view.php. Quel
est le principal problème ?
o Violation de la séparation des responsabilités
o Mauvaise gestion des sessions
o Mauvaise performance
o L’absence de responsive design
8. Dans une application MVC bien conçue, où se situe la meilleure place pour une
fonction getLast5Comments() ?
o Dans la vue
o Dans le modèle
o Dans le contrôleur
o Dans un fichier HTML externe
9. Un étudiant crée un site MVC mais place toutes les actions dans index.php. Quel est
le principal inconvénient de cette méthode ?
o Moins de compatibilité avec HTML5
o Le contrôleur devient un fichier monolithique difficile à maintenir
o Le site ne sera pas responsive
o Il est impossible d’utiliser une base de données
10. Pourquoi Laravel est-il considéré comme un framework MVC ?
o Il utilise uniquement PHP procédural
o Il structure les applications en modèles, vues et contrôleurs
o Il génère uniquement des interfaces graphiques
o Il n’a pas besoin d’accès aux bases de données
11. Parmi ces pratiques, lesquelles contribuent à un code MVC propre et
professionnel ?
Ne jamais mélanger logique métier et présentation
Créer des fichiers courts et bien nommés
Intégrer tout le code PHP dans les fichiers HTML
Utiliser des noms de fonctions explicites et des namespaces
12. Dans quel(s) cas le choix de MVC pourrait-il être contre-productif ?
Pour des scripts très simples et rapides à exécuter
Pour une application à forte complexité fonctionnelle
Pour un système nécessitant des tests unitaires fréquents
Si le développeur ne maîtrise pas bien la séparation des responsabilités