Выбор ответа Senior Нативные модули обновлено

TurboModule: спецификация

Вопрос

С чего начинается создание TurboModule в новой архитектуре?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Со спецификации на TypeScript, по которой Codegen генерирует склейку. Спецификация interface Spec extends TurboModule и TurboModuleRegistry.getEnforcing<Spec('Name') описывают контракт.

Варианты ответа

  1. С написания C++ класса вручную и регистрации его в JSI своими силами
  2. С регистрации модуля в NativeModules через мост, как раньше
  3. Со спецификации на TypeScript, по которой Codegen генерирует склейкуправильный ответ
  4. С настройки WebView, через который новая архитектура вызывает натив

Разбор

Спецификация interface Spec extends TurboModule и TurboModuleRegistry.getEnforcing<Spec>('Name') описывают контракт. Codegen создаёт по ней интерфейсы для Kotlin/Java и Objective-C++ и C++ склейку с JSI. Ручной C++ не обязателен, NativeModules и мост относятся к старой архитектуре, WebView здесь не участвует.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.