Da Windows Phone a Windows 8: andata e ritorno

796 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
796
On SlideShare
0
From Embeds
0
Number of Embeds
152
Actions
Shares
0
Downloads
10
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Da Windows Phone a Windows 8: andata e ritorno

  1. 1. DA WINDOWS PHONE AWINDOWS 8: ANDATA ERITORNO.UN ESEMPIO REALE DIPORTING.Matteo PaganiMicrosoft MVP – Windows Phone DevelopmentMail: info@qmatteoq.comWeb: www.qmatteoq.comTwitter: @qmatteoq
  2. 2. Agenda• Un caso reale: Ricette Toscane• L’architettura• Adattare la UI• Lo storage• I contracts: Search• Le tile multiple
  3. 3. Un caso reale: Ricette Toscane• Un’applicazione per Windows Phone 7.5• Sviluppata con il pattern MVVM• Supporto alle tile multiple• Utilizzo di un database locale SQL CE
  4. 4. Da così...
  5. 5. A così...
  6. 6. Punti in comune• Esperienza d’uso simile: sono applicazioni touch based• Stesso paradigma di interfaccia grafica (Metro)• Architettura e ciclo di vita delle applicazioni simile
  7. 7. Differenze• Silverlight (.NET) vs WinRT• Diverse risoluzioni e dimensioni dello schermo• Diversi stati visivi: filled, snapped, portrait, ecc.
  8. 8. Quali soluzioniarchitetturali?
  9. 9. Il pattern MVVM• Separazione tra logica e UI• Testabilità: è più semplice scrivere unit test• Manutenibilità: è più facile identificare i problemi• Blendability: è più semplice per un designer lavorare sulla UI
  10. 10. Model• Sono i servizi che si occupano di recuperare i dati dell’applicazione• Servizi asincroni che interagiscono con il database SQL CE• Espongono le operazioni per recuperare le ricette
  11. 11. View• E’ la UI dell’applicazione• In Windows Phone è composta dai file XAML che definiscono il layout• Non contiene logica nel code-behind
  12. 12. ViewModel• Funge da punto di incontro tra la View e il Model• Elabora i dati ricevuti dal Model e li adatta per essere presentati dalla View
  13. 13. MVVM Light• Libreria open source per l’implementazione del pattern MVVM• Sviluppata da Laurent Bugnion, Microsoft MVP• Disponibile sia per Windows Phone che per WinRT
  14. 14. L’INTERFACCIA
  15. 15. Panorama• Nasce per mostrare elementi differenti tra di loro• Utilizzato nel menu principale per accedere alle ricette
  16. 16. Pivot• Nasce per mostrare elementi differenti ma legati allo stesso contesto• Utilizzato per mostrare le varie caratteristiche di una ricetta
  17. 17. Application Bar • Nasce per dare accesso alle funzioni più importanti legate al contesto • Utilizzata per dare accesso alle tile multiple
  18. 18. GridView e ListView
  19. 19. Application Bar
  20. 20. Snapped
  21. 21. DEMO
  22. 22. Lo storage in Windows Phone• Isolated Storage: ogni applicazione ha un suo spazio isolato e dedicato• Utilizzo di un database relazionale basato su SQL CE• Interazione con il database tramite LINQ to SQL
  23. 23. Lo storage in Windows 8• Tre tipologie di storage: – Local: equiparabile a quello di WP – Roaming: sincronizzato tramite account Live – Temporary: per la cache• InstalledLocation, per accedere ai file inclusi nel progetto
  24. 24. Lo storage in Windows 8• Serializzazione con XML / JSON• SQL Lite con progetti open source come Callisto (http://s.qmatteoq.com/SqlLite)• Cloud e servizi
  25. 25. DEMO
  26. 26. I contratti• Un modo per fare interagire applicazioni con il sistema operativo o altre applicazioni• Esempi di contratto: Search, Share, Print, Play To (DNLA)
  27. 27. Il search contract• Evento OnSearchActivated dichiarato nell’App.xaml.cs• Punto di accesso dell’applicazione quando viene attivata una ricerca• Definizione di una pagina per mostrare i risultati• Dichiarazione nel manifest
  28. 28. DEMO
  29. 29. Tile multiple• Concettualmente identica alla controparte Windows Phone• Possibilità di creare tile secondare con un deep link verso una pagina specifica con eventuali parametri• Occorre gestire un ciclo di vita differente da quello standard
  30. 30. DEMO
  31. 31. Q&A
  32. 32. Laboratori su Windows 8• Lab per i testing• Lab per la precertificazione• Contattare Lorenzo Barbieri (lorenzo.barbieri@microsoft.com)
  33. 33. GRAZIE!Matteo PaganiMicrosoft MVP – Windows Phone DevelopmentMail: info@qmatteoq.comWeb: www.qmatteoq.comTwitter: @qmatteoq

×