Monorepo та спільне використання коду
Yarn workspaces, nx, shared packages, React Native Web, стратегії повторного використання коду
1Що таке monorepo в контексті розробки React Native?
Що таке monorepo в контексті розробки React Native?
Відповідь
Monorepo — це архітектура, у якій кілька проєктів або пакетів зберігаються в одному репозиторії Git. У контексті React Native це дозволяє спільно використовувати код між мобільним застосунком, веб-застосунком (React Native Web) та утилітарними пакетами. Переваги включають централізоване керування залежностями, атомарні рефакторинги та узгодженість коду між платформами.
2Яка основна роль Yarn workspaces у monorepo React Native?
Яка основна роль Yarn workspaces у monorepo React Native?
Відповідь
Yarn workspaces дозволяють керувати кількома пакетами в одному репозиторії з єдиним hoisted node_modules у кореневій теці. Це зменшує дублювання залежностей, забезпечує автоматичне символьне зв'язування між локальними пакетами та полегшує глобальні скрипти. У monorepo React Native це дозволяє автоматично зв'язувати спільні пакети як з мобільним, так і з веб-застосунком.
3Як налаштувати базове monorepo з Yarn workspaces для React Native?
Як налаштувати базове monorepo з Yarn workspaces для React Native?
Відповідь
Базова конфігурація вимагає кореневого package.json з полем workspaces, що визначає шаблони пакетів. Зазвичай packages/* або apps/* використовується для застосунків, а packages/* — для спільних бібліотек. Поле private має бути встановлене в true, щоб запобігти випадковій публікації кореневого пакета. Metro bundler також потребує конфігурації для коректного розв'язання символьних посилань.
Яку проблему може спричинити hoisting залежностей у monorepo React Native?
Що таке Nx і яку основну перевагу він надає порівняно з самими лише Yarn workspaces?
+15 питань зі співбесід
Інші теми співбесід React Native
Основи JavaScript
Основи React
Основи React Native
React Hooks
TypeScript для React та React Native
Компоненти та API React Native
Стилізація та макет у React Native
Навігація в React Native
Управління станом у React Native
Networking та API в React Native
Збереження даних
Форми та валідація
Анімації React Native
Native Modules & Bridge
Код, специфічний для платформи
Дозволи та API пристрою
Push Notifications
Тестування React Native
Налагодження React Native
Build & Deployment
Expo vs React Native Bare
Оптимізація продуктивності
Управління пам'яттю
Architecture Patterns
React Native New Architecture
Найкращі практики безпеки
Offline-First Architecture
CI/CD React Native
Складні теми
Життєвий цикл застосунку та фонове виконання
Автентифікація та керування сесіями
Monitoring & Crash Reporting
Опануй React Native для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно