Upgrade to Pro — share decks privately, control downloads, hide ads and more …

React Native 101

React Native 101

Porqué debería usar React Native para desarrollar apps nativas? Qué beneficios tiene React Native?

Esta presentación fue usada para impartir un workshop organizado por @theevnt en la oficina de Tuenti en Madrid.

El proyecto del workshop está publicado en github.com: https://github.com/alexissan/ReactNativeWorkshop

Si necesitas más info acerca del workshop puedes contactarnos:

[email protected]
[email protected]

Alexis Santos Pérez

May 23, 2015
Tweet

More Decks by Alexis Santos Pérez

Other Decks in Programming

Transcript

  1. DESARROLLAR APPS EN 2015 1. Ciclo de desarrollo lento 2.

    Ciclo de release eterno 3. Equipos separados por plataforma 4. APIs distintas para hacer lo mismo
  2. WEBVIEWS EN 2015 1. Rendimiento pobre 2. Experiencia de usuario

    inferior 3. Funcionalidades nativas limitadas
  3. WEBVIEWS EN 2015 1. RENDIMIENTO POBRE 2. EXPERIENCIA DE USUARIO

    INFERIOR 3. FUNCIONALIDADES NATIVAS LIMITADAS
  4. REACT NATIVE EN 2015 1. Ciclo de desarrollo lento Recarga

    instantánea 2. Ciclo de release lento Actualizaciones OTA legales !!! 3. Equipos separados por plataforma Mismas herramientas 4. APIs distintas para hacer lo mismo APIs consistentes
  5. REACT NATIVE EN 2015 1. Rendimiento pobre Árbol de vistas

    virtual 2. Experiencia de usuario inferior Vistas nativas 3. Funcionalidades nativas limitadas Fácil de extender
  6. APPS EN 2015 ▸ Hacer aplicaciones dinámicas es complicado ▸

    Pocos estados -> muchas transiciones ▸ Escalar aplicaciones web estáticas es mucho más fácil ▸ Petición HTTP -> App -> Respuesta HTML
  7. ▸ UI funcional basado en componentes ▸ Árbol de vistas

    virtual ▸ Frontend en JavaScript (ES6, npm, TypeScript...) ▸ Layout con JSX ▸ Estilos inline con Flexbox (Next-Gen CSS) ▸ Backend nativo (UIKit, network, storage, location...)
  8. ¿CÓMO FUNCIONA? ▸ Hilo en segundo plano ejecuta nuestro JavaScript

    ▸ Hilo principal habla con UIKit, red, etc ▸ Comunicación mínima entre ellos ▸ El hilo principal avisa de eventos ▸ JavaScript manda diffs de cambios en vistas
  9. ¿DEBERÍA USARLO? ▸ Muy joven, no es 100% estable/completo ▸

    Comunidad muy activa ▸ Un par de apps de Facebook ya en la AppStore ▸ Disponible para Android pronto ▸ Nuclide: IDE específico próximamente