React Native програмиране

Моля, върнете се и прочетете React Native 101ако не сте конфигурирали системата си да изпълнява React Native. Ако имате, давайте...

В. Как работи React Native?

React Native работи с четири нишки:
UI, JS, Native модули & Render

В. Какви са тези теми?

1) Нишка на потребителския интерфейс:Известна е още като основна нишка. Това се използва за собствено изобразяване на потребителския интерфейс на Android или iOS.

2) JS нишка:JS нишката или Javascript нишката е нишката, в която ще се изпълнява логиката.

3) Нишка за собствени модули:Понякога приложението се нуждае от достъп до API на платформата и това се случва като част от нишката за собствен модул. Като камера и местоположение.

4) Нишка за изобразяване:Само в Android L (5.0) нишката за изобразяване на реакцията се използва за генериране на действителни OpenGL команди, използвани за изчертаване на вашия потребителски интерфейс.

В. Как се случва изпълнението на React Native?

1) При първото стартиране на приложението основната нишка започва изпълнение и започва да зарежда Javascript пакетите.

2) Когато кодът на JavaScript е зареден успешно, главната нишка го изпраща към друга нишка на JS, защото когато JS направи някои тежки изчисления, запълват нишката за известно време, нишката на потребителския интерфейс няма да пострада изобщо.

3) Когато React започне рендиране, Reconciler започва да „различава“ и когато генерира нов виртуален DOM, той изпраща промени в друга нишка (Shadow нишка).

4) Shadow нишката изчислява оформлението и след това изпраща параметри/обекти на оформлението към основната (UI) нишка. Ние го наричаме нишка „сянка“, защото генерира възли в сянка.

5) Тъй като само главната нишка може да изобрази нещо на екрана, нишката в сянка трябва да изпрати генерираното оформление до главната нишка и едва след това UI да изобразява.

Резюме: За да обобщим всичко, React Native е език, който има предимства както на Javascript, така и на Native. Можем да разделим тази архитектура на три блока:

Native, JavaScript, Bridge

Където слоят Bridge е разположен между Native и JavaScript.

С помощта на Bridge или RCTBridge,React Native и Native комуникацията се осъществява.