Из чего складывается новая архитектура¶
Внимание
Эта документация все еще является экспериментальной, и детали могут быть изменены по мере итераций. Не стесняйтесь делиться своими отзывами в обсуждении внутри рабочей группы для этой страницы.
Более того, она содержит несколько ручных шагов. Пожалуйста, обратите внимание, что это не будет представлять окончательный опыт разработчиков, когда Новая архитектура станет стабильной. Мы работаем над инструментами, шаблонами и библиотеками, которые помогут вам быстро начать работу с новой архитектурой без необходимости проходить всю процедуру настройки.
Новая архитектура состоит в основном из двух столпов:
Основные концепции React Native остаются верными и в новой архитектуре: Нативные модули — это предпочтительный способ создания библиотек, которые используют некоторые API, специфичные для конкретной платформы. Нативные компоненты — это предпочтительный способ создания многократно используемых компонентов пользовательского интерфейса, обеспечивающих нативный опыт для пользователей.
Основная цель этого раздела — провести читателя через пошаговое руководство по созданию первого нативного модуля или компонента, совместимого с новой архитектурой.
В данном руководстве мы будем использовать следующую терминологию:
- Legacy Native Components и Legacy Native Modules — Для обозначения модулей и компонентов, работающих на старой архитектуре React Native.
- Fabric Native Components и Turbo Native Modules — Модули и компоненты, которые были адаптированы для работы с новой архитектурой, а именно с новым рендерером и новой системой нативных модулей. Для краткости их можно назвать Fabric Components и Turbo Modules.
Следующие разделы содержат высокоуровневый обзор столпов и шаги по их созданию. Чтобы создать один из этих столпов, необходимо выполнить следующие шаги:
- Определите спецификацию JavaScript с помощью Flow или TypeScript.
- Настройте систему управления зависимостями для генерации кода на основе предоставленной спецификации.
- Реализуйте нативный код.
- Интегрировать код в приложение.
Наконец, мы немного углубимся в процесс Codegen, который необходим для создания всех типов C++ и файлов, используемых нашими компонентами, включая некоторые полезные шаги для комфортной работы при разработке компонента.
Для интеграции Turbo Native Module или Fabric Native Component в приложение оно должно работать с включенной Новой архитектурой.
Чтобы создать новое приложение, использующее новую архитектуру, обратитесь к разделу Использование шаблона приложения.
Чтобы перевести существующее приложение на новую архитектуру, обратитесь к руководству Миграция.