SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
Flutter SDK
Développement mobile multiplateforme
Erick Ghaumez,
Consultant Front-end / Formateur

http:/rxla.bz
flutter.io
• SDK open-source développé par Google

• Objectif : faciliter et accélérer le développement de
belles applications mobiles performantes ( iOS et
Android, et peut être plus … )
Points forts
• Outillage / Developper Experience

• Orienté UI

• Architecture « reactive » basée sur widgets

• Implémentation soignée de Material Design

• Moteur Graphique « maison »

• Dart 

• Accès aux APIs natives

• Performances…
Architecture
Outils
• Flutter CLI

$ git clone https://github.com/flutter/flutter.git
$ export PATH=`pwd`/flutter/bin:$PATH
• flutter doctor, flutter create, flutter run, … 

• IntelliJ plugin ( ou VS Code )

•Hot reload
• Dart Observatory
Orienté UI
• Une application Flutter est un arbre de widgets
« réactifs »  ( composants )

• Le fonctionnement des widgets est inspiré de React

• Stateless / Stateful 

• Stateful : setState(( )=>… ) … provoque un build( )
Layout facile
• Tout est widget :
• Row, Column, Stack

• Container, Padding, Center,

• Text, RaisedButton, FlatButton, IconButton, RichText

• ListView, GridView, Table

• …
Material design
• Catalogue : https://flutter.io/widgets/
…
+ Cupertino widgets : https://flutter.io/widgets/cupertino/
Custom UIs
• L’utilisation de Material design est facultatif, Flutter
permet de créer facilement ses propres ( styles de )
composants

• Inkwell, GestureDetector

• CustomPainter
Dart
• Un langage solide, moderne et familier



https://www.dartlang.org/guides/language/language-tour

https://dartpad.dartlang.org

• OO, typage statique ( Flutter / Dart 2.0 ), enum, Generics, mixins…

• Asynchronie : Future, async / await

• Streams ( ± RxJS Observables )

• …

• Des cores librairies très riches ( io, async, collection… )

• Un outillage efficace : pub, analyzer, observatory, stagehand, dartfmt…
Dart : sucres syntaxiques
• Cascades

• get / set

• Fonctions

• paramètres nommés

• One liner

• typedef

• Constructeurs nommés, constructeurs « Factory »  

• …
Architecture
API natives et plugins
• Un système de canaux
permet à Flutter/Dart de
facilement communiquer avec
la plateforme native

• https://rxlabz.github.io/dart/
flutter/2017/06/15/sytody-
flutter-natif-plugins.html
Liens
• https://play.google.com/store/apps/details?id=io.flutter.gallery

• https://flutter.io/setup/

• Exemples : https://github.com/flutter/flutter/tree/master/
examples

• Awesome Flutter : https://github.com/Solido/awesome-
flutter/blob/master/README.md

• https://docs.flutter.io

• Package & plugins : https://pub.dartlang.org/flutter

Contenu connexe

Tendances

Les Systèmes d'exploitation mobile
Les Systèmes d'exploitation mobileLes Systèmes d'exploitation mobile
Les Systèmes d'exploitation mobileMohamed BOURAOUI
 
Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...
Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...
Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...MOHAMMED MOURADI
 
Rapport PFE ISMAGI SQLI Microsoft
Rapport PFE ISMAGI SQLI MicrosoftRapport PFE ISMAGI SQLI Microsoft
Rapport PFE ISMAGI SQLI MicrosoftOussama BAHLOULI
 
Projet de fin d'etude sur le parc informatique
Projet  de fin d'etude sur le parc informatiqueProjet  de fin d'etude sur le parc informatique
Projet de fin d'etude sur le parc informatiqueHicham Ben
 
Chp2 - Conception UX-UI des Applications Mobiles
Chp2 - Conception UX-UI des Applications MobilesChp2 - Conception UX-UI des Applications Mobiles
Chp2 - Conception UX-UI des Applications MobilesLilia Sfaxi
 
Rapport de projet de fin d"études
Rapport de projet de fin d"étudesRapport de projet de fin d"études
Rapport de projet de fin d"étudesMohamed Boubaya
 
Conception et developpement d'une application mobile Android e-location
Conception et developpement d'une application mobile Android e-locationConception et developpement d'une application mobile Android e-location
Conception et developpement d'une application mobile Android e-locationALALSYSE
 
1601896849 rapport fluttercopie
1601896849 rapport fluttercopie1601896849 rapport fluttercopie
1601896849 rapport fluttercopieRamiJOUDI2
 
