Top 25 des questions et réponses d'entretien de développeur Web incontournables
Les développeurs Web continuent d'être en demande alors qu'Internet continue de se développer. Cependant, pour décrocher le poste, vous devez d'abord mettre à l'échelle la session d'entretien de l'employeur.
Bien que les grandes équipes aient tendance à embaucher spécifiquement des développeurs front-end ou back-end, les petites équipes et start-up ira souvent aux développeurs full-stack. Il est donc utile d’en savoir le plus possible.
Vous trouverez ci-dessous une liste des 25 questions d'entretien les plus importantes pour les développeurs Web et leurs réponses pour vous aider à vous préparer.
1. Quels sont les rôles de HTML, JavaScript et CSS dans le développement Web ?
HTML signifie HyperText Markup Language et c'est le langage standard pour développer des documents à publier sur le Web. JavaScript et CSS sont des extras.
JavaScript a été conçu à l'origine comme un langage de programmation côté client, il s'exécute dans le navigateur pour produire plus de fonctionnalités dans la page Web. CSS signifie Cascading Style Sheets et est utilisé pour présenter des éléments à l'écran.
2. Qu'est-ce qu'une conception Web réactive
La conception Web réactive est une approche de développement Web qui vise à créer la meilleure expérience pour un utilisateur en adaptant l'apparence du site Web en fonction de l'appareil ou de l'environnement de cet utilisateur.
L'objectif est que le site Web ait une belle apparence sur tous les appareils, ce qui implique des changements dynamiques qui réduisent ou augmentent la taille des boîtes et l'alignement en fonction de la taille ou de l'orientation de l'écran de l'appareil.
3. Quels sont les avantages d'utiliser un framework ?
L'utilisation d'un framework dans le développement d'une application Web présente de nombreux avantages. Les principaux sont les suivants :
- Processus de développement simplifié avec les meilleures pratiques.
- Un développement plus rapide avec des projets de démarrage permet de gagner du temps.
- L'utilisation d'un code éprouvé.
- Fournit souvent mieux centré sur l'humain.
- Économise des coûts, en particulier pour les grands projets.
4. Qu'est-ce qu'un rappel JavaScript ?
Un rappel JavaScript est une fonction qui doit être exécutée après une autre fonction. Le nom et les arguments de la fonction de rappel peuvent être transmis en tant qu'arguments à la première fonction, et la première fonction peut également transmettre des arguments en interne à la fonction de rappel qui sont le résultat de ses calculs.
Les fonctions de rappel sont mieux utilisées avec les fonctions asynchrones qui doivent attendre que d'autres fonctions terminent leur exécution.
5. Expliquer la portée locale et globale en JavaScript
Les variables définies sont écrites en mots et celles-ci n'ont de sens que dans le bon contexte. La portée locale et globale fait référence à ce contexte de variables définies. Une variable globale doit être définie en dehors d'une fonction, tandis que les variables locales sont définies à l'intérieur d'une fonction.
Ainsi, une variable globale a une portée globale, ce qui signifie qu'elle est accessible de n'importe où dans le programme. Une variable locale, cependant, a une portée locale, ce qui signifie qu'elle ne peut être accessible que depuis l'intérieur de la fonction.
6. Expliquer Z-Index en CSS
Le z-index est une propriété d'élément utilisée pour définir l'ordre de pile de l'élément. L'ordre de la pile fait référence à la capacité d'un élément à être derrière ou devant d'autres éléments, tout comme une pile de cartes.
Les éléments avec un ordre de pile supérieur apparaissent devant les éléments avec un ordre de pile inférieur. Dans ce contexte, donner à un élément un ordre de pile de 2 ou 100 garantit qu'il s'affichera au-dessus de tous les autres sur une page. De même, une page sans ordre de pile spécifié empilera les éléments inférieurs de la source plus haut que ceux du haut.
7. Qu'est-ce que Marquee en HTML ?
Marque est une balise conteneur en HTML, qui est utilisée pour afficher du texte défilant. Il vous permet de contrôler la direction de défilement, ainsi que la vitesse. Marquee est cependant obsolète dans HTML5, et il est conseillé d'utiliser CSS à la place.
Exemple de défilement avec chapiteau :
Texte de défilement de chapiteau
8. Énumérez les principaux moyens de réduire le temps de chargement des pages
Un développeur peut prendre de nombreuses mesures pour améliorer le temps de chargement d'une page, les principales sont :
- Optimiser les images et réduire leur taille
- Débarrassez-vous des widgets inutiles
- Réduisez les recherches au strict minimum
- Hébergez le site Web sur un hébergeur décent
- Utilisez des pages mobiles accélérées ou sites statiques
- Images de chargement différé
- Minifiez votre code
9. Quelles sont les différences entre Canvas et SVG ?
SVG signifie Scalable Vector Graphics et le tag est un élément conteneur permettant de créer des graphiques, tels qu'un cercle, une boîte, une ellipse, etc. Vous pouvez modifier SVG à l'aide de CSS ou de JavaScript et être évolutif signifie qu'il fonctionne bien pour les sorties haute résolution.
La conteneur, d'autre part, est basé sur raster et non évolutif. Il est également utilisé pour créer des graphiques mais n'est modifiable que par JavaScript. Il est cependant plus efficace pour gérer un plus grand nombre d'objets.
10. Comment ça Null Différer Indéfini?
Null est une représentation sans valeur. Il est généralement utilisé comme support de placement pour initialiser une variable définie à laquelle aucune valeur réelle n'a été attribuée. Undefined, en revanche, fait référence à une variable définie qui n'a pas été initialisée.
En JavaScript :
var variableA ;
var variableB = null ;
alerte(variableA); // affiche indéfini
alert(variableB); // affiche null
11. En quoi l'identité diffère-t-elle de la classe ?
ID et classe sont deux méthodes d'identification et de gestion des éléments dans un document HTML. La principale différence entre les deux, cependant, est que l'ID doit être unique. En d'autres termes, deux éléments ne peuvent pas partager le même ID, mais deux éléments ou plus peuvent partager la même classe.
Un ID est utilisé pour gérer des éléments spécifiques, tandis qu'une classe est utilisée pour gérer un groupe d'éléments qui partagent un ou plusieurs traits communs.
12. Comment améliorez-vous les fonctions de sécurité d'un site Web ?
Les quelques mesures que vous pouvez prendre pour améliorer la sécurité d'un site Web incluent :
- Appliquer une politique de mot de passe fort. Cela signifie vérifier qu'un mot de passe sélectionné comporte plus de 8 caractères et contient des chiffres, des caractères spéciaux et des caractères majuscules et minuscules.
- Utilisation de captcha ou de toute mesure anti-bot.
- Utilisation de méthodes d'authentification à 2 ou plusieurs facteurs telles que les OTP (mots de passe à usage unique) et les dongles matériels, si nécessaire.
- Utilisation d'un hôte avec protection DDoS et fonctionnalités de sauvegarde automatique.
13. En quoi localStorage diffère-t-il de sessionStorage ?
Les systèmes localStorage et sessionStorage permettent tous deux à un développeur de stocker des données dans un navigateur Web. Cependant, localStoarage est persistant, contrairement à sessionStorage. En d'autres termes, les données stockées dans localStorage seront disponibles sur le navigateur sur plusieurs sessions, tandis que les données stockées dans sessionStorage seront supprimées une fois l'onglet du navigateur fermé.
14. Liste des améliorations HTTP2.0 par rapport à HTTP 1.1
Le protocole HTTP/2 a été publié en 2015 et propose des améliorations significatives, telles que :
- Meilleure sécurité en utilisant le binaire sur le texte.
- Meilleure performance.
- Latence inférieure.
- Meilleure gestion des erreurs.
- Frais généraux inférieurs.
15. Quelle est la différence entre Git Pull et Git Merge ?
La commande git pull vous permet de télécharger du contenu à partir d'un référentiel distant, puis de mettre à jour votre référentiel local avec le contenu téléchargé.
La commande git merge, quant à elle, vous permet de combiner deux branches développées séparément du même Projet. La commande de fusion doit être exécutée à partir de la branche dans laquelle vous souhaitez fusionner, et il s'agit généralement de la branche principale.
16. En quoi GET diffère-t-il de POST et PUT ?
La méthode HTML GET est utilisée par un navigateur pour demander des informations à un serveur, tandis que les méthodes POST et PUT sont utilisées pour envoyer des informations du navigateur à un serveur.
Mais alors qu'une requête POST peut simplement ajouter des données à une ressource serveur, une requête PUT est utilisée pour remplacer entièrement la ressource en utilisant la charge utile de la requête.
17. Répertorier les formats d'échange de données les plus populaires
Voici les formats d'échange de données les plus populaires à ce jour :
- XML
- YAML
- CSV
- JSON
- HTTP
- SQL
18. Énumérez les 3 types de boîtes contextuelles
Les boîtes contextuelles en JavaScript sont utilisées pour afficher des messages à l'utilisateur, pour demander une entrée et parfois pour faire les deux. Voici les 3 types de popups JavaScript :
- Boîte d'alerte – Ceci affiche votre message plus un bouton 'OK'.
- Confirmer la case – Cette boîte de dialogue comprend à la fois les boutons 'OK' et 'Annuler' qui peuvent affecter le code.
- Boîte d'invite – Cette zone comprend une zone de saisie de texte pour collecter des informations auprès de l'utilisateur.
19. Nommez les différentes façons d'inclure le code CSS
Il existe 3 façons d'inclure CSS dans un document HTML. Elles sont:
- CSS externe – Vous incluez un document .css en utilisant à l'intérieur du document Mots clés.
- CSS intégré – Vous incluez le code CSS dans le balises, n'importe où dans le document.
- CSS en ligne – Vous utilisez la paire style=”CSS-property: value” dans vos balises HTML, par ex. PSquare !
20. Comment ça fenêtre.onload Différent de document.onload ?
Window.onload est utilisé pour exécuter du code JavaScript une fois que le navigateur a chargé l'arborescence DOM de la page et d'autres éléments de base, notamment les images, le code CSS et les scripts.
Bien que document.onload s'exécute immédiatement après que le DOM est prêt, cela peut signifier même avant que les images et les bibliothèques externes ne soient chargées.
21. Comment masquer un élément à l'aide de CSS ?
Vous pouvez masquer un élément HTML en utilisant 3 méthodes CSS, ce sont :
- Affichage : aucun ; – L'élément n'est ni rendu ni affiché.
- Visibilité : masquée ; – L'élément est rendu mais pas affiché.
- Position : Absolue ; – L'élément est rendu et affiché, mais positionné en dehors de la zone d'affichage.
22. Quelles sont les meilleures utilisations d'Ajax ?
Ajax est une méthode de chargement de données à partir d'un serveur en arrière-plan à l'aide de JavaScript. Il a de nombreuses utilisations, telles que la validation des données, les applications de chat, les commentaires, le filtrage des données, l'édition visuelle, les sondages, etc.
23. Listez quelques nouvelles fonctionnalités de CSS3
CSS3 inclut de nombreuses fonctionnalités modernes et utiles par rapport à CSS2, telles que :
- Coins arrondis pour les boîtes et les images.
- Animations d'objets.
- Variables et fonctions pour les déclarations.
- Grid & Flexbox pour un design réactif.
- Dégradés pour les couleurs de fond.
- Contrôle de l'opacité à l'aide de rgba.
- Effet d'ombre pour les cases et les textes.
- Transitions pour survoler et se concentrer sur les éléments.
24. Quels nouveaux types d'entrée ont été introduits dans HTML5 ?
Le type d'entrée est la valeur que vous donnez à un élément d'entrée dans un document HTML.
Un exemple est:
or
Les nouveaux types d'entrée HTML5 incluent :
- Date
- Couleur
- Rechercher
- Téléphone
- Mois
- Gamme de nombres
- Mois
- URL
- Dateheure-locale
25. Décrire les éléments multimédias HTML5
HTML5 inclut plus de balises d'éléments pour gérer les types de médias et les sources. Elles sont:
- – pour les vidéos MP4, WebM et Ogg.
- – pour définir plusieurs sources dans différents formats.
- – pour les fichiers audio MP3, Ogg et WAV.
- – un conteneur pour inclure des ressources externes allant des images aux vidéos et aux pages Web.
- – pour spécifier des pistes de sous-titres pour les vidéos.
Conclusion
En arrivant à la fin de notre liste des 25 questions d'entretien incontournables pour les développeurs Web, vous pouvez voir qu'il faut une bonne combinaison de technologies pour être un développeur full-stack.
Bien qu'il s'agisse d'un guide qui touche aux différents aspects du travail, il n'est en aucun cas exhaustif. Donc, c'est à vous d'identifier les domaines sur lesquels vous n'êtes pas clair et d'apprendre ensuite.