23
@xebiconfr #xebiconfr React Native & Redux Paul-Guillaume Déjardin

Xebicon2016 - React Native & Redux

Embed Size (px)

Citation preview

Page 1: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

React Native &

ReduxPaul-Guillaume

Déjardin

Page 2: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Qui suis-je ?

2

● Paul-Guillaume Déjardin

● Xebia

● @pgdejardin

● https://github.com/pgdejardin

Page 3: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Sommaire

● Le mobile

● React & Co.

● Intégration d'une librairie web : Redux

● L'environnement autour de React Native

3

Page 4: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Le Mobile

1

4

Page 5: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Comparatif pour dev sur mobile (vue par un dev front)

5

1

Page 6: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

React Native : la solution miracle ?

6

1

Page 7: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

React & Co.

2

7

Page 8: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

React : Qui ? Quoi ? Comment ?

● JSX● Virtual DOM● One way data binding● "Architecture beyond HTML" (Netflix, Paypal)

8

2

Page 9: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

React ? A quoi ça ressemble ?

9

2

Page 10: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Qui fait du React Native ?

10

2

Facebook group AirBnBDiscord

Page 11: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Et React Native ? À quoi ça ressemble ?

11

2

Page 12: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Qu'est-ce qu'il faut pour commencer ?

● Choisir sa cible et son environnement de développement○ IOS : Mac○ Android : Mac, Linux, Windows

● Un IDE ou un éditeur de texte○ XCode/Android Studio

● Node.js ○ brew install node○ nvm install 6

● Watchman○ brew install watchman

● Le client react-native-cli○ npm install -g react-native-cli

12

2

Page 13: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

C'est parti !

● react-native init MyAwesomeProject

● react-native run-ios (ou run-android)

13

2

Page 14: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Intégration d'une lib : Redux

3

14

Page 15: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Redux

15

3

Page 16: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Redux

16

3

Page 17: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Un peu plus de code ?

4

17

Page 18: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Continuous delivery et crash reporting

5

18

Page 19: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Les outils autour du dev avec React-Native

● Sentry/BugSnag pour les bugs Javascripts

● Crashlytics pour la couche native

● Déploiement possible avec Fastlane

● Tests avec Jest

19

5

Page 20: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Conclusion

6

20

Page 21: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Conclusion

21

6

Cons

● Très jeune● Pas tous les composants natifs

disponibles● Maturité des composants iOS Vs.

Android

Pros

● Vision et rendu natif● De bonnes performances● Intégration avec les libs web / natif

très facile● C'est du React● Déploiement instantané sur les stores

(si uniquement code JS)● Expérience développement

excellente

Page 22: Xebicon2016 - React Native & Redux

@xebiconfr #xebiconfr

Thank you!

22

6

https://github.com/pgdejardin/xebicon-reactnative-redux