# Продуктивність Vue (Vue.js / Nuxt.js) > Virtual DOM, оптимізація реактивності, v-once, v-memo, lazy loading, code splitting, розмір bundle - 22 питань зі співбесід - Senior - [Питання зі співбесід: Vue.js / Nuxt.js](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy.md) ## 1. Що таке Virtual DOM у Vue? **Відповідь** Virtual DOM — це легке JavaScript-представлення реального дерева DOM. Vue використовує Virtual DOM, щоб мінімізувати прямі маніпуляції з DOM, які є витратними з точки зору продуктивності. Коли стан змінюється, Vue створює новий Virtual DOM, порівнює його зі старим (алгоритм diffing), а потім застосовує до реального DOM лише необхідні зміни. Цей підхід значно зменшує кількість операцій з DOM і покращує продуктивність, особливо для складних застосунків з великою кількістю оновлень. ## 2. Яка основна різниця між ref() та shallowRef()? **Відповідь** ref() створює глибоко реактивне посилання, де всі вкладені властивості також є реактивними, тоді як shallowRef() робить реактивною лише саму властивість .value. Зі shallowRef() глибокі зміни всередині об'єкта не запускають оновлень. Щоб запустити реактивність, потрібно повністю замінити .value. shallowRef() корисний для оптимізації продуктивності з великими структурами даних, де глибока реактивність не потрібна, або для інтеграції зовнішніх систем керування станом. ## 3. Яка роль директиви v-once? **Відповідь** Директива v-once рендерить елемент і його дочірні елементи лише один раз під час першого рендерингу, а потім обробляє їх як статичний вміст для всіх наступних рендерингів. Це означає, що навіть якщо дані змінюються, елемент ніколи не буде оновлено. Ця директива корисна для оптимізації продуктивності статичного вмісту, який ніколи не змінюється після початкового монтування, наприклад зображень банерів, логотипів або тексту, що не потребує жодних динамічних оновлень. ## Ще 19 доступних питань - Як працює директива v-memo, представлена у Vue 3.2+? - Яке призначення markRaw() у Vue? Зареєструйся безкоштовно: https://sharpskill.dev/uk/login ## Інші теми співбесід Vue.js / Nuxt.js - [Основи JavaScript](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/javascript-fundamentals.md): 20 запитань, Junior - [Сучасний JavaScript (ES6+)](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/es6-modern-javascript.md): 20 запитань, Junior - [Основи Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-basics.md): 22 запитань, Junior - [Компоненти Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-components.md): 20 запитань, Junior - [Vue Router](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-router.md): 18 запитань, Junior - [Pinia State Management](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/pinia-state-management.md): 20 запитань, Junior - [Vuex (Legacy)](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vuex-legacy.md): 15 запитань, Mid-Level - [Composition API](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/composition-api.md): 24 запитань, Mid-Level - [Реактивність Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-reactivity.md): 20 запитань, Mid-Level - [Основи Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-fundamentals.md): 22 запитань, Mid-Level - [Отримання даних у Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-data-fetching.md): 20 запитань, Mid-Level - [SSR і SSG у Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-ssr-ssg.md): 22 запитань, Mid-Level - [Серверні маршрути Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-server-routes.md): 20 запитань, Mid-Level - [Модулі Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-modules.md): 18 запитань, Mid-Level - [Composables у Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-composables.md): 20 запитань, Mid-Level - [Форми та валідація Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-forms-validation.md): 20 запитань, Mid-Level - [Керування станом у Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-state-management.md): 18 запитань, Mid-Level - [Тестування Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-testing.md): 20 запитань, Mid-Level - [Розгортання Nuxt та CI/CD](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-deployment-cicd.md): 22 запитань, Mid-Level - [Просунуті патерни Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-advanced-patterns.md): 24 запитань, Senior - [TypeScript із Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/typescript-vue.md): 22 запитань, Senior - [Автентифікація Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-auth.md): 20 запитань, Senior - [SEO з Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-seo.md): 20 запитань, Senior - [Інтернаціоналізація Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-i18n.md): 18 запитань, Senior - [Архітектура Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-architecture.md): 22 запитань, Senior - [Безпека Nuxt](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/nuxt-security.md): 20 запитань, Senior - [Екосистема Vue](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-ecosystem.md): 18 запитань, Senior - [Міграція Vue 2→3 та Nuxt 2→3](https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/migration-vue2-vue3-nuxt2-nuxt3.md): 22 запитань, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/uk/technologies/vue-nuxt/pytannia-spivbesidy/vue-performance