ionic+parse: approccio value-driven per lo sviluppo mobile
TRANSCRIPT
![Page 1: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/1.jpg)
IONIC + PARSEApproccio value-driven per lo sviluppo mobile
#angularconf15http://2015.angularconf.it
![Page 2: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/2.jpg)
![Page 3: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/3.jpg)
![Page 4: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/4.jpg)
autore pubblicare un mio articolo farlo leggere agli utenti del mio blog
Comevorrei
così da
![Page 5: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/5.jpg)
utente effettuare l’autenticazione accedere alle funzionalità private
Comevorrei
così da ———————— ———————
Techuser story
![Page 6: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/6.jpg)
APPROCCIO VALUE-DRIVENFocus sulle funzionalità che danno valore all’utente
![Page 7: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/7.jpg)
ITERAZIONE #1• impostazione della struttura del progetto
• connessione al DBMS
• integrazione dell’email provider
• setup dell’ambiente di test
• …
![Page 8: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/8.jpg)
RETROSPETTIVAQuanto vale questo primo ciclo di sviluppo per l’utente?
STOP DOING
Sviluppare funzionalità senza valore per
l’utente
START DOING
Sviluppare utilizzandogli strumenti giusti
![Page 9: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/9.jpg)
IONIC FRAMEWORKApache Cordova + AngularJS
per lo sviluppo di applicazione mobile ibride
![Page 10: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/10.jpg)
LET’S GET STARTED$ npm install -g cordova ionic
$ ionic start [options] <PATH> [template]
blank tabs sidemenu
![Page 11: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/11.jpg)
STRUTTURA DEL PROGETTO
![Page 12: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/12.jpg)
Mobile OS
APP IBRIDEApache Cordova
Services SensorsInput Graphics
Web App
HTML JavaScript
CSS Resources
HTML Rendering Engine (WebView)
OS A
PIs
HTM
L API
s
JS AP
Is
Cordova plug-ins
OS A
PIs
Accelerometer Geolocation
Camera Media
Compass Network
Contacts Notification
File Storage
Custom Plug-ins
Cordova Native APIs
![Page 13: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/13.jpg)
CROSS PLATFORM$ ionic platform add <PLATFORM>
SUPPORTATI BETA
![Page 14: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/14.jpg)
IONIC === ANGULARJS• Modularità
• Componenti
• Data binding
• DI
• Testabilità
![Page 15: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/15.jpg)
UI FRAMEWORK
![Page 16: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/16.jpg)
DYNAMIC TEMPLATE
iOS Android
iOS
Android
![Page 17: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/17.jpg)
FEEDBACK$ ionic serve
$ ionic emulate <PLATFORM>
$ ionic run <PLATFORM>
![Page 18: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/18.jpg)
![Page 19: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/19.jpg)
NG-CORDOVA$ bower install ngCordova
<script src=“…/ng-cordova.js”></script>
angular.module('myApp', ['ngCordova'])
$ ionic plugin add <PLUGIN>
![Page 20: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/20.jpg)
NG-CORDOVA$ ionic plugin add org.apache.cordova.camera
![Page 21: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/21.jpg)
$ ionic upload
CONTINUOS DELIVERY
![Page 22: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/22.jpg)
NON CI STIAMO DIMENTICANDO QUALCOSA?
Il server deve essere sviluppato con approccio value-driven
![Page 23: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/23.jpg)
SCENARIO• Server REST
• Connessione DBMS
• Access control list
• Integrazione email provider
• …
![Page 24: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/24.jpg)
PARSEBack-end as a Service
![Page 25: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/25.jpg)
COSA OFFRE• Cloud database
• Push notification service
• Analytics tracking
![Page 26: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/26.jpg)
AUTENTICAZIONE• Login / Social login
• Signup / Conferma email / Cambio password
• Gestione degli accessi
![Page 27: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/27.jpg)
INTEGRAZIONE• Email service
• Phone/SMS service
• Payment service
![Page 28: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/28.jpg)
LET’S GET STARTED<script src=“…/parse.js”></script>
Parse.initialize(<APPID>,< JSKEY>);
![Page 29: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/29.jpg)
DATABASE• NoSQL a documenti
• Schemaless
• Colonne tipizzate
• Possibile definire relazioni
![Page 30: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/30.jpg)
DATABASE
![Page 31: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/31.jpg)
DATABASE - SAVE
![Page 32: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/32.jpg)
DATABASE - QUERY
![Page 33: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/33.jpg)
AUTENTICAZIONE
![Page 34: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/34.jpg)
PROS & CONS• javascript
• no back-end
• develop oncedeploy everywhere
• cordova != nativo
• service provider limitati
• costi
![Page 35: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/35.jpg)
ALTERNATIVE
![Page 36: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/36.jpg)
IONIC + PARSEIl mio toolkit di sviluppo mobileadatto all’approccio value-driven
![Page 37: Ionic+Parse: approccio value-driven per lo sviluppo mobile](https://reader030.vdocumenti.com/reader030/viewer/2022021502/589e1b7f1a28ab605b8b5ad5/html5/thumbnails/37.jpg)
GRAZIE
#angularconf15http://2015.angularconf.it
Nicola Sanitate
n_sanitate
nsanitate