eBook - ePub
Ionic 5
Guida completa per creare app per Android e iOS
Serena Sensini
This is a test
Share book
- 256 pages
- Italian
- ePUB (mobile friendly)
- Available on iOS & Android
eBook - ePub
Ionic 5
Guida completa per creare app per Android e iOS
Serena Sensini
Book details
Book preview
Table of contents
Citations
About This Book
In questo manuale lo sviluppatore si mette alla prova con il mondo delle app mobile, attraverso un framework molto versatile, che consente di creare delle applicazioni partendo da zero: dai concetti di base all'utilizzo dei diversi elementi per costruire un'app robusta, accattivante e cross-platform. Ionic è uno strumento estremamente utile per chi ha già sviluppato applicazioni web, ma anche per chi ha poche basi e vuole cimentarsi nello sviluppo di un'app senza dover gestire due diverse piattaforme
Frequently asked questions
How do I cancel my subscription?
Can/how do I download books?
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
What is the difference between the pricing plans?
Both plans give you full access to the library and all of Perlegoâs features. The only differences are the price and subscription period: With the annual plan youâll save around 30% compared to 12 months on the monthly plan.
What is Perlego?
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, weâve got you covered! Learn more here.
Do you support text-to-speech?
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Is Ionic 5 an online PDF/ePUB?
Yes, you can access Ionic 5 by Serena Sensini in PDF and/or ePUB format, as well as other popular books in Informatique & Virtualisation. We have over one million books available in our catalogue for you to explore.
Information
Topic
InformatiqueSubtopic
Virtualisation1
Primi passi
Queste prime righe vi aiuteranno a delineare i contorni di questo volume, che vi guiderĂ passo dopo passo verso lo sviluppo di unâapp completa, con diverse funzionalitĂ e frammenti di codice spiegati progressivamente nei capitoli del libro. Vedremo infatti come Ionic risulti essere un framework che si presta perfettamente alla creazione di app semplici e veloci, soprattutto per chi ha giĂ dimestichezza con lo sviluppo web o con framework che derivano da TypeScript.
Come in ogni buon libro, è giusto ripercorrere quelli che sono i passi fondamentali di questo framework: chi lâha progettato, comâè nato e come possiamo sfruttarlo al meglio.
Un poâ di storia
Se ne avete già sentito parlare, probabilmente queste righe vi suoneranno familiari; se invece è la prima volta che vi approcciate a Ionic, tutto ciò che andremo a vedere di seguito vi sarà di grande aiuto.
Ionic è un SDK open source che nasce dal lavoro di Max Lynch, Ben Sperry e Adam Bradley appena 6 anni fa. La prima versione di questo framework si basava su AngularJS e Cordova, libreria per applicazioni web sviluppata da una delle piÚ grandi industrie del settore, ideata soprattutto per lo sviluppo di applicazioni cosiddette single-page. Le ultime versioni di Ionic, quindi inclusa la 5.0.0, permettono la scelta tra diversi framework di front-end, come Vue.js, React e/o Angular.
PerchĂŠ Ionic è cosĂŹ diffuso? In particolar modo nellâultima versione, è stato interamente ristrutturato, facendo in modo che ogni componente sia trattato come un web component, ovvero un insieme di strumenti che consentono di creare nuovi tag HTML personalizzati, riutilizzabili e incapsulati da sfruttare nelle pagine e nelle app web. Questo tipo di framework permette infatti la realizzazione di app ibride, ossia di app che possono essere distribuite sia su piattaforma Android sia iOS.
Se finora vi siete persi qualche pezzo, niente paura: alla fine di questo libro troverete un glossario con tutti i termini tecnici che possono tornarvi utili durante lo sviluppo. Questo libro è infatti pensato per dare gli strumenti a chi vuole iniziare a programmare unâapp in Ionic, pur non avendo una base tecnica ben consolidata. Un prerequisito però câè: dal momento che Ionic è basato su Angular e quindi su TypeScript, la conoscenza di questi â anche se basilare â è fondamentale.
Se cosĂŹ non fosse, vi consiglio di dare unâocchiata alla documentazione ufficiale, oppure a questo repository:
https://github.com/sudheerj/angular-interview-questions
Si tratta di una raccolta di domande su Angular molto semplice, che vi permette di approcciarvi facilmente a questa libreria e di imparare i concetti chiave di questo framework. Nella parte pratica di questo manuale andremo infatti a utilizzare Angular, anzichĂŠ Vue.js o React, anche se tutti i concetti che vedremo sono facilmente applicabili anche a queste altre tecnologie.
Ma procediamo per gradi: intanto, per darvi unâidea di che cosâè Ionic e come funziona, diamo unâocchiata al codice di seguito:
src/app/app.component.html
<ion-header [translucent]="true"> Â Â <ion-toolbar> Â Â Â Â <ion-buttons slot="start"> Â Â Â Â Â Â <ion-menu-button></ion-menu-button> Â Â Â Â </ion-buttons> Â Â Â Â <ion-title>Lista della spesa</ion-title> Â Â </ion-toolbar> </ion-header>
<ion-content [fullscreen]="true"> Â Â <ion-list> Â Â Â Â <ion-item>Pane</ion-item> Â Â Â Â <ion-item>Latte</ion-item> Â Â Â Â <ion-item>Uova</ion-item> Â Â </ion-list> </ion-content>
Con pochissimi tag, lâesempio sopra riportato creerĂ unâinterfaccia utente che si presenta e si comporta come una tipica pagina di app per dispositivi mobile, con un elenco a scorrimento che in questo caso rappresenta una lista della spesa.
I componenti forniti da Ionic sono in genere leggermente piĂš complessi dei semplici elementi HTML. I componenti web, cosĂŹ come in Angular, ci consentono di costruire una logica complessa negli elementi. A volte un componente in Ionic fornisce un risultato che presenta uno stile semplice per mostrare quello che ci si aspetterebbe di vedere in unâapplicazione iOS/Android (come un <ion-button>), mentre a volte i componenti avranno anche script piĂš complessi che possono essere incorporati in essi (come nel caso del componente <ion-datetime>, che fornisce un selettore di date a scorrimento).
Il risultato delle poche righe scritte in precedenza avrĂ un aspetto simile a quanto mostrato nella Figura 1.1.
Nellâesempio, allâinterno di un componente abbiamo creato unâintestazione con il titolo della nostra pagina, quindi abbiamo creato una lista di contenuti, che in questo caso sono i prodotti da comprare andando al supermercato.
Certo, questo è un esempio molto semplice, ma alla fine di questo libro saremo in grado di creare applicazioni molto piĂš complesse, che permettano allâutente di scattare foto, oppure effettuare pagamenti o semplicemente farci sognare sulla nostra prossima meta di viaggio.
Figura 1.1 â Lista della spesa.
PerchĂŠ usare Ionic
Quando creiamo applicazioni con Ionic, in genere non utilizziamo solo i componenti web forniti dal framework. Strumenti come Cordova ci consentono di creare unâapplicazione Ionic come se fosse unâapplicazione nativa per iOS o Android. La riga di comando di Ionic consentirĂ di creare una versione dellâapplicativo che può essere distribuita sul web, ma senza dover scrivere una riga di codice nativo per i due sistemi operativi. Cosa câè di piĂš sorprendente per uno sviluppatore che sfruttare le sue capacitĂ di sviluppo di applicazioni web nella creazione di unâapplicazione mobile multipiattaforma (in questo caso iOS e Android) e nel frattempo dare un aspetto attraente e responsive allâapplicazione stessa? Alcune delle caratteristiche che Ionic offre e che lo rendono uno strumento di sviluppo mobile davvero eccezionale sono elencate di seguito.
Gratuito e open source
Ionic è un framework open source autorizzato dal MIT. Ciò implica che gli sviluppatori possono gestire efficacemente la struttura del codice, risparmiando sforzi, denaro e tempo. Hanno anche un forum di community in tutto il mondo, per aiutare a comunicare con altri sviluppatori di app Ionic, fare ricerche e aiutare gli altri.
Cross-platform e one-codebase
Ionic consente lo sviluppo coerente di applicazioni su sistemi operativi famosi, per esempio iOS, Android e Windows. Ha la caratteristica di avere un codice base, ossia le applicazioni vengono implementate tramite Apache Cordova con una base di codice stand-alone e lâapp si adatta di conseguenza al dispositivo su cui è in esecuzione, senza che sia necessario saper programmare in codice nativo.
Invio di aggiornamenti in remoto
PoichĂŠ le applicazioni ibride funzionano allâinterno di una visualizzazione web, gli sviluppatori possono indirizzare gli aggiornamenti alle loro applicazioni in remoto attraverso il web, piuttosto che con il metodo convenzionale di inserire gli aggiornamenti su App Store e lasciare allâutente la scelta di aggiornare lâapplicazione oppure no. Utilizzando strumenti come Ionic Deploy e PhoneGap ContentSync, le applicazioni possono essere aggiornate a livello web da remoto, al di fuori dellâApp Store, ma comunque in conformitĂ con gli standard Android e Apple. Lâinvio remoto degli aggiornamenti garantisce che lâutente lavori solo con unâapplicazione sempre aggiornata.
Pieno supporto di Angular, Vue.js e React
Sin dallâinizio Ionic ha sfruttato le direttive di AngularJS come meccanismo per costruire componenti basati su JavaScript, che potrebbero essere distribuiti come tag HTML. Quando AngularJS è stato in seguito riscritto, Ionic è stato convertito e ha iniziato a utilizzare Angular. Da allora, React e Vue.js sono cresciuti in popolaritĂ , ma gli utenti di questi strumenti non hanno potuto utilizzare Ionic, che invece sfruttava solo Angular. Ionic adesso è invece supportato da tutte e tre le librerie. Inoltre, le estensioni fornite da Angular.js rendono semplice lâintegrazione di funzionalitĂ avanzate per lâapplicazione.
React è stato rilasciato nel 2013, mentre Vue nel 2014; mentre il primo è stato sviluppato dal team di Facebook, il secondo è nato grazie al lavoro di alcuni ex dipendenti di Google. Entrambi i framework vantano comunque unâimportante diffusione, grazie alla versatilitĂ e semplicitĂ dâuso. Lâaspetto piĂš importante e comune a tutti i framework è che sono distribuiti in maniera gratuita e con licenza MIT. Senza volerci soffermare troppo sui dettagli, possiamo dire che Angular è un framework completo, mentre React e Vue sono essenzialmente una collezione di librerie e permettono una maggiore flessibilitĂ di utilizzo. Tutti e tre sono facilmente utilizzabili con Ionic, anche se in questo libro â come giĂ accennato â utilizzeremo lâapproccio basato su Angular, sia perchĂŠ la community di Angular ha giĂ indicato il suo Long Term Support (LTS) a partire da determinate versioni del framework, sia perchĂŠ fornisce unâottima documentazione. Angular è inoltre un framework abbastanza âmonoliticoâ, quindi la gestione delle varie dipendenze serve per costruire componenti basati su JavaScript che potrebbero essere distribuiti come tag HTML.
UI ricca di componenti
Ionic accompagna segmenti precostruiti, che sono utilizzati per personalizzare elementi, e temi di design. Ă completamente basato su SASS UI, con funzionalitĂ avanzate per realizzare applicazioni robuste e interattive, con un aspetto e un tocco nativi.
FunzionalitĂ ad hoc
Come accennato in precedenza, Ionic è supportato da Angular. LâAPI componente di Angular consente ai progettisti di realizzare applicazioni web e ibride interattive. Ă inoltre dotato di plugin Cordova, per lâaccesso a numerose funzionalitĂ native, come GPS, fotocamera e molto altro. Include inoltre una potente interfaccia CLI per lo sviluppo, il test e lâimplementazione di applicazioni su varie piattaforme.
CreativitĂ e sviluppo rapido
Il modo in cui lo sviluppo multipiattaforma è abilitato da Ionic ovviamente chiarisce la strada per uno sviluppo piĂš rapido. Permette di risparmiare un sacco di tempo e sforzi che in qualche modo sarebbero stati necessari con tecniche di sviluppo nativo. Costruire applicazioni mobili dallâaspetto professionale in un tempo simile, mantenendo al contempo il vostro codice pulito oltre ogni dubbio, sembra divertente.
Ma ora basta chiacchiere, mettiamo mano al codice: iniziamo con la configurazione del sistema, cosĂŹ che si possa cominciare con un esempio semplice di app, per poi utilizzare la stessa come base per aggiungere i vari componenti, che saranno i nostri âmattonciniâ. Alla fine di questo percorso sarete in grado di padroneggiare la creazione della vostra app e anche di integrarla con alcuni dei plugin maggiormente utilizzati.
Ricordate! Se qualche parola non vi è chiara, cercate nel Glossario alla fine, dove probabilmente troverete una spiegazione. Se cosĂŹ non fosse, per fortuna câè Google, che in molti casi può esserci di grande aiuto. La maggior parte del codice che vedremo utilizza Angular 7+ come base; se qualche riferimento ad Angular non fosse chiaro, potete partire dallâAppendice A per rivedere i concetti di base. Ci saranno alcune nozioni che verranno date per scontate durante i diversi esercizi, ma qualora vi servisse un veloce ripasso, alla fine di ogni sezione troverete una sezione in cui verrĂ indicato dove rivedere le singole parti.
2
Hello, world!
Cercando sul web le parole âHello, worldâ, potreste incorrere in migliaia di esempi di programmi in diversi linguaggi, ch...