MEGLIO SVILUPPARE APP NATIVE O IBRIDE?

Lo sviluppatore Web Marco Visonà espone il suo punto di vista sull’argomento:

“Nel momento in cui si intraprende lo sviluppo un’App, un’importante decisione è definire se sviluppare App native o ibride.

Come tutte le cose ognuna ha i suoi pregi ed i suoi difetti.

PERCHÈ SVILUPPARE APP NATIVE

Sviluppare App native significa utilizzare i linguaggi nativi di ciascuna piattaforma, che nel caso di Android è Java, mentre nel caso di iOS è Objective-C oppure il nuovo arrivato Swift.

I principali vantaggi dello sviluppo nativo sono sicuramente le performance e l’accesso diretto ai sensori hardware dei dispositivi attraverso le API native. Essendo il codice compilato in codice macchina o comunque in un bytecode esso girerà in modo efficiente e rapido sui dispositivi.

Sviluppare nativamente implica avere delle buone competenze da programmatore ed alle spalle uno studio approfondito dei framework di riferimento di ciascuna piattaforma che si vuole targhettizzare, occorre dunque investire una notevole quantità di tempo per padroneggiare questo genere di sviluppo.

PERCHÈ SVILUPPARE APP IBRIDE

Le applicazioni ibride sono a tutti gli effetti applicazioni web inserite in una UIWebView nel caso di iOS o una WebView nel caso di Android. Questo tipo di applicazioni è sviluppato utilizzando tecnologie web come HTML, CSS e Javascript e vengono poi pacchettizzate (ad esempio utilizzando Cordova in un’applicazione scaricabile dagli store di riferimento per ogni piattaforma.

Lo sviluppo di App ibride è notevolmente più semplice e rapido rispetto allo sviluppo nativo per 2 motivi: il primo è legato al fatto che anche chi ha solamente skill in ambito web può cimentarsi nello sviluppo di App, il secondo, non meno importante, è che il codice viene sviluppato una volta sola e distribuito su più piattaforme.

Ovviamente essendo il codice interpretato di volta in volta dal browser e non compilato una volta per tutte, hanno potenzialmente performance inferiori. Inoltre questo tipo di approccio va contro le linee guida del design di iOS e la guida al design di Android. Essi raccomandano di fornire un’esperienza utente coerente con quella delle altre App disponibili per il sistema operativo in questione. Il problema delle App ibride infatti è che sia che le si utilizzi su iOS che su Android, avranno una grafica identica.

Nella Web Agency per cui lavoro ci dedichiamo allo sviluppo di App native e ibride, e per ogni progetto ci poniamo da subito il problema di capire le specificità delle App che creiamo per poter definire al meglio se intraprendere una via o l’altra”.