SlideShare une entreprise Scribd logo
1  sur  24
Télécharger pour lire hors ligne
3h pour créer une application mobile de chat
Par Loïc Knuchel (@loicknuchel) et Loïc Delmaire (@loicdelmaire)
Loïc Knuchel
Développeur web full-stack
Fondateur de SalooN
Fan de depuis l’alpha ;)
Me contacter : loicknuchel@gmail.com - @loicknuchel - http://loic.knuchel.org/
Loïc Delmaire
Développeur web full-stack
CTO & co-founder de Jam, l’assistant personnel
pour les étudiants.
Me contacter : loic@justjam.at - @loicdelmaire - Jam: https://beta.meetj.am
Défi !
Créer une application mobile de chat en 3h ;)
Cool, non ?
Bien s’organiser :
★ Bons outils :
✔ Ionic
✔ Firebase
★ Pair programming ?
Framework UI spécialisé mobile
et basé sur Angular
- Styles
- Directives
- Outils
Natif
Web
Téléphone & APIs natives
Cordova : webview +
JavaScript bridges
AngularJS
Ionic
Votre application
Stack technologique
Ionic, c’est le bootstrap
des applications mobiles
hybrides (et bien plus...)
● collection-repeat: un ng-repeat
efficace pour de listes longues
<div class="list">
<div class="item item-avatar" collection-repeat="user in users">
<img ng-src="{{user.avatar}}"/>
<h2>{{user.name}}</h2>
<p>{{user.description}}</p>
</div>
</div>
Listes
<ion-view>
<ion-header-bar class="bar-positive">
<h1 class="title">Header</h1>
<button class="button button-clear icon ion-settings"></button>
</ion-header-bar>
<ion-content>
</ion-content>
<ion-footer-bar class="bar-dark">
<div class="title">Footer</div>
</ion-footer-bar>
</ion-view>
Header, Footer & Content
$ionicPopup
$ionicPopup.show({
template: '<input type="password" ng-model="data.wifi">',
title: 'Enter Wi-Fi Password',
subTitle: 'Please use normal things',
scope: $scope,
buttons: [
{ text: 'Cancel' },
{
text: '<b>Save</b>',
type: 'button-positive',
onTap: function(e) {
if (!$scope.data.wifi) {
//don't allow the user to close unless he enters wifi password
e.preventDefault();
} else {
return $scope.data.wifi;
}
}
}
]
}).then(function(code){
console.log('code', code);
});
Déroulement du Hands-on
● présentation du projet (done !)
● sprints de 20/30 min puis correction sous
forme de live-code
● pause à la mi-temps
Ressources :
● Le workshop : http://bit.ly/devoxx-ionic-chat
● CheatSheet Angular : help-angular.md (dans le repo)
● Doc Ionic : http://ionicframework.com/docs/components/
● Icônes Ionic : http://ionicons.com/
● API Angular : https://docs.angularjs.org/api/
● Docs Firebase : https://www.firebase.com/docs/web/
● Docs Angularfire : https://www.firebase.com/docs/web/libraries/angular/
Getting started
$ git clone … && cd …
$ npm install
$ bower install
$ ionic serve --lab
PS: Bien lire le help-angular.md
A vos claviers ;)

Contenu connexe

Tendances

Panorama des solutions mobile hybrides
Panorama des solutions mobile hybridesPanorama des solutions mobile hybrides
Panorama des solutions mobile hybridesekino
 
Panorama des Technologies mobiles
Panorama des Technologies mobilesPanorama des Technologies mobiles
Panorama des Technologies mobilesAbdoulaye Dieng
 
Dev Fest Nantes - Ionic le développement hybride mobile fun et productif
Dev Fest Nantes - Ionic le développement hybride mobile fun et productifDev Fest Nantes - Ionic le développement hybride mobile fun et productif
Dev Fest Nantes - Ionic le développement hybride mobile fun et productifStéphanie Moallic
 
Ionic, react native, native script
Ionic, react native, native scriptIonic, react native, native script
Ionic, react native, native scriptStéphanie MOALLIC
 
Réaliser une application mobile pour un groupe de presse avec PhoneGap
Réaliser une application mobile pour un groupe de presse avec PhoneGapRéaliser une application mobile pour un groupe de presse avec PhoneGap
Réaliser une application mobile pour un groupe de presse avec PhoneGapBenjamin LUPU
 
Construire une Application Mobile en 30 minutes avec le plugin WP-AppKit
Construire une Application Mobile en 30 minutes avec le plugin WP-AppKitConstruire une Application Mobile en 30 minutes avec le plugin WP-AppKit
Construire une Application Mobile en 30 minutes avec le plugin WP-AppKituncatcrea
 
Développer des applications mobiles avec phonegap
Développer des applications mobiles avec phonegapDévelopper des applications mobiles avec phonegap
Développer des applications mobiles avec phonegapMakina Corpus
 
[FR] Présentation de PhoneGap
[FR] Présentation de PhoneGap[FR] Présentation de PhoneGap
[FR] Présentation de PhoneGapThomas Bassetto
 
Ionic Framework, L'avenir du mobile sera hybride, bdx.io le 16-10-2015
Ionic Framework, L'avenir du mobile sera hybride, bdx.io le 16-10-2015Ionic Framework, L'avenir du mobile sera hybride, bdx.io le 16-10-2015
Ionic Framework, L'avenir du mobile sera hybride, bdx.io le 16-10-2015Loïc Knuchel
 
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour androidDébuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour androidBosco Basabana
 
Kinect pour les développeurs Web
Kinect pour les développeurs WebKinect pour les développeurs Web
Kinect pour les développeurs Webekino
 
jQuery mobile / PhoneGap : contenus dynamiques client-side
jQuery mobile / PhoneGap : contenus dynamiques client-sidejQuery mobile / PhoneGap : contenus dynamiques client-side
jQuery mobile / PhoneGap : contenus dynamiques client-sidemaru.maru
 
Phonegap
PhonegapPhonegap
PhonegapVISEO
 
J'ai fait une app native en React Native
J'ai fait une app native en React NativeJ'ai fait une app native en React Native
J'ai fait une app native en React NativeCocoaHeads France
 
Tuto Phonegap
Tuto PhonegapTuto Phonegap
Tuto PhonegapSUN
 
Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...
Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...
Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...Raphaël Kueny
 
PhoneGap VS Appcelerator
PhoneGap VS AppceleratorPhoneGap VS Appcelerator
PhoneGap VS AppceleratorTiyab K.
 
Présentation retour d'experience sur l'application MyLittleParis
Présentation retour d'experience sur l'application MyLittleParisPrésentation retour d'experience sur l'application MyLittleParis
Présentation retour d'experience sur l'application MyLittleParisCocoaHeads France
 

Tendances (20)

Panorama des solutions mobile hybrides
Panorama des solutions mobile hybridesPanorama des solutions mobile hybrides
Panorama des solutions mobile hybrides
 
Panorama des Technologies mobiles
Panorama des Technologies mobilesPanorama des Technologies mobiles
Panorama des Technologies mobiles
 
Dev Fest Nantes - Ionic le développement hybride mobile fun et productif
Dev Fest Nantes - Ionic le développement hybride mobile fun et productifDev Fest Nantes - Ionic le développement hybride mobile fun et productif
Dev Fest Nantes - Ionic le développement hybride mobile fun et productif
 
Ionic, react native, native script
Ionic, react native, native scriptIonic, react native, native script
Ionic, react native, native script
 
Réaliser une application mobile pour un groupe de presse avec PhoneGap
Réaliser une application mobile pour un groupe de presse avec PhoneGapRéaliser une application mobile pour un groupe de presse avec PhoneGap
Réaliser une application mobile pour un groupe de presse avec PhoneGap
 
