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

Backbone and Promise A+

pierr
October 14, 2014

Backbone and Promise A+

Qu'est ce que c'est ? Quelle utilisation dans Backbone. Avantages, mise en place et retour d'expérience par Pierre Besson

pierr

October 14, 2014
Tweet

Other Decks in Programming

Transcript

  1. @ P I E R R E B E S

    S O N • Architecte chez KleeGroup • JS depuis 5 ans environ • ~10 projets réalisés ou en cours utilisant Backbone @pierrebesson @pierr
  2. Q U ’ E S T C E Q U

    ’ U N E P R O M I S E ? P R O M I S E A +
  3. V O U S E N U T I L

    I S E Z P R O B A B L E M E N T D A N S B A C K B O N E / J Q U E RY
  4. Q U ’ E S T C E Q U

    ’ U N E P R O M I S E ? L E S G A R A N T I E S ? Promesse d’un traitement asynchrone Une promesse ne peut réussir qu’une seule fois Une promesse ne peut échouer qu’une seule fois
  5. L E S É TAT S D ’ U N

    E P R O M I S E EN ATTENTE ACCOMPLIE REJETEE ETABLIE PENDING FULLFILED REJECTED SETTLED
  6. E C R I R E U N E P

    R O M I S E
  7. U N E P R O M I S E

    E S T “ T H E N A B L E ”
  8. A P P L I C AT I O N

    À B A C K B O N E
  9. V U E B A C K B O N

    E “ S I M P L E ” • Abonnement aux évènements • Callback comme propriété de la vue • Pas de visualisation claire de la séquence de fonctionnement
  10. V U E B A C K B O N

    E “ P R O M I S I F I E D ” • Abonnement au “change” • Chaîne de traitement visible • Gestion d’erreur unique
  11. M O D E L B A C K B

    O N E “ P R O M I S I F I E D ” A J O U T D ’ U N M A I L L O N D A N S L A C H A Î N E D E T R A I T E M E N T
  12. S Y N C H R O N E =

    > A S Y N C H R O N E • Homogénisation des traitements • Les traitements synchrone peuvent être transformés en Promise. PROMISES
  13. U T I L I S AT I O N

    À B O N E S C I E N T • Actions asynchrones dont on ne s’intéresse qu’au résultat • Les évènements sont pertinents pour les callbacks où il est nécessaire de passer à plusieurs reprise. • Maintenance du code • Facilité d’accès pour les dev non “JS” • Découpage du code dans des services R E T E X
  14. E C M A S C R I P T

    6 E S . N E X T H A R M O N Y N A T I V E ?
  15. P R E T S ? N AV I G

    AT E U R S node —harmony
  16. C O N C L U S I O N

    U T I L I S E Z D E S P R O M I S E S …
  17. • Article sur les promises https://gist.github.com/domenic/3889970 • http://spion.github.io/posts/why-i-am-switching-to-promises.html • mdn

    promises: https://developer.mozilla.org/fr/docs/Web/JavaScript/ Reference/Objets_globaux/Promise • html5rocks: http://www.html5rocks.com/en/tutorials/es6/promises/ • Cette présentation: L I E N S
  18. T R A N S F O R M E

    R E N P R O M I S E • fetch • save • delete • validate
  19. C H A R G E M E N T

    E N M A S S E • Chargement parallèle de plusieurs données • Gestion d’erreur unique pour chaque chargement • Chaîne de traitement lisible • On ne s’intéresse qu’au résultat