Sviluppo nativo vs Sviluppo ibrido

 width=

Lo sviluppo nativo e lo sviluppo ibrido sono terminologie figlie del mondo mobile. In rete esistono infiniti articoli che descrivono tali tecniche e relativi vantaggi e svantaggi. Trattare, nuovamente, il tema non significa tediare chi legge bensì fornire spunti di ragionamento diversi.

Perché uno sviluppatore dovrebbe scegliere ibrido o nativo? Perché un cliente dovrebbe informarsi su quale tecnica ed approccio viene eseguito? Solo conoscendo il prodotto, il target e la piattaforma è possibile effettuare la miglior scelta possibile. All’apparenza un’app ibrida presenta il grande vantaggio di essere disponibile per tutte le piattaforme o quasi. Però come ogni medaglia vi è un risvolto.

Apache Cordova (o Phonegap) sono strumenti per lo sviluppo ibrido (denominato cross-platform) tra i più validi e diffusi. Sono apprezzati da una platea di sviluppatori sempre più vasta e risultano di facile utilizzo. Si basano sui linguaggi javascript, html e CSS e tramite comodi plugin s’integrano con le funzionalità native di iOS ed Android. Inutile sottolineare che una tale presentazione li rende ottimi e versatili per tanti usi ma, come scritto sopra, esiste un ma.

Seppur semplici e meno costosi, talvolta evidenziano dei limiti importanti. Ad esempio, i plugin potrebbero non includere tutte le funzioni native, alcune potrebbero risultare più lente (per via del bridge intermedio) ed infine la stessa usabilità potrebbe risentirne. Perché? Il tutto dipende dall’approccio che questi sistemi hanno con le piattaforme. Da un lato semplificano e rendono più rapido il lavoro dall’altro raggiungono un compromesso che come tale ha delle restrizioni. La scelta di tali strumenti dovrebbe, quindi, essere legata a lavori con struttura semplice oppure con budget bassi ma con la consapevolezza dei limiti.

Ed è proprio la consapevolezze l’aspetto più complesso per cui lo sviluppatore deve saper comunicare con il cliente. Scegliere l’ibrido deve gettare le basi non solo nel breve termine ma specialmente nel medio e lungo termine. Se ad oggi la soluzione è tecnicamente valida, con buona interfaccia ed usabilità potrebbe non andare bene domani. Perché? I problemi potrebbero derivare da semplici richieste aggiuntive del cliente; non eseguirle o eseguirle non al meglio minerebbe la fiducia con il mandatario e l’utilizzatore finale.

Quest’articolo non nasce per mostrare e dettagliare le differenze bensì per offrire una visione diversa. Una visione, anche, presente nei team che lavorano con noi. Pensate a Said in Italy e il suo cuore WordPress. Usare uno strumento simile alle app ibride è stata una scelta perfetta. Offre uno sguardo sia nel breve che nel lungo termine; semplice da usare ed espandibile secondo le possibilità tecniche a cui aspira il sito. Altri progetti (tra cui quelli in cantiere per il nostro team) richiedono uno sviluppo, al contrario, nativo con linguaggi adeguati come NodeJS, Ruby on Rails o Python Django.

Lo sviluppo nativo offre un completo legame con la piattaforma (mobile o web) e permette di lavorare sulle performance e sull’usabilità da parte dell’utente finale. Il suo maggior costo iniziale spesso diviene un vantaggio (o recupero di efficienza, vista in un approccio – non proprio secondario… –  di tipo business) sul medio termine sia in termini di facilità di aggiornamento (e quindi risparmio) e sia di espandibilità/espansione del prodotto (e quindi persistenza maggiore e più efficace sul mercato). I limiti sono legati solamente alle capacità di chi sviluppa.

Il punto di forza dello sviluppo non deve riguardare solo chi crea ma anche chi demanda. Una conoscenza a 360 gradi migliora il rapporto fra le parti e il raggiungimento dello scopo finale.

 

khadgar
Print Friendly, PDF & Email

About Khadgar

Check Also

Giacinto purpureo, fiore evocato da Saffo come simbolo della persona della donna

Saffo, Il fiore calpestato

οἴαν τὰν ὐάκινθον ἐν ὤρεσι ποίμενες ἄνδρες πόσσι καταστείβοισι, χάμαι δέ τε πόρφυρον ἄνθος … …

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *