Вопрос с собеседования · Frontend

Чем разработка на React Native отличается от веба?

MiddleReact
Ещё спрашивают так:
  • Что такое Expo?
Коротко

React Native рендерит нативные компоненты платформы, а не DOM: View, Text, Image, Pressable, FlatList вместо div и span; текст — только внутри Text. Стили — объекты через StyleSheet, раскладка — Flexbox с колонкой по умолчанию, без каскада и CSS-файлов. Навигация — стеки и вкладки (Expo Router, React Navigation), а не URL браузера. Учитывать жизненный цикл приложения (фон, возврат), разрешения, разные размеры экранов и безопасные зоны. Expo даёт готовую сборку, обновления и доступ к API устройства без нативной настройки.

  • Логика, хуки и управление состоянием — те же, что в вебе
  • Длинные списки — только FlatList (виртуализация)
  • Производительность анимаций — Reanimated, на UI-потоке

А ещё Часть кода и бизнес-логики можно делить с веб-версией

Подробно

export default function Profile() {
  return (
    <View style={styles.box}>
      <Text style={styles.title}>Профиль</Text>
      <Pressable onPress={logout}><Text>Выйти</Text></Pressable>
    </View>
  );
}
const styles = StyleSheet.create({ box: { padding: 16 }, title: { fontSize: 20 } });

Что хотят услышать

  • Нативные компоненты вместо DOM.
  • Стили объектами и Flexbox.
  • Навигация, жизненный цикл, Expo.

Проверьте себя

Один верный вариант. Подумайте, потом откройте ответ.

Показать варианты и ответ
  • ✗React Native рендерит HTML в WebView
  • ✗В React Native работают CSS-файлы и каскад, как в браузере, а вёрстка строится на div и span
  • ✗Хуки в React Native не поддерживаются
  • ✓Нативные View и Text вместо DOM, стили объектами с Flexbox; Expo упрощает сборку

Связанные вопросы

Партнёр платформы

Разбор собеседования с sotto

После собеседования sotto разбирает разговор: оценка, каждый вопрос — хорошо, частично или слабо, чего не хватило в ответе и над чем поработать к следующему разу. Первые 30 минут бесплатно.

Разбор собеседования