Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Creare un Information Radiator con Delphi

250 views

Published on

Slide della sessione "Creare un Information Radiator in Delphi" per ITDevCon 2017. Si parla della creazione di un pannello informativo basato su Raspberry Pi 3 e Android, e programmato con Delphi e FireMonkey.

Published in: Software
  • Be the first to comment

  • Be the first to like this

Creare un Information Radiator con Delphi

  1. 1. Crea un Information Radiator con Delphi
  2. 2. Chi sono Marco Breveglieri Software & Web Developer, Teacher and Consultant @ ABLS Team Software & Web (Reggio Emilia) Blogger (www.compilaquindiva.com) Host @ Delphi Podcast (www.delphipodcast.com) …and Sushi eater!
  3. 3. Agenda • Definizione • Esempi quotidiani • Caso reale • Hardware necessario • Web vs Nativo • Delphi e FireMonkey • Demo
  4. 4. Introduzione
  5. 5. Definizione Che cos'è? Un «Information Radiator» (IR) è un pannello informativo collocato in un posto dove le persone possano facilmente vederlo quando sono nelle vicinanze o vi passano accanto. A cosa serve? Lo scopo di questo pannello è fornire le informazioni di cui hanno bisogno alle persone interessate, senza che queste siano costrette a chiederle in giro. Più informazioni, meno interruzioni.
  6. 6. Caratteristiche Per essere un buon Information Radiator, il pannello deve • Essere grande e facilmente visibile per un osservatore interessato • Richiedere poco più di un'occhiata per erogare le informazioni • Cambiare spesso, o essere ricco, per aumentare l'interesse nella lettura • Essere aggiornabile facilmente (non solo in termini software)
  7. 7. Esempi quotidiani
  8. 8. McDonald's
  9. 9. Trenitalia /1
  10. 10. Trenitalia /2
  11. 11. Alitalia
  12. 12. Altri
  13. 13. …e noi? Un IR potrebbe essere una valida opportunità da proporre ai clienti, oggi fattibile. • Visualizzare lo stato dell'impianto in ambito industriale • Mostrare i dettagli di una distinta all'interno di un magazzino • Gestire una coda di prenotazioni (magari fatte da app e device accoppiati) • Intrattenere i partecipanti a un evento con risorse multimediali e notizie • Mostrare lo stato di avanzamento dello sviluppo di un software • Visualizzare informazioni provenienti da REST API e altre fonti sul Web: con una sola sottoscrizione a pagamento, si soddisfano tutti gli utenti che vedono il pannello! • Fare un demo per ITDevCon… 😉 …e voi, che proponete?
  14. 14. Un caso reale
  15. 15. Un pannello… "agile" Gli IR sono l'ultima moda come compendio alle metodologie agili (es. Scrum) per lo sviluppo del software: • Vengono fruiti dai membri del team di progetto, senza la necessità di interrompere il lavoro degli altri membri • I membri evitano di dover accedere costantemente alle informazioni dal proprio PC per avere un quadro della situazione • Possono dare un quadro completo anche ai Project Manager, senza dover chiedere informazioni direttamente ai membri o avere un accesso al portale
  16. 16. Cosa visualizzare? Gli information radiator mostrano informazioni sullo stato, quali • Storie appartenenti all'iterazione in corso • Persone assegnate alle attività • Quantità di test creati (con numero di quelli eseguiti con successo, o percentuale) • Numero di storie già rilasciate sul totale • Stato dei server principali (repository del sorgente, build server, …) • Statistiche generali di produttività, generale o individuale In breve, tutto ciò che lo "Scrum Master" vuole visualizzare al suo interno.
  17. 17. Un esempio reale
  18. 18. Struttura generale
  19. 19. Contenuti
  20. 20. Una possibile collocazione…
  21. 21. Ma cosa c'è dietro?
  22. 22. Raspberry Pi
  23. 23. Raspberry Pi 3
  24. 24. Raspberry Pi alla riscossa! Caratteristiche • Single Board Computer • CPU 64 bit da 1.2 GHz • 512 KiB cache L2 • 1 GB RAM • Bluetooth 4.1 Low Energy • Wi-Fi integrato 2.4 GHz 802.11n
  25. 25. Sistema operativo Finalmente il Raspberry Pi è sufficientemente potente per eseguire un sistema operativo esigente come Android. Diverse distro disponibili • AOSP (Nougat) • emteria.OS
  26. 26. Nativo (Delphi) vs Web Web? • Richiede l'installazione di un browser • Occorre installare plugin di rotazione delle pagine • Occupa molta memoria • Motore JavaScript lento nel rendering • Accesso limitato alle risorse hardware e ai sensori Nativo!! • Velocità e prestazioni • Meno memoria consumata • Accesso privilegiato alle risorse hardware • Nessuna libreria o framework richiesto • Rapidità nello sviluppo (Delphi è RAD!)
  27. 27. FireMonkey! La libreria FireMonkey (FMX) è l'ideale per sviluppare il nostro IR. • Ha il supporto crossplatform per dispositivi con Android e iOS (e con poco sforzo, anche per Linux) • Supporta grafica 2D e 3D, primitive, stili, riempimenti e tutto ciò che serve in una toolbox moderna • Il risultato è uguale su tutte le piattaforme (se funziona su Windows, funziona anche su Android) • Si può disegnare totalmente a piacimento (le differenze tra piattaforme mobile in termini di stili sono meno rilevanti in questo contesto) mentre la RTL offre: REST Client, Bluetooth, App Tethering, Data Access, …
  28. 28. Demo
  29. 29. Domande?
  30. 30. Grazie! 🙂

×