Conception et réalisation d'une application web et mobile de e-commerce
Conception et réalisation d'une application web et mobile de e-commerceConception et réalisation d'une application web et mobile de e-commerce
Conception et réalisation d'une application web et mobile de e-commerceAHMEDBELGHITH4
 
Rapport projet c : Logiciel de gestion des ressources humaines
Rapport projet c : Logiciel de gestion des ressources humainesRapport projet c : Logiciel de gestion des ressources humaines
Rapport projet c : Logiciel de gestion des ressources humainesHosni Mansour
 
RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITLina Meddeb
 
Stage d'été : Conception et développement d'une application mobile d'éco-cond...
Stage d'été : Conception et développement d'une application mobile d'éco-cond...Stage d'été : Conception et développement d'une application mobile d'éco-cond...
Stage d'été : Conception et développement d'une application mobile d'éco-cond...Dhafer Dhib
 
Projet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatiqueProjet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatiquejihene Ab
 
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
Projet de fin étude  ( LFIG : Conception et Développement d'une application W...Projet de fin étude  ( LFIG : Conception et Développement d'une application W...
Projet de fin étude ( LFIG : Conception et Développement d'une application W...Ramzi Noumairi
 
Présentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clientsPrésentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clientsMohamed Ayoub OUERTATANI
 
Presentation pfe Système de gestion des rendez-vous médicaux
Presentation pfe Système de gestion des rendez-vous médicauxPresentation pfe Système de gestion des rendez-vous médicaux
Presentation pfe Système de gestion des rendez-vous médicauxFehmi Arbi
 

Tendances (20)

Les Systèmes d'exploitation mobile
Les Systèmes d'exploitation mobileLes Systèmes d'exploitation mobile
Les Systèmes d'exploitation mobile
 
Développement web mobile avec IONIC 2
Développement web mobile avec IONIC 2Développement web mobile avec IONIC 2
Développement web mobile avec IONIC 2
 
Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...
Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...
Rapport application web (Spring BOOT,angular4) et mobile(ionc3) gestion des a...
 
Rapport PFE ISMAGI SQLI Microsoft
Rapport PFE ISMAGI SQLI MicrosoftRapport PFE ISMAGI SQLI Microsoft
Rapport PFE ISMAGI SQLI Microsoft
 
Projet de fin d'etude sur le parc informatique
Projet  de fin d'etude sur le parc informatiqueProjet  de fin d'etude sur le parc informatique
Projet de fin d'etude sur le parc informatique
 
Chp2 - Conception UX-UI des Applications Mobiles
Chp2 - Conception UX-UI des Applications MobilesChp2 - Conception UX-UI des Applications Mobiles
Chp2 - Conception UX-UI des Applications Mobiles
 
Rapport de projet de fin d"études
Rapport de projet de fin d"étudesRapport de projet de fin d"études
Rapport de projet de fin d"études
 
Conception et developpement d'une application mobile Android e-location
Conception et developpement d'une application mobile Android e-locationConception et developpement d'une application mobile Android e-location
Conception et developpement d'une application mobile Android e-location
 
1601896849 rapport fluttercopie
1601896849 rapport fluttercopie1601896849 rapport fluttercopie
1601896849 rapport fluttercopie
 
Conception et réalisation d'une application web et mobile de e-commerce
Conception et réalisation d'une application web et mobile de e-commerceConception et réalisation d'une application web et mobile de e-commerce
Conception et réalisation d'une application web et mobile de e-commerce
 
Rapport projet c : Logiciel de gestion des ressources humaines
Rapport projet c : Logiciel de gestion des ressources humainesRapport projet c : Logiciel de gestion des ressources humaines
Rapport projet c : Logiciel de gestion des ressources humaines
 
RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRIT
 
Stage d'été : Conception et développement d'une application mobile d'éco-cond...
Stage d'été : Conception et développement d'une application mobile d'éco-cond...Stage d'été : Conception et développement d'une application mobile d'éco-cond...
Stage d'été : Conception et développement d'une application mobile d'éco-cond...
 
Gestion de-soutenance
Gestion de-soutenanceGestion de-soutenance
Gestion de-soutenance
 
Projet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatiqueProjet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatique
 
gestion de projet
gestion de projetgestion de projet
gestion de projet
 
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
Projet de fin étude  ( LFIG : Conception et Développement d'une application W...Projet de fin étude  ( LFIG : Conception et Développement d'une application W...
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
 
Présentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clientsPrésentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clients
 
Rapport de stage du fin d'étude
Rapport de stage du fin d'étudeRapport de stage du fin d'étude
Rapport de stage du fin d'étude
 
Presentation pfe Système de gestion des rendez-vous médicaux
Presentation pfe Système de gestion des rendez-vous médicauxPresentation pfe Système de gestion des rendez-vous médicaux
Presentation pfe Système de gestion des rendez-vous médicaux
 

Similaire à Développement mobile multi-plateforme avec Flutter

ParisfxLab - Artforge, by HD3D
ParisfxLab - Artforge, by HD3DParisfxLab - Artforge, by HD3D
ParisfxLab - Artforge, by HD3DFrançois Hanat
 
Tech Conf n°1 - Développement natif d'applications mobiles
Tech Conf n°1 - Développement natif d'applications mobilesTech Conf n°1 - Développement natif d'applications mobiles
Tech Conf n°1 - Développement natif d'applications mobilesMichael Laguerre
 
Adama Coulibaly.pptx
Adama Coulibaly.pptxAdama Coulibaly.pptx
Adama Coulibaly.pptxIdrissaDembl
 
Javascript & tools
Javascript & toolsJavascript & tools
Javascript & toolsSlim Soussi
 
Développement d'un moteur de recherche avec Zend Search
Développement d'un moteur de recherche avec Zend SearchDéveloppement d'un moteur de recherche avec Zend Search
Développement d'un moteur de recherche avec Zend SearchRobert Viseur
 
Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)Vincent Biret
 
Symfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 PerformantSymfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 PerformantHugo Hamon
 
Acquia et Arte : Drupal Camp Paris 2013
Acquia et Arte : Drupal Camp Paris 2013Acquia et Arte : Drupal Camp Paris 2013
Acquia et Arte : Drupal Camp Paris 2013Cyril Reinhard
 
L'Open Web en tant que pierre angulaire du développement multi-objets
L'Open Web en tant que pierre angulaire du développement multi-objetsL'Open Web en tant que pierre angulaire du développement multi-objets
L'Open Web en tant que pierre angulaire du développement multi-objetsThomas Bassetto
 
Decouvrez CreateJS
Decouvrez CreateJSDecouvrez CreateJS
Decouvrez CreateJSFCHAPLIN
 
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...ENSIBS
 
introAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdfintroAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdfRihabBENLAMINE
 
Arte utilise Acquia Cloud pour héberger ses plateformes web
Arte utilise Acquia Cloud pour héberger ses plateformes webArte utilise Acquia Cloud pour héberger ses plateformes web
Arte utilise Acquia Cloud pour héberger ses plateformes webAcquia
 
DevoxxFR Présentation des portails en 2014
DevoxxFR Présentation des portails en 2014DevoxxFR Présentation des portails en 2014
DevoxxFR Présentation des portails en 2014Stéphane Liétard
 
Rich Desktop Applications
Rich Desktop ApplicationsRich Desktop Applications
Rich Desktop Applicationsgoldoraf
 

Similaire à Développement mobile multi-plateforme avec Flutter (20)

Hello xcode 4 v2
Hello xcode 4 v2Hello xcode 4 v2
Hello xcode 4 v2
 
Hello Xcode 4 v2
Hello Xcode 4 v2Hello Xcode 4 v2
Hello Xcode 4 v2
 
ParisfxLab - Artforge, by HD3D
ParisfxLab - Artforge, by HD3DParisfxLab - Artforge, by HD3D
ParisfxLab - Artforge, by HD3D
 
Tech Conf n°1 - Développement natif d'applications mobiles
Tech Conf n°1 - Développement natif d'applications mobilesTech Conf n°1 - Développement natif d'applications mobiles
Tech Conf n°1 - Développement natif d'applications mobiles
 
Adama Coulibaly.pptx
Adama Coulibaly.pptxAdama Coulibaly.pptx
Adama Coulibaly.pptx
 
Javascript & tools
Javascript & toolsJavascript & tools
Javascript & tools
 
Développement d'un moteur de recherche avec Zend Search
Développement d'un moteur de recherche avec Zend SearchDéveloppement d'un moteur de recherche avec Zend Search
Développement d'un moteur de recherche avec Zend Search
 
Tizen sdk-solutionslinux-20130529
Tizen sdk-solutionslinux-20130529Tizen sdk-solutionslinux-20130529
Tizen sdk-solutionslinux-20130529
 
Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)
 
Symfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 PerformantSymfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 Performant
 
Acquia et Arte : Drupal Camp Paris 2013
Acquia et Arte : Drupal Camp Paris 2013Acquia et Arte : Drupal Camp Paris 2013
Acquia et Arte : Drupal Camp Paris 2013
 
L'Open Web en tant que pierre angulaire du développement multi-objets
L'Open Web en tant que pierre angulaire du développement multi-objetsL'Open Web en tant que pierre angulaire du développement multi-objets
L'Open Web en tant que pierre angulaire du développement multi-objets
 
Decouvrez CreateJS
Decouvrez CreateJSDecouvrez CreateJS
Decouvrez CreateJS
 
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
 
Universitélang scala tools
Universitélang scala toolsUniversitélang scala tools
Universitélang scala tools
 
introAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdfintroAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdf
 
Arte utilise Acquia Cloud pour héberger ses plateformes web
Arte utilise Acquia Cloud pour héberger ses plateformes webArte utilise Acquia Cloud pour héberger ses plateformes web
Arte utilise Acquia Cloud pour héberger ses plateformes web
 
DevoxxFR Présentation des portails en 2014
DevoxxFR Présentation des portails en 2014DevoxxFR Présentation des portails en 2014
DevoxxFR Présentation des portails en 2014
 
HTML5
HTML5HTML5
HTML5
 
Rich Desktop Applications
Rich Desktop ApplicationsRich Desktop Applications
Rich Desktop Applications
 

Développement mobile multi-plateforme avec Flutter

  • 1. Flutter SDK Développement mobile multiplateforme Erick Ghaumez, Consultant Front-end / Formateur http:/rxla.bz
  • 2. flutter.io • SDK open-source développé par Google • Objectif : faciliter et accélérer le développement de belles applications mobiles performantes ( iOS et Android, et peut être plus … )
  • 3. Points forts • Outillage / Developper Experience • Orienté UI • Architecture « reactive » basée sur widgets • Implémentation soignée de Material Design • Moteur Graphique « maison » • Dart • Accès aux APIs natives • Performances…
  • 5. Outils • Flutter CLI
 $ git clone https://github.com/flutter/flutter.git $ export PATH=`pwd`/flutter/bin:$PATH • flutter doctor, flutter create, flutter run, … • IntelliJ plugin ( ou VS Code ) •Hot reload • Dart Observatory
  • 6. Orienté UI • Une application Flutter est un arbre de widgets « réactifs »  ( composants ) • Le fonctionnement des widgets est inspiré de React • Stateless / Stateful • Stateful : setState(( )=>… ) … provoque un build( )
  • 7. Layout facile • Tout est widget : • Row, Column, Stack • Container, Padding, Center, • Text, RaisedButton, FlatButton, IconButton, RichText • ListView, GridView, Table • …
  • 8. Material design • Catalogue : https://flutter.io/widgets/ … + Cupertino widgets : https://flutter.io/widgets/cupertino/
  • 9. Custom UIs • L’utilisation de Material design est facultatif, Flutter permet de créer facilement ses propres ( styles de ) composants • Inkwell, GestureDetector • CustomPainter
  • 10. Dart • Un langage solide, moderne et familier
 
 https://www.dartlang.org/guides/language/language-tour
 https://dartpad.dartlang.org • OO, typage statique ( Flutter / Dart 2.0 ), enum, Generics, mixins… • Asynchronie : Future, async / await • Streams ( ± RxJS Observables ) • … • Des cores librairies très riches ( io, async, collection… ) • Un outillage efficace : pub, analyzer, observatory, stagehand, dartfmt…
  • 11. Dart : sucres syntaxiques • Cascades • get / set • Fonctions • paramètres nommés • One liner • typedef • Constructeurs nommés, constructeurs « Factory »   • …
  • 13. API natives et plugins • Un système de canaux permet à Flutter/Dart de facilement communiquer avec la plateforme native • https://rxlabz.github.io/dart/ flutter/2017/06/15/sytody- flutter-natif-plugins.html
  • 14. Liens • https://play.google.com/store/apps/details?id=io.flutter.gallery • https://flutter.io/setup/ • Exemples : https://github.com/flutter/flutter/tree/master/ examples • Awesome Flutter : https://github.com/Solido/awesome- flutter/blob/master/README.md • https://docs.flutter.io • Package & plugins : https://pub.dartlang.org/flutter