12. Puente
● No transpila código de un lenguaje a otro
● Recibe un JSON serializado
● Genera una pila de mensajes (Message Queue)
● Los envía a la capa correspondiente para
deserializar (JS V8 o capa nativa)
● Batch asíncrono
13. Puente
Message Queue:
2584 I ReactNativeJS: N->JS :
RCTEventEmitter.receiveTouches(["topTouchStart",[{"identifier":0,"locationY":47.9301872253418,"locati
onX":170.43936157226562,"pageY":110.02542877197266,"timestamp":2378613,"target":26,"pageX":24
5.4869842529297}],[0]])
2584 I ReactNativeJS: JS->N : Timing.createTimer([18,130,1477140761852,false])
2584 I ReactNativeJS: JS->N : Timing.createTimer([19,500,1477140761852,false])
2584 I ReactNativeJS: JS->N : UIManager.setJSResponder([23,false])
2584 I ReactNativeJS: N->JS :
RCTEventEmitter.receiveTouches(["topTouchEnd",[{"identifier":0,"locationY":47.9301872253418,"locati
onX":170.43936157226562,"pageY":110.02542877197266,"timestamp":2378703,"target":26,"pageX":24
5.4869842529297}],[0]])
2584 I ReactNativeJS: JS->N : UIManager.clearJSResponder([])
2584 I ReactNativeJS: JS->N : Timing.deleteTimer([19])
2584 I ReactNativeJS: JS->N : Timing.deleteTimer([18])
18. Ventajas
● Performance (90% average)
● Learn once - Write everywhere
● Debugging and UI Development (live reload)
19. Ventajas
● Performance (90% average)
● Learn once - Write everywhere
● Debugging and UI Development (live reload)
● Team Productivity
20. Ventajas
● Performance (90% average)
● Learn once - Write everywhere
● Debugging and UI Development (live reload)
● Team Productivity
● 3rd-party Libraries.
21. Ventajas
● Performance (90% average)
● Learn once - Write everywhere
● Debugging and UI Development (live reload)
● Team Productivity
● 3rd-party Libraries
● Open Source community
38. Expo
● XDE (sort of an IDE but more like a CLI)
● APIs
● Remote client
39. Expo
● XDE (sort of an IDE but more like a CLI)
● APIs
● Remote client
● Expo publish (remote server)
40. Expo
● XDE (sort of an IDE but more like a CLI)
● APIs
● Remote client
● Expo publish (remote server)
● Easy archive and deploy
41. Expo
● XDE (sort of an IDE but more like a CLI)
● APIs
● Remote client
● Expo publish (remote server)
● Easy archive and deploy
● Create React Native App (!)