Construire une Application Mobile en 30 minutes avec le plugin WP-AppKit
Construire une Application Mobile en 30 minutes avec le plugin WP-AppKitConstruire une Application Mobile en 30 minutes avec le plugin WP-AppKit
Construire une Application Mobile en 30 minutes avec le plugin WP-AppKit
 
Développer des applications mobiles avec phonegap
Développer des applications mobiles avec phonegapDévelopper des applications mobiles avec phonegap
Développer des applications mobiles avec phonegap
 
[FR] Présentation de PhoneGap
[FR] Présentation de PhoneGap[FR] Présentation de PhoneGap
[FR] Présentation de PhoneGap
 
Ionic Framework, L'avenir du mobile sera hybride, bdx.io le 16-10-2015
Ionic Framework, L'avenir du mobile sera hybride, bdx.io le 16-10-2015Ionic Framework, L'avenir du mobile sera hybride, bdx.io le 16-10-2015
Ionic Framework, L'avenir du mobile sera hybride, bdx.io le 16-10-2015
 
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour androidDébuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
 
Kinect pour les développeurs Web
Kinect pour les développeurs WebKinect pour les développeurs Web
Kinect pour les développeurs Web
 
jQuery mobile / PhoneGap : contenus dynamiques client-side
jQuery mobile / PhoneGap : contenus dynamiques client-sidejQuery mobile / PhoneGap : contenus dynamiques client-side
jQuery mobile / PhoneGap : contenus dynamiques client-side
 
Apache Cordova 3.3 de zéro
Apache Cordova 3.3 de zéroApache Cordova 3.3 de zéro
Apache Cordova 3.3 de zéro
 
Phonegap
PhonegapPhonegap
Phonegap
 
J'ai fait une app native en React Native
J'ai fait une app native en React NativeJ'ai fait une app native en React Native
J'ai fait une app native en React Native
 
Tuto Phonegap
Tuto PhonegapTuto Phonegap
Tuto Phonegap
 
Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...
Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...
Introduction au développement mobile avec Titanium Appcelerator @ Human Talks...
 
PhoneGap VS Appcelerator
PhoneGap VS AppceleratorPhoneGap VS Appcelerator
PhoneGap VS Appcelerator
 
Présentation retour d'experience sur l'application MyLittleParis
Présentation retour d'experience sur l'application MyLittleParisPrésentation retour d'experience sur l'application MyLittleParis
Présentation retour d'experience sur l'application MyLittleParis
 
Internet mobile
Internet mobileInternet mobile
Internet mobile
 

En vedette

La Veille en E-Réputation et Community Management [2/3] : Outils, méthodologi...
La Veille en E-Réputation et Community Management [2/3] : Outils, méthodologi...La Veille en E-Réputation et Community Management [2/3] : Outils, méthodologi...
La Veille en E-Réputation et Community Management [2/3] : Outils, méthodologi...Grégoire Arnould
 
Angular 4 - ngfor -- Français
Angular 4  - ngfor -- FrançaisAngular 4  - ngfor -- Français
Angular 4 - ngfor -- FrançaisVERTIKA
 
Meet up paris 13 of jun 2017
Meet up paris 13 of jun 2017Meet up paris 13 of jun 2017
Meet up paris 13 of jun 2017Jasmine Conseil
 
Traitement numérique des images - Projet Android "Virtual Pong" - Présentation
Traitement numérique des images - Projet Android "Virtual Pong" - PrésentationTraitement numérique des images - Projet Android "Virtual Pong" - Présentation
Traitement numérique des images - Projet Android "Virtual Pong" - PrésentationValentin Thirion
 
Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...
Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...
Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...Mathias Seguy
 
Développement Android
Développement AndroidDéveloppement Android
Développement AndroidFranck SIMON
 
Algea - 04 - conclusion
Algea - 04 - conclusionAlgea - 04 - conclusion
Algea - 04 - conclusionYann Caron
 
01 programmation mobile - android - (introduction)
01 programmation mobile - android - (introduction)01 programmation mobile - android - (introduction)
01 programmation mobile - android - (introduction)TECOS
 
Radio cognitive et intelligence artificielle
Radio cognitive et intelligence artificielleRadio cognitive et intelligence artificielle
Radio cognitive et intelligence artificiellebenouini rachid
 
Mobilization 2017: Don't lose your users because of endless quality issues
Mobilization 2017: Don't lose your users because of endless quality issuesMobilization 2017: Don't lose your users because of endless quality issues
Mobilization 2017: Don't lose your users because of endless quality issuesOlivier Destrebecq
 
04 programmation mobile - android - (db, receivers, services...)
04 programmation mobile - android - (db, receivers, services...)04 programmation mobile - android - (db, receivers, services...)
04 programmation mobile - android - (db, receivers, services...)TECOS
 
1cours virologie généralités (1)
1cours virologie généralités (1)1cours virologie généralités (1)
1cours virologie généralités (1)imlen gan
 
Andcx formation-android-avance-creation-d-applications-complexes
Andcx formation-android-avance-creation-d-applications-complexesAndcx formation-android-avance-creation-d-applications-complexes
Andcx formation-android-avance-creation-d-applications-complexesCERTyou Formation
 
Android Studio, premier contact
Android Studio, premier contactAndroid Studio, premier contact
Android Studio, premier contactJasmine Conseil
 
Support de la formation Android 5 , Avancé
Support de la formation Android 5 , Avancé Support de la formation Android 5 , Avancé
Support de la formation Android 5 , Avancé Alphorm
 

En vedette (20)

Mta
MtaMta
Mta
 
La Veille en E-Réputation et Community Management [2/3] : Outils, méthodologi...
La Veille en E-Réputation et Community Management [2/3] : Outils, méthodologi...La Veille en E-Réputation et Community Management [2/3] : Outils, méthodologi...
La Veille en E-Réputation et Community Management [2/3] : Outils, méthodologi...
 
Angular 4 - ngfor -- Français
Angular 4  - ngfor -- FrançaisAngular 4  - ngfor -- Français
Angular 4 - ngfor -- Français
 
Meet up paris 13 of jun 2017
Meet up paris 13 of jun 2017Meet up paris 13 of jun 2017
Meet up paris 13 of jun 2017
 
Traitement numérique des images - Projet Android "Virtual Pong" - Présentation
Traitement numérique des images - Projet Android "Virtual Pong" - PrésentationTraitement numérique des images - Projet Android "Virtual Pong" - Présentation
Traitement numérique des images - Projet Android "Virtual Pong" - Présentation
 
Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...
Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...
Conférence "Architecture Android" du 19 Mars 2013 par Mathias Seguy fondateur...
 
Initiation aux echecs
Initiation aux echecsInitiation aux echecs
Initiation aux echecs
 
Développement Android
Développement AndroidDéveloppement Android
Développement Android
 
Introduction gestion de projet
Introduction gestion de projetIntroduction gestion de projet
Introduction gestion de projet
 
Android 6 marshmallow
Android 6 marshmallowAndroid 6 marshmallow
Android 6 marshmallow
 
Algea - 04 - conclusion
Algea - 04 - conclusionAlgea - 04 - conclusion
Algea - 04 - conclusion
 
01 programmation mobile - android - (introduction)
01 programmation mobile - android - (introduction)01 programmation mobile - android - (introduction)
01 programmation mobile - android - (introduction)
 
Radio cognitive et intelligence artificielle
Radio cognitive et intelligence artificielleRadio cognitive et intelligence artificielle
Radio cognitive et intelligence artificielle
 
Mobilization 2017: Don't lose your users because of endless quality issues
Mobilization 2017: Don't lose your users because of endless quality issuesMobilization 2017: Don't lose your users because of endless quality issues
Mobilization 2017: Don't lose your users because of endless quality issues
 
04 programmation mobile - android - (db, receivers, services...)
04 programmation mobile - android - (db, receivers, services...)04 programmation mobile - android - (db, receivers, services...)
04 programmation mobile - android - (db, receivers, services...)
 
1cours virologie généralités (1)
1cours virologie généralités (1)1cours virologie généralités (1)
1cours virologie généralités (1)
 
Android à domicile
Android à domicileAndroid à domicile
Android à domicile
 
Andcx formation-android-avance-creation-d-applications-complexes
Andcx formation-android-avance-creation-d-applications-complexesAndcx formation-android-avance-creation-d-applications-complexes
Andcx formation-android-avance-creation-d-applications-complexes
 
Android Studio, premier contact
Android Studio, premier contactAndroid Studio, premier contact
Android Studio, premier contact
 
Support de la formation Android 5 , Avancé
Support de la formation Android 5 , Avancé Support de la formation Android 5 , Avancé
Support de la formation Android 5 , Avancé
 

Similaire à Devoxx 2015, Atelier Ionic - 09/04/2015

Parlons App Economie : du dev à l'usage
Parlons App Economie : du dev à l'usageParlons App Economie : du dev à l'usage
Parlons App Economie : du dev à l'usageLaFrenchMobile
 
Web Mobile : quelles opportunités face aux apps ?
Web Mobile : quelles opportunités face aux apps ?Web Mobile : quelles opportunités face aux apps ?
Web Mobile : quelles opportunités face aux apps ?NiceToMeetYou
 
Offre migrer vers_flutter
Offre migrer vers_flutterOffre migrer vers_flutter
Offre migrer vers_flutterJulien Saumande
 
Veille sur : Web 2.0, Web 3.0, Social Media et Real Time Web
Veille sur : Web 2.0, Web 3.0, Social Media et Real Time WebVeille sur : Web 2.0, Web 3.0, Social Media et Real Time Web
Veille sur : Web 2.0, Web 3.0, Social Media et Real Time Webmaclic
 
Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogySacha Leprêtre
 
1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy
1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy
1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - AlloyMeetup Mobile Montpellier
 
Présentation du framework Titanium
Présentation du framework TitaniumPrésentation du framework Titanium
Présentation du framework TitaniumDamien Laureaux
 
Barcamp tunisie edition 2010 friendesk
Barcamp tunisie edition 2010 friendeskBarcamp tunisie edition 2010 friendesk
Barcamp tunisie edition 2010 friendeskBarcamp Tunisie
 
Actualisation de site WEB : Outils : JOOMLA!
Actualisation de site WEB : Outils : JOOMLA! Actualisation de site WEB : Outils : JOOMLA!
Actualisation de site WEB : Outils : JOOMLA! Arnold Stellio
 
Atelier - Stratégie Mobile : les clés pour réussir
Atelier - Stratégie Mobile : les clés pour réussir Atelier - Stratégie Mobile : les clés pour réussir
Atelier - Stratégie Mobile : les clés pour réussir Medialibs
 
La Gestion de Projet Mobile
La Gestion de Projet MobileLa Gestion de Projet Mobile
La Gestion de Projet MobileSebastien Brison
 
Conférence Titanium + Alloy au JUG Montpellier
Conférence Titanium + Alloy au JUG MontpellierConférence Titanium + Alloy au JUG Montpellier
Conférence Titanium + Alloy au JUG MontpellierDamien Laureaux
 
userADgents WWDC iOS 8 juin 2014
userADgents WWDC iOS 8 juin 2014userADgents WWDC iOS 8 juin 2014
userADgents WWDC iOS 8 juin 2014USERADGENTS
 
Publier une application mobile en un clic
Publier une application mobile en un clicPublier une application mobile en un clic
Publier une application mobile en un clicFabernovel
 

Similaire à Devoxx 2015, Atelier Ionic - 09/04/2015 (20)

Parlons App Economie : du dev à l'usage
Parlons App Economie : du dev à l'usageParlons App Economie : du dev à l'usage
Parlons App Economie : du dev à l'usage
 
Web Mobile : quelles opportunités face aux apps ?
Web Mobile : quelles opportunités face aux apps ?Web Mobile : quelles opportunités face aux apps ?
Web Mobile : quelles opportunités face aux apps ?
 
