# Performance Vue (Vue.js / Nuxt.js) > Virtual DOM, reactivity optimization, v-once, v-memo, lazy loading, code splitting, bundle size - 22 questions d'entretien - Senior - [Questions d'entretien: Vue.js / Nuxt.js](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien.md) ## 1. Qu'est-ce que le Virtual DOM dans Vue ? **Réponse** Le Virtual DOM est une représentation JavaScript légère de l'arbre DOM réel. Vue utilise le Virtual DOM pour minimiser les manipulations directes du DOM, qui sont coûteuses en performance. Lors d'un changement d'état, Vue crée un nouveau Virtual DOM, le compare avec l'ancien (algorithme de diff), puis applique uniquement les modifications nécessaires au DOM réel. Cette approche réduit considérablement le nombre d'opérations DOM et améliore les performances, surtout pour les applications complexes avec de nombreuses mises à jour. ## 2. Quelle est la différence principale entre ref() et shallowRef() ? **Réponse** ref() crée une référence réactive profonde où toutes les propriétés imbriquées sont également réactives, tandis que shallowRef() ne rend réactive que la propriété .value elle-même. Avec shallowRef(), les mutations profondes dans l'objet ne déclenchent pas de mises à jour. Il faut remplacer entièrement .value pour déclencher la réactivité. shallowRef() est utile pour optimiser les performances avec de grandes structures de données où la réactivité profonde n'est pas nécessaire, ou pour intégrer des systèmes d'état externes. ## 3. Quel est le rôle de la directive v-once ? **Réponse** La directive v-once rend un élément et ses enfants une seule fois lors du premier rendu, puis les traite comme du contenu statique pour tous les rendus suivants. Cela signifie que même si les données changent, l'élément ne sera jamais mis à jour. Cette directive est utile pour optimiser les performances des contenus statiques qui ne changent jamais après le montage initial, comme des images de bannière, des logos, ou du texte qui ne nécessite aucune mise à jour dynamique. ## 19 questions supplémentaires disponibles - Comment fonctionne la directive v-memo introduite dans Vue 3.2+ ? - Quelle est l'utilité de markRaw() dans Vue ? S'inscrire gratuitement: https://sharpskill.dev/fr/login ## Autres sujets d'entretien Vue.js / Nuxt.js - [Fondamentaux JavaScript](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/javascript-fundamentals.md): 20 questions, Junior - [JavaScript moderne (ES6+)](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/es6-modern-javascript.md): 20 questions, Junior - [Les bases de Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-basics.md): 22 questions, Junior - [Composants Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-components.md): 20 questions, Junior - [Vue Router](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-router.md): 18 questions, Junior - [Pinia State Management](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/pinia-state-management.md): 20 questions, Junior - [Vuex (Legacy)](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vuex-legacy.md): 15 questions, Confirmé - [Composition API](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/composition-api.md): 24 questions, Confirmé - [Réactivité Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-reactivity.md): 20 questions, Confirmé - [Fondamentaux Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-fundamentals.md): 22 questions, Confirmé - [Data Fetching Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-data-fetching.md): 20 questions, Confirmé - [SSR & SSG Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-ssr-ssg.md): 22 questions, Confirmé - [Server Routes Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-server-routes.md): 20 questions, Confirmé - [Modules Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-modules.md): 18 questions, Confirmé - [Composables Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-composables.md): 20 questions, Confirmé - [Formulaires & Validation Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-forms-validation.md): 20 questions, Confirmé - [Gestion d'état Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-state-management.md): 18 questions, Confirmé - [Testing Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-testing.md): 20 questions, Confirmé - [Déploiement Nuxt & CI/CD](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-deployment-cicd.md): 22 questions, Confirmé - [Patterns avancés Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-advanced-patterns.md): 24 questions, Senior - [TypeScript avec Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/typescript-vue.md): 22 questions, Senior - [Authentification Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-auth.md): 20 questions, Senior - [SEO avec Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-seo.md): 20 questions, Senior - [Internationalisation Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-i18n.md): 18 questions, Senior - [Architecture Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-architecture.md): 22 questions, Senior - [Sécurité Nuxt](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/nuxt-security.md): 20 questions, Senior - [Écosystème Vue](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-ecosystem.md): 18 questions, Senior - [Migration Vue 2→3 & Nuxt 2→3](https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/migration-vue2-vue3-nuxt2-nuxt3.md): 22 questions, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/fr/technologies/vue-nuxt/questions-entretien/vue-performance