React Native: курс для начинающих

Пройдите тест, узнайте какой профессии подходите

Я предпочитаю
0%
Работать самостоятельно и не зависеть от других
Работать в команде и рассчитывать на помощь коллег
Организовывать и контролировать процесс работы

Введение в React Native

React Native — это популярный фреймворк для создания мобильных приложений, разработанный Facebook. Он позволяет создавать нативные мобильные приложения для iOS и Android, используя JavaScript и React. Этот курс предназначен для новичков, которые хотят начать изучение React Native и создать свое первое приложение.

React Native использует те же принципы, что и React, но вместо рендеринга веб-компонентов, он рендерит нативные компоненты. Это позволяет разработчикам использовать существующие знания и навыки в React для создания мобильных приложений. Одним из главных преимуществ React Native является возможность писать один и тот же код для обеих платформ, что значительно сокращает время и усилия, необходимые для разработки.

Кроме того, React Native поддерживает горячую перезагрузку (hot reloading), что позволяет разработчикам мгновенно видеть изменения в коде без необходимости перезапускать приложение. Это делает процесс разработки более быстрым и удобным. Важно отметить, что React Native имеет большое сообщество и множество библиотек, что позволяет легко находить решения для различных задач и проблем.

Кинга Идем в IT: пошаговый план для смены профессии

Установка и настройка окружения

Перед тем как начать разработку на React Native, необходимо установить и настроить окружение. Следуйте этим шагам:

  1. Установите Node.js и npm: – Перейдите на официальный сайт Node.js и скачайте последнюю версию. – Установите Node.js, следуя инструкциям на экране. – Проверьте установку, введя в терминале команду node -v и npm -v.

  2. Установите Expo CLI: – Expo — это инструмент, который упрощает разработку и тестирование приложений на React Native. – Введите в терминале команду: npm install -g expo-cli.

  3. Создайте новое приложение: – Введите команду: expo init MyFirstApp. – Выберите шаблон "blank" и следуйте инструкциям на экране.

  4. Запустите приложение: – Перейдите в директорию вашего приложения: cd MyFirstApp. – Запустите приложение командой: expo start.

Теперь ваше окружение готово, и вы можете начать разработку. Важно отметить, что Expo предоставляет множество полезных инструментов и библиотек, которые упрощают процесс разработки и тестирования приложений. Например, вы можете использовать Expo для доступа к нативным API, таким как камера, геолокация и сенсоры устройства.

Основы компонентов и JSX

React Native использует компоненты для построения пользовательского интерфейса. Компоненты могут быть функциональными или классовыми. В этом курсе мы будем использовать функциональные компоненты, так как они проще для понимания новичками.

Пример функционального компонента

jsx
Скопировать код
import React from 'react';
import { Text, View } from 'react-native';

const MyComponent = () => {
  return (
    <View>
      <Text>Hello, React Native!</Text>
    </View>
  );
};

export default MyComponent;

В этом примере мы импортируем React, а также Text и View из react-native. Компонент MyComponent возвращает элемент View, который содержит элемент Text. Компоненты в React Native могут быть вложенными, что позволяет создавать сложные пользовательские интерфейсы из простых блоков.

Подробнее об этом расскажет наш спикер на видео
skypro youtube speaker

JSX

JSX — это синтаксис, который позволяет писать HTML-подобный код в JavaScript. Он используется для описания структуры пользовательского интерфейса. В React Native JSX используется для создания нативных компонентов. Важно понимать, что JSX не является обязательным, но он значительно упрощает процесс написания и чтения кода.

JSX позволяет использовать JavaScript внутри разметки, что делает его очень мощным инструментом. Например, вы можете использовать условные операторы и циклы для динамического создания элементов интерфейса. Это делает JSX очень гибким и удобным для разработки сложных приложений.

Создание первого приложения

Теперь, когда вы знакомы с основами компонентов и JSX, давайте создадим простое приложение. Мы создадим приложение "Список дел" (To-Do List).

