Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial
  • Lezione 3 di 97
  • livello avanzato
Indice lezioni

Android: sviluppo nativo o cross-platform?

Impariamo la differenza tra programmazione nativa ed ibrida, con uno sguardo agli strumenti alternativi di programmazione per Android.
Impariamo la differenza tra programmazione nativa ed ibrida, con uno sguardo agli strumenti alternativi di programmazione per Android.
Link copiato negli appunti

L'approccio alla programmazione Android appare del tutto agevole soprattutto grazie a due aspetti fondamentali già evidenziati: strumenti del tutto gratuiti e semplicità nell'apprestamento dell'ambiente di sviluppo. Ed in effetti è così. A volte però l'appassionato di tecnologia che si avvicina a questo mondo rischia di scoraggiarsi facilmente.

Ammesso che si posseggano le skill necessarie del linguaggio Java o
Kotlin, ci si accorge presto che un'infarinatura di sintassi spesso non è sufficiente. Per sfruttare degnamente le possibilità offerte dal framework è necessario essere dei buoni programmatori, consci delle principali problematiche da tenere sott'occhio in uno sviluppo professionale: ottimizzazione delle prestazioni, salvaguardia delle risorse a disposizione e via dicendo.

Inoltre, questo tipo di approccio alla programmaazione (detto nativo) è dipendente dal
sistema operativo specifico. Pertanto le app sviluppate in questo modo non sono né distribuibili su
sistemi Apple o alternativi, né il loro codice può essere riutilizzato su altre piattaforme. Ciò può rappresentare un
limite sia per i singoli professionisti sia per le aziende che finanziano i progetti.

Le alternative più in voga al momento sono le tecnologie cross-platform con
cui si possono realizzare applicazioni per diversi sistemi operativi, partendo da un'unica base di codice.
Flutter è una piattaforma che
risponde bene a tali esigenze permettendo di creare app per Android e iOS, con un
singolo progetto in linguaggio Dart, riuscendo
a garantire prestazioni abbastanza paragonabili ai progetti nativi. Altra alternativa
molto interessante è React Native, framework di Facebook basato su React anch'esso dedicato alla programmazione mobile multipiattaforma.

Tutte queste soluzioni cross-platform non sono che il culmine (attuale) dell'evoluzione di un lungo percorso che negli ultimi anni ha
cercato di offrire metodologie alternative alla programmazione puramente nativa. Ne sono apparse molte, con approcci del tutto differenti
tra loro. Ecco alcune delle più significative e tuttora diffuse:

Nativo sì, nativo no. Qual è l'approccio migliore? Sicuramente entrambi hanno i loro pro e contro. Mentre da un lato il nativo offre la possibilità di una gestione totale del dispositivo senza la paura di trovare limiti, d'altra parte richiede spesso una programmazione molto professionale e si concentra esclusivamente su una piattaforma impedendo un'agile riciclo dei propri sforzi su altri mercati del mobile.

Il non-nativo – anche se è impossibile generalizzare data la diversità degli ambienti appena citati – offre vantaggi vari, ascrivibili a volte ad una minore necessità di programmare e molto spesso alla possibilità di creare applicazioni cross-platform distribuibili su sistemi operativi diversi.

Ti consigliamo anche