wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Evaluation Vivetic : durée 40 minutes

Total questions: 52

Worksheet time: 26mins

Name
Class
Date
1.

Quel est le but principal de la commande php bin/console make:controller dans Symfony ?

a)

A) Créer une nouvelle route

b)

B) Créer un nouveau contrôleur

c)

C) Créer un nouveau template Twig

d)

D) Créer une nouvelle entité Doctrine

2.
Quel est le but principal de la commande php bin/console make:controller dans Symfony ?
a)
A) Créer une nouvelle route
b)
B) Créer un nouveau contrôleur
c)
C) Créer un nouveau template Twig
d)
D) Créer une nouvelle entité Doctrine
3.
Quel est le rôle du trait en PHP ?
a)
A) Définir des classes de base
b)
B) Permettre la réutilisation de code dans plusieurs classes
c)
C) Créer des interfaces
d)
D) Définir des méthodes abstraites
4.
Que fait la fonction spl_autoload_register() en PHP ?
a)
A) Enregistre une fonction qui sera utilisée pour l'autoloading des classes
b)
B) Permet de charger toutes les classes PHP automatiquement
c)
C) Charge uniquement les classes externes
d)
D) Déclare des classes dans un espace de noms
5.
Comment peut-on accéder à une variable de classe statique dans PHP ?
a)
A) $this->variable
b)
B) self::$variable
c)
C) parent::$variable
d)
D) $variable
6.
Quel est l'usage de la méthode __call() en PHP ?
a)
A) Redéfinir la signature d'une méthode
b)
B) Capturer les appels de méthodes non définies
c)
C) Appeler des méthodes parents
d)
D) Initialiser des propriétés de classe
7.
Dans Symfony, quel composant permet de gérer les requêtes HTTP et les réponses ?
a)
A) Symfony HTTPClient
b)
B) Symfony Routing
c)
C) Symfony HttpFoundation
d)
D) Symfony Twig
8.
Quelle est la différence entre public, protected et private en PHP ?
a)
A) La visibilité des propriétés et méthodes d'une classe
b)
B) La gestion de l'héritage
c)
C) La manière dont une méthode peut être appelée dans une classe
d)
D) La gestion de l'initialisation des objets
9.
Quel est l'objectif de la commande php bin/console doctrine:migrations:migrate dans Symfony ?
a)
A) Exécuter les migrations de base de données
b)
B) Générer une nouvelle entité
c)
C) Exécuter un seed pour la base de données
d)
D) Mettre à jour les dépendances
10.
Comment récupérer des données depuis la base de données en utilisant Doctrine dans Symfony ?
a)
A) Utiliser une commande SQL brute
b)
B) Utiliser un repository pour accéder aux données
c)
C) Utiliser un service externe pour la récupération des données
d)
D) Utiliser l'API REST
11.
Quelle est la différence entre include() et require() en PHP ?
a)
A) include() échoue silencieusement, require() génère une erreur fatale
b)
B) require() inclut un fichier dans une fonction, include() inclut un fichier dans une méthode
c)
C) include() charge des fichiers externes, require() charge uniquement des fichiers locaux
d)
D) Aucune différence
12.
Quel est le rôle de yield dans une fonction génératrice PHP ?
a)
A) Retourner un tableau de résultats
b)
B) Arrêter l'exécution de la fonction
c)
C) Retourner un élément de manière paresseuse sans perdre l'état de la fonction
d)
D) Définir une fonction d'appel
13.
Que permet le composant Symfony Form ?
a)
A) Gérer la validation des formulaires HTML
b)
B) Générer des formulaires HTML automatiquement
c)
C) Valider les entrées utilisateurs et gérer les formulaires
d)
D) Générer des routes pour les formulaires
14.
Quel est le rôle principal de Composer dans un projet Symfony ?
a)
A) Compiler le code PHP
b)
B) Gérer les dépendances et les packages
c)
C) Générer les fichiers de configuration
d)
D) Créer les bases de données
15.
Quelle commande Symfony génère un formulaire basé sur une entité ?
a)
A) php bin/console make:form
b)
B) php bin/console generate:form
c)
C) php bin/console make:entity
d)
D) php bin/console make:crud
16.
Quel est l'objectif principal du composant Symfony Security ?
a)
A) Gérer l'authentification et l'autorisation des utilisateurs
b)
B) Gérer la connexion à la base de données
c)
C) Gérer les performances de l'application
d)
D) Gérer les erreurs de l'application
17.
Quel est l'élément majeur qui différencie Drupal 8 de Drupal 7
a)
A) L'introduction de Twig comme moteur de template
b)
B) La gestion des utilisateurs via un service externe
c)
C) L'abandon de la gestion de contenu
d)
D) L'utilisation de jQuery dans tous les modules
18.
Quelle API a été introduite pour gérer la configuration dans Drupal 8 ?
a)
A) Configuration API
b)
B) Entity API
c)
C) Form API
19.
Comment Drupal 10 améliore-t-il la gestion des thèmes par rapport à Drupal 8 ?
a)
A) Les thèmes sont désormais gérés par un fichier YAML
b)
B) La structure des thèmes est entièrement révisée et basée sur des composants
c)
C) L'utilisation de Sass est obligatoire pour tous les thèmes
d)
D) Les thèmes sont maintenant séparés en modules distincts
20.
Dans Drupal 8+, où se trouvent les routes et comment sont-elles définies ?
a)
A) Dans le fichier `.module`
b)
B) Dans le fichier `routes.yml`
c)
C) Dans la base de données
d)
D) Dans les paramètres de thème
21.
Quelle fonction a été dépréciée dans Drupal 8 pour être remplacée par des contrôleurs ?
a)
A) `hook_menu()`
b)
B) `hook_theme()`
c)
C) `hook_block()`
d)
D) `hook_form()`
22.
Quelles différences majeures y a-t-il entre les entités dans Drupal 7 et Drupal 8 ?
a)
A) Drupal 8 utilise une API d'entités améliorée avec plus de flexibilité et de types d'entités.
b)
B) Drupal 7 ne supporte pas les entités.
c)
C) Drupal 8 n'inclut pas la gestion des entités personnalisées.
d)
D) Les entités dans Drupal 8 ne sont pas modulaires.
23.
Quel module est principalement utilisé pour la migration de données dans Drupal ?
a)
A) Migrate
b)
B) Backup and Migrate
c)
C) Migration Plus
d)
D) Content Migration
24.
Comment migrer les entités personnalisées dans Drupal à l'aide du module Migrate ?
a)
A) En créant une migration manuelle dans un fichier YAML.
b)
B) En utilisant un module spécifique pour les entités personnalisées.
c)
C) En déclarant les entités dans le fichier de migration avec des classes PHP.
d)
D) En migrer les entités uniquement via l'interface d'administration.
25.
Comment gérer la migration des configurations de site entre Drupal 8 et 10 ?
a)
A) En utilisant le module Migrate.
b)
B) En exportant les configurations via la ligne de commande et en les réimportant dans Drupal 10.
c)
C) En utilisant le module Config Split.
d)
D) En modifiant les fichiers YAML manuellement.
26.
Quel est le format de configuration utilisé dans Drupal 8+ et comment est-il géré ?
a)
A) JSON, géré via le module JSON Configuration.
b)
B) YAML, géré via le Configuration Management System.
c)
C) XML, géré via le module Configuration Export.
d)
D) Binaire, géré via la base de données.
27.
Quels types de données peuvent être migrés avec le module Migrate dans Drupal ?
a)
A) Contenu, utilisateurs, configurations, et fichiers de médias.
b)
B) Seulement le contenu des nœuds.
c)
C) Seulement les utilisateurs.
d)
D) Seulement les configurations.
28.
Quelle est la différence entre les hooks `hook_menu` et `hook_route` dans Drupal 8+ ?
a)
A) `hook_menu` est utilisé pour déclarer des routes tandis que `hook_route` est utilisé pour gérer les menus.
b)
B) `hook_menu` a été remplacé par `hook_route` pour gérer les routes dans Drupal 8+.
c)
C) `hook_menu` est utilisé pour gérer les entités tandis que `hook_route` est utilisé pour configurer les utilisateurs.
d)
D) `hook_menu` est utilisé pour la configuration de la base de données tandis que `hook_route` est pour le cache.
29.
Qu'est-ce que l'injection de dépendance dans Drupal 8+ et comment l'utilisez-vous dans un module ?
a)
A) C'est un mécanisme pour charger des services via le gestionnaire de services de Drupal.
b)
B) C'est une méthode pour déclarer des services dans un fichier .yml.
c)
C) C'est une manière de stocker des variables de configuration dans un module.
d)
D) C'est un moyen de rendre les modules indépendants du système de fichiers.
30.
Comment migrer une fonctionnalité personnalisée de Drupal 7 vers Drupal 8/10 ?
a)
A) En réécrivant toute la fonctionnalité en utilisant les nouveaux services et API de Drupal 8/10.
b)
B) En copiant les fichiers PHP et en modifiant la base de données.
c)
C) En réutilisant la fonctionnalité Drupal 7 avec un module spécifique de migration.
d)
D) En laissant la fonctionnalité dans Drupal 7 et en l'intégrant via un module personnalisé.
31.
Comment utiliser un événement dans Drupal 8 pour ajouter une fonctionnalité personnalisée ?
a)
A) En créant un module de gestion des événements.
b)
B) En utilisant le système de EventSubscriber pour écouter et réagir à un événement spécifique.
c)
C) En modifiant directement les fichiers de configuration de l'événement.
d)
D) En utilisant les hooks hook_event().
32.
Quelles sont les meilleures pratiques pour assurer la compatibilité d'un module entre différentes versions de Drupal ?
a)
A) Utiliser des fonctions et des APIs obsolètes.
b)
B) Tester le module manuellement sur chaque version de Drupal.
c)
C) Réaliser des tests automatiques pour chaque version.
d)
D) Suivre les mises à jour de la documentation officielle de Drupal.
33.
Comment exporter et importer la configuration dans Drupal 8+ ?
a)
A) En utilisant la commande drush config-export et drush config-import.
b)
B) En copiant directement les fichiers de configuration dans le répertoire de production.
c)
C) En configurant les fichiers .yml manuellement.
d)
D) En utilisant une interface graphique dans l'administration Drupal.
34.
Qu'est-ce qu'un config split et comment est-il utilisé dans Drupal ?
a)
A) C'est un module permettant de diviser les fichiers de configuration par environnement.
b)
B) C'est un mécanisme pour séparer les configurations de contenu des configurations de fonctionnalité.
c)
C) C'est une extension qui permet d'utiliser des configurations dynamiques basées sur le rôle de l'utilisateur.
d)
D) C'est une fonction qui synchronise automatiquement les configurations entre différents environnements.
35.
Quel est le rôle de Composer dans la gestion des dépendances dans Drupal ?
a)
A) Composer gère uniquement les dépendances du code source de Drupal.
b)
B) Composer permet de gérer les bibliothèques externes et les dépendances des modules.
c)
C) Composer remplace complètement le gestionnaire de modules de Drupal.
d)
D) Composer est utilisé pour le déploiement des modules sur Drupal.
36.
Comment mettre à jour un module Drupal sans compromettre les fonctionnalités du site ?
a)
A) En désactivant le module avant la mise à jour.
b)
B) En testant la mise à jour sur un environnement de développement avant de la déployer.
c)
C) En supprimant et réinstallant le module.
d)
D) En utilisant la fonctionnalité de mise à jour automatique dans l'administration.
37.
Comment gérer les dépendances entre les modules dans Composer pour un projet Drupal ?
a)
A) En déclarant chaque dépendance dans un fichier composer.json et en exécutant composer install.
b)
B) En utilisant le module Composer Manager pour gérer les dépendances automatiquement.
c)
C) En reliant directement les modules via des liens symboliques.
d)
D) En spécifiant les modules nécessaires dans le fichier settings.php.
38.
Quels outils utiliser pour résoudre les conflits de dépendances dans Drupal ?
a)
A) Composer et Drush.
b)
B) Git et Composer.
c)
C) Git et drupal-update.
d)
D) Drupal Update Manager.
39.
Quelles sont les meilleures pratiques pour maintenir les modules à jour dans Drupal ?
a)
A) Ne jamais mettre à jour les modules en production sans tests.
b)
B) Toujours mettre à jour les modules dès qu'une nouvelle version est publiée.
c)
C) Ne mettre à jour les modules que lorsque des bugs sont signalés.
d)
D) Désinstaller les modules obsolètes sans mise à jour.
40.
Qu'est-ce que le cache API dans Drupal et comment l'optimiser ?
a)
A) C'est une API qui stocke toutes les données dans la base de données.
b)
B) C'est un mécanisme pour stocker et récupérer des données dans la mémoire pour accélérer les performances.
c)
C) C'est une API permettant de gérer les sessions utilisateurs.
d)
D) C'est une API pour enregistrer et afficher les logs.
41.
Quel est le résultat de l'expression suivante en JavaScript ? [ ] == ![ ]
a)
A) true
b)
B) false
c)
C) undefined
d)
D) NaN
42.
Quelle est la différence entre null et undefined en JavaScript ?
a)
A) Ils sont équivalents, mais null est un type de données plus spécifique
b)
B) null est un objet, tandis que undefined est un type primitif
c)
C) null est un objet, et undefined est une valeur d'erreur
d)
D) Il n'y a pas de différence
43.
Quelle est la sortie de ce code JavaScript ?
a)
A) 1 1
b)
B) 2 1
c)
C) 1 2
d)
D) 2 2
44.
Quelle est la sortie de ce code jQuery ?
a)
A) true
b)
B) false
c)
C) undefined
d)
D) Erreur
45.
Lesquels de ces groupes de mots-clés s’accordent avec la clause ORDER BY ?
a)
A) UP/DOWN
b)
B) ASC/DESC
c)
C) HIGH/LOW
46.
Quel sera le résultat de la requête suivante : SELECT * FROM Table1 HAVING Column1>10
a)
A) Une erreur
b)
B) Données vides
c)
C) Tous les enregistrements de la Table1 telle que la valeur de Column1 vaut plus de 10
47.
Dans quel cas peut-on se servir de la clause HAVING ?
a)
A) JOIN
b)
B) SELECT
c)
C) DELETE
d)
D) INSERT
48.
Considérons 2 tables agents(id_agent, nom_agent) et appels(id_appel, id_agent, debut_appel, fin_appel). Supposons les données dans l'illustration suivante, quelle est la requête SQL permettant d’avoir le résultat ?
a)
A) SELECT nom_agent,count(id_appel) AS nb_appels FROM agents LEFT JOIN appels ON agents.id_agent=appels.id_agent GROUP BY id_appel
b)
B) SELECT nom_agent,count(id_appel) AS nb_appels FROM agents INNER JOIN appels ON agents.id_agent=appels.id_agent GROUP BY id_appel
c)
C) Aucune des 2 (A et B)
49.
Si la roue A tourne dans le sens antihoraire, dans quel sens tourne la roue C ?
a)
A) Horaire
b)
B) Antihoraire
50.
Si la roue A fait 6 tours, combien de tours fait la roue C ?
a)
A) 2 tours
b)
B) 4 tours
c)
C) autre
51.
Quelle est la réponse correcte au problème suivant ? Tom possède un nouvel ensemble de clubs de golf. Il envoie la balle à une distance moyenne de 100 mètres à l'aide du club 8. Il envoie la balle à une distance moyenne de 108 mètres à l'aide du club 7. Il envoie la balle à une distance moyenne de 114 mètres à l'aide du club 6. Quelle distance la balle va-t-elle parcourir avec le club 5 ?
a)
A) 122m
b)
B) 120m
c)
C) 118m
d)
D) 116m
52.
6. Quel est le chiffre manquant ? 8 - 14 - 26 - 50 - ? - 194
a)
A) 78
b)
B) 88
c)
D) 98