Шаг 1: Создайте новый компонент

Создайте файл ToDoList.js в директории components и добавьте следующий код:

jsx
Скопировать код
import React, { useState } from 'react';
import { View, Text, TextInput, Button, FlatList } from 'react-native';

const ToDoList = () => {
  const [task, setTask] = useState('');
  const [tasks, setTasks] = useState([]);

  const addTask = () => {
    setTasks([...tasks, { key: Math.random().toString(), value: task }]);
    setTask('');
  };

  return (
    <View>
      <TextInput
        placeholder="Введите задачу"
        value={task}
        onChangeText={setTask}
      />
      <Button title="Добавить" onPress={addTask} />
      <FlatList
        data={tasks}
        renderItem={({ item }) => <Text>{item.value}</Text>}
      />
    </View>
  );
};

export default ToDoList;

Шаг 2: Импортируйте и используйте компонент

Откройте файл App.js и измените его следующим образом:

jsx
Скопировать код
import React from 'react';
import { StyleSheet, View } from 'react-native';
import ToDoList from './components/ToDoList';

export default function App() {
  return (
    <View style={styles.container}>
      <ToDoList />
    </View>
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: '#fff',
    alignItems: 'center',
    justifyContent: 'center',
  },
});

Теперь у вас есть простое приложение "Список дел", которое позволяет добавлять задачи и отображать их в списке. Вы можете расширить функциональность этого приложения, добавив возможность удаления задач или изменения их статуса.

Отладка и тестирование

Отладка и тестирование — важные этапы разработки любого приложения. React Native предоставляет несколько инструментов для отладки и тестирования.

Отладка

  1. Expo Developer Tools: – Когда вы запускаете приложение с помощью expo start, открывается Expo Developer Tools в браузере. – Здесь вы можете просматривать логи, перезагружать приложение и использовать инструменты отладки.

  2. React Native Debugger: – React Native Debugger — это отдельное приложение для отладки React Native приложений. – Вы можете скачать его с официального сайта.

  3. Инструменты разработчика в браузере: – Вы можете использовать инструменты разработчика в вашем браузере для отладки JavaScript-кода. – Это особенно полезно для отладки логики приложения и работы с состоянием компонентов.

Тестирование

  1. Jest: – Jest — это популярная библиотека для тестирования JavaScript-кода. – React Native по умолчанию поддерживает Jest. Вы можете писать тесты для компонентов и функций вашего приложения.

  2. React Native Testing Library: – Эта библиотека предоставляет утилиты для тестирования компонентов React Native. – Установите библиотеку командой: npm install @testing-library/react-native.

Пример теста

Создайте файл ToDoList.test.js и добавьте следующий код:

jsx
Скопировать код
import React from 'react';
import { render, fireEvent } from '@testing-library/react-native';
import ToDoList from './ToDoList';

test('добавление задачи', () => {
  const { getByPlaceholderText, getByText, getByDisplayValue } = render(<ToDoList />);
  
  fireEvent.changeText(getByPlaceholderText('Введите задачу'), 'Новая задача');
  fireEvent.press(getByText('Добавить'));
  
  expect(getByDisplayValue('Новая задача')).toBeTruthy();
});

Этот тест проверяет, что задача добавляется в список при нажатии на кнопку "Добавить". Тестирование помогает убедиться, что ваш код работает правильно и не содержит ошибок. Вы можете писать тесты для различных сценариев использования вашего приложения, чтобы убедиться, что все функции работают корректно.

Теперь вы знаете, как установить и настроить окружение, создать компоненты, использовать JSX, создать простое приложение и отлаживать и тестировать его. React Native предоставляет множество возможностей для создания мощных и функциональных мобильных приложений. Удачи в изучении React Native! 😉

Читайте также

Проверь как ты усвоил материалы статьи
Пройди тест и узнай насколько ты лучше других читателей
Какой язык используется для разработки приложений на React Native?
1 / 5
Свежие материалы