Slide 1

Slide 1 text

React Native 4 Dummies Flávio Caetano Senior Developer

Slide 2

Slide 2 text

1. O que 2. Como 3. Demo 4. Por quê

Slide 3

Slide 3 text

O que é React Native

Slide 4

Slide 4 text

1. Plataforma para criar React-like apps 2. JavaScript & JSX 3. Objective-C & Swift 4. Java 5. Híbrido (one app to rule them all) 6. Nativo

Slide 5

Slide 5 text

1. Web app 2. Conversor de código 3. DOM React Native não é

Slide 6

Slide 6 text

Como RN Funciona

Slide 7

Slide 7 text

1. Componentes ⟷ Views Nativas 2. Props → atributos públicos imutáveis 3. State → atributos mutáveis Conceitos

Slide 8

Slide 8 text

Contexto JS Contexto Nativo Inicialização Componentes Alocação dinâmica das views Interação Callback do Componente queue JS Main queue + outras Atualiza UI

Slide 9

Slide 9 text

1. constructor 2. componentWillMount 3. render 4. componentDidMount 5. componentWillUnmount Lifecycle do componente

Slide 10

Slide 10 text

1. componentWillReceiveProps 2. shouldComponentUpdate 3. componentWillUpdate 4. render 5. componentDidUpdate Update do componente

Slide 11

Slide 11 text

1. Packager gera um bundle do JS 2. Queue JS executa o bundle 3. Main queue cuida da UI 4. Views alocadas dinamicamente 5. Bridging apenas quando necessário Recapitulando

Slide 12

Slide 12 text

Animações

Slide 13

Slide 13 text

1. Rodam no contexto nativo 2. Declarativas 3. Interpolação (matriz de transformação)

Slide 14

Slide 14 text

Contexto JS Contexto Nativo Declaração queue JS Main queue Inicialização Executa animação Frame 1 Executa animação Frame 2 Executa animação Frame 3

Slide 15

Slide 15 text

Demo

Slide 16

Slide 16 text

Por quê usar RN?

Slide 17

Slide 17 text

1. Tempo de iteração ↓ 2. 1 projeto para 2 plataformas 3. 1 time de desenvolvimento mobile 4. Performance aceitável 5. 99% JS + 1% nativo 6. Cocoapods libs nativas + ∞ libs JS 7. Tchau Xcode/Android Studio

Slide 18

Slide 18 text

Obrigado github.com/fjcaetano @flavio_caetano