Offre migrer vers_flutter
Offre migrer vers_flutterOffre migrer vers_flutter
Offre migrer vers_flutter
 
Veille sur : Web 2.0, Web 3.0, Social Media et Real Time Web
Veille sur : Web 2.0, Web 3.0, Social Media et Real Time WebVeille sur : Web 2.0, Web 3.0, Social Media et Real Time Web
Veille sur : Web 2.0, Web 3.0, Social Media et Real Time Web
 
Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogy
 
Meetup sencha
Meetup senchaMeetup sencha
Meetup sencha
 
1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy
1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy
1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy
 
Présentation du framework Titanium
Présentation du framework TitaniumPrésentation du framework Titanium
Présentation du framework Titanium
 
Barcamp tunisie edition 2010 friendesk
Barcamp tunisie edition 2010 friendeskBarcamp tunisie edition 2010 friendesk
Barcamp tunisie edition 2010 friendesk
 
Actualisation de site WEB : Outils : JOOMLA!
Actualisation de site WEB : Outils : JOOMLA! Actualisation de site WEB : Outils : JOOMLA!
Actualisation de site WEB : Outils : JOOMLA!
 
Ppveille
PpveillePpveille
Ppveille
 
Réussir son projet robotique
Réussir son projet robotiqueRéussir son projet robotique
Réussir son projet robotique
 
Cv dridi-lotfi
Cv dridi-lotfiCv dridi-lotfi
Cv dridi-lotfi
 
Ionic
IonicIonic
Ionic
 
Atelier - Stratégie Mobile : les clés pour réussir
Atelier - Stratégie Mobile : les clés pour réussir Atelier - Stratégie Mobile : les clés pour réussir
Atelier - Stratégie Mobile : les clés pour réussir
 
La Gestion de Projet Mobile
La Gestion de Projet MobileLa Gestion de Projet Mobile
La Gestion de Projet Mobile
 
Conférence Titanium + Alloy au JUG Montpellier
Conférence Titanium + Alloy au JUG MontpellierConférence Titanium + Alloy au JUG Montpellier
Conférence Titanium + Alloy au JUG Montpellier
 
dossier20-ecran
dossier20-ecrandossier20-ecran
dossier20-ecran
 
userADgents WWDC iOS 8 juin 2014
userADgents WWDC iOS 8 juin 2014userADgents WWDC iOS 8 juin 2014
userADgents WWDC iOS 8 juin 2014
 
Publier une application mobile en un clic
Publier une application mobile en un clicPublier une application mobile en un clic
Publier une application mobile en un clic
 

Plus de Loïc Knuchel

Scala bad practices, scala.io 2019
Scala bad practices, scala.io 2019Scala bad practices, scala.io 2019
Scala bad practices, scala.io 2019Loïc Knuchel
 
Mutation testing, enfin une bonne mesure de la qualité des tests ?, RivieraDe...
Mutation testing, enfin une bonne mesure de la qualité des tests ?, RivieraDe...Mutation testing, enfin une bonne mesure de la qualité des tests ?, RivieraDe...
Mutation testing, enfin une bonne mesure de la qualité des tests ?, RivieraDe...Loïc Knuchel
 
Comprendre la programmation fonctionnelle, Blend Web Mix le 02/11/2016
Comprendre la programmation fonctionnelle, Blend Web Mix le 02/11/2016Comprendre la programmation fonctionnelle, Blend Web Mix le 02/11/2016
Comprendre la programmation fonctionnelle, Blend Web Mix le 02/11/2016Loïc Knuchel
 
Ionic2, les développeurs web à l'assaut du mobile, BDX I/O le 21/10/2016
Ionic2, les développeurs web à l'assaut du mobile, BDX I/O le 21/10/2016Ionic2, les développeurs web à l'assaut du mobile, BDX I/O le 21/10/2016
Ionic2, les développeurs web à l'assaut du mobile, BDX I/O le 21/10/2016Loïc Knuchel
 
Ionic2 - the raise of web developer, Riviera DEV le 17/06/2016
Ionic2 - the raise of web developer, Riviera DEV le 17/06/2016Ionic2 - the raise of web developer, Riviera DEV le 17/06/2016
Ionic2 - the raise of web developer, Riviera DEV le 17/06/2016Loïc Knuchel
 
FP is coming... le 19/05/2016
FP is coming... le 19/05/2016FP is coming... le 19/05/2016
FP is coming... le 19/05/2016Loïc Knuchel
 
Programmation fonctionnelle en JavaScript
Programmation fonctionnelle en JavaScriptProgrammation fonctionnelle en JavaScript
Programmation fonctionnelle en JavaScriptLoïc Knuchel
 
Ionic, ce n'est pas que de l'UI, meetup PhoneGap le 25-05-2015
Ionic, ce n'est pas que de l'UI, meetup PhoneGap le 25-05-2015Ionic, ce n'est pas que de l'UI, meetup PhoneGap le 25-05-2015
Ionic, ce n'est pas que de l'UI, meetup PhoneGap le 25-05-2015Loïc Knuchel
 
Ionic HumanTalks - 11/03/2015
Ionic HumanTalks - 11/03/2015Ionic HumanTalks - 11/03/2015
Ionic HumanTalks - 11/03/2015Loïc Knuchel
 
Ionic bbl le 19 février 2015
Ionic bbl le 19 février 2015Ionic bbl le 19 février 2015
Ionic bbl le 19 février 2015Loïc Knuchel
 
Des maths et des recommandations - Devoxx 2014
Des maths et des recommandations - Devoxx 2014Des maths et des recommandations - Devoxx 2014
Des maths et des recommandations - Devoxx 2014Loïc Knuchel
 

Plus de Loïc Knuchel (11)

Scala bad practices, scala.io 2019
Scala bad practices, scala.io 2019Scala bad practices, scala.io 2019
Scala bad practices, scala.io 2019
 
Mutation testing, enfin une bonne mesure de la qualité des tests ?, RivieraDe...
Mutation testing, enfin une bonne mesure de la qualité des tests ?, RivieraDe...Mutation testing, enfin une bonne mesure de la qualité des tests ?, RivieraDe...
Mutation testing, enfin une bonne mesure de la qualité des tests ?, RivieraDe...
 
Comprendre la programmation fonctionnelle, Blend Web Mix le 02/11/2016
Comprendre la programmation fonctionnelle, Blend Web Mix le 02/11/2016Comprendre la programmation fonctionnelle, Blend Web Mix le 02/11/2016
Comprendre la programmation fonctionnelle, Blend Web Mix le 02/11/2016
 
Ionic2, les développeurs web à l'assaut du mobile, BDX I/O le 21/10/2016
Ionic2, les développeurs web à l'assaut du mobile, BDX I/O le 21/10/2016Ionic2, les développeurs web à l'assaut du mobile, BDX I/O le 21/10/2016
Ionic2, les développeurs web à l'assaut du mobile, BDX I/O le 21/10/2016
 
Ionic2 - the raise of web developer, Riviera DEV le 17/06/2016
Ionic2 - the raise of web developer, Riviera DEV le 17/06/2016Ionic2 - the raise of web developer, Riviera DEV le 17/06/2016
Ionic2 - the raise of web developer, Riviera DEV le 17/06/2016
 
FP is coming... le 19/05/2016
FP is coming... le 19/05/2016FP is coming... le 19/05/2016
FP is coming... le 19/05/2016
 
Programmation fonctionnelle en JavaScript
Programmation fonctionnelle en JavaScriptProgrammation fonctionnelle en JavaScript
Programmation fonctionnelle en JavaScript
 
Ionic, ce n'est pas que de l'UI, meetup PhoneGap le 25-05-2015
Ionic, ce n'est pas que de l'UI, meetup PhoneGap le 25-05-2015Ionic, ce n'est pas que de l'UI, meetup PhoneGap le 25-05-2015
Ionic, ce n'est pas que de l'UI, meetup PhoneGap le 25-05-2015
 
Ionic HumanTalks - 11/03/2015
Ionic HumanTalks - 11/03/2015Ionic HumanTalks - 11/03/2015
Ionic HumanTalks - 11/03/2015
 
Ionic bbl le 19 février 2015
Ionic bbl le 19 février 2015Ionic bbl le 19 février 2015
Ionic bbl le 19 février 2015
 
Des maths et des recommandations - Devoxx 2014
Des maths et des recommandations - Devoxx 2014Des maths et des recommandations - Devoxx 2014
Des maths et des recommandations - Devoxx 2014
 

Devoxx 2015, Atelier Ionic - 09/04/2015

  • 1. 3h pour créer une application mobile de chat Par Loïc Knuchel (@loicknuchel) et Loïc Delmaire (@loicdelmaire)
  • 2. Loïc Knuchel Développeur web full-stack Fondateur de SalooN Fan de depuis l’alpha ;) Me contacter : loicknuchel@gmail.com - @loicknuchel - http://loic.knuchel.org/
  • 3. Loïc Delmaire Développeur web full-stack CTO & co-founder de Jam, l’assistant personnel pour les étudiants. Me contacter : loic@justjam.at - @loicdelmaire - Jam: https://beta.meetj.am
  • 4.
  • 5.
  • 6.
  • 8. Créer une application mobile de chat en 3h ;)
  • 9.
  • 10.
  • 11.
  • 13. Bien s’organiser : ★ Bons outils : ✔ Ionic ✔ Firebase ★ Pair programming ?
  • 14.
  • 15. Framework UI spécialisé mobile et basé sur Angular - Styles - Directives - Outils
  • 16. Natif Web Téléphone & APIs natives Cordova : webview + JavaScript bridges AngularJS Ionic Votre application Stack technologique
  • 17. Ionic, c’est le bootstrap des applications mobiles hybrides (et bien plus...)
  • 18. ● collection-repeat: un ng-repeat efficace pour de listes longues <div class="list"> <div class="item item-avatar" collection-repeat="user in users"> <img ng-src="{{user.avatar}}"/> <h2>{{user.name}}</h2> <p>{{user.description}}</p> </div> </div> Listes
  • 19. <ion-view> <ion-header-bar class="bar-positive"> <h1 class="title">Header</h1> <button class="button button-clear icon ion-settings"></button> </ion-header-bar> <ion-content> </ion-content> <ion-footer-bar class="bar-dark"> <div class="title">Footer</div> </ion-footer-bar> </ion-view> Header, Footer & Content
  • 20. $ionicPopup $ionicPopup.show({ template: '<input type="password" ng-model="data.wifi">', title: 'Enter Wi-Fi Password', subTitle: 'Please use normal things', scope: $scope, buttons: [ { text: 'Cancel' }, { text: '<b>Save</b>', type: 'button-positive', onTap: function(e) { if (!$scope.data.wifi) { //don't allow the user to close unless he enters wifi password e.preventDefault(); } else { return $scope.data.wifi; } } } ] }).then(function(code){ console.log('code', code); });
  • 21. Déroulement du Hands-on ● présentation du projet (done !) ● sprints de 20/30 min puis correction sous forme de live-code ● pause à la mi-temps
  • 22. Ressources : ● Le workshop : http://bit.ly/devoxx-ionic-chat ● CheatSheet Angular : help-angular.md (dans le repo) ● Doc Ionic : http://ionicframework.com/docs/components/ ● Icônes Ionic : http://ionicons.com/ ● API Angular : https://docs.angularjs.org/api/ ● Docs Firebase : https://www.firebase.com/docs/web/ ● Docs Angularfire : https://www.firebase.com/docs/web/libraries/angular/
  • 23. Getting started $ git clone … && cd … $ npm install $ bower install $ ionic serve --lab PS: Bien lire le help-angular.md