Durante questo corso, abbiamo creato app React Native e voglio davvero enfatizzarlo, abbiamo
creato app React Native ma le abbiamo costruite con uno strumento chiamato expo e, come hai visto durante questo
corso, l'expo per lo più evita ma ha fatto costruire queste app sono molto più semplici.
Il processo di installazione è semplice, puoi testarlo sul tuo dispositivo reale senza alcuna configurazione speciale, puoi facilmente aggiungere moduli nativi
e hai un enorme catalogo di moduli nativi integrati e così via. Quindi lo sviluppo di app React Native con l'aiuto di expo è davvero
facile e quindi il mio modo consigliato di farlo. Ora ci possono essere motivi per cui potresti
voler creare un'app senza expo, poiché non devi dimenticare che expo ovviamente
funziona in modo tale da avere il client expo sul tuo dispositivo reale o anche sul simulatore, ovviamente
ci siamo anche alla fine ha installato il client expo, quindi questa app sul
dispositivo e la tua app vengono caricati in quel client. Ora sarai ancora in grado di pubblicare un'app standalone come hai
appreso, quindi puoi ancora pubblicare un'app che carichi negli app store dove le persone non hanno
bisogno di installare il client ma questa app pubblicata alla fine includerà quel wrapper di app, quindi
sarà un'app standalone in cui le persone non hanno bisogno di installare l'app client expo ma l'app client expo è
parte della tua app che potresti
dire, quindi le persone installano indirettamente se questo ha senso.
Quindi hai sempre questo wrapper e quindi un motivo per non usare expo ma
potresti voler liberarti di quel wrapper perché, come puoi immaginare, questo wrapper ti dà ancora un'app nativa
e ti offre ancora i vantaggi del tuo le visualizzazioni vengono compilate in visualizzazioni native, mentre tutto ciò
è il caso, questo wrapper ovviamente aggiunge un po 'di dimensioni alla tua app, la tua app diventa più grande.
Probabilmente diventa anche un po 'più lento a causa di quel wrapper extra,
anche se voglio ancora sottolineare che ottieni un'app compilata nativa, giusto?
Le tue visualizzazioni sono ancora compilate in codice nativo in modo da non
perderlo, non è come Ionic in cui Ionic usa un'app nativa come wrapper per un'app Web, non è
quello che sta succedendo qui,
hai comunque quel sovraccarico.
Quindi un motivo per non usare expo potrebbe essere che vuoi liberarti di quel wrapper extra, un altro motivo potrebbe essere che hai bisogno
di alcune funzionalità del dispositivo nativo al di fuori di ciò che abbiamo usato nel modulo di funzionalità nativo che non
è incluso in expo, quindi alcune funzionalità che
non puoi aggiungere con l'aiuto di expo e poi sei bloccato. Se hai bisogno di alcune funzionalità che non fanno parte di
Expo di cui non riesci a trovare qui, non puoi aggiungerlo a un'app React
Native creata con Expo, non c'è modo per farlo. Non puoi scrivere il tuo codice nativo e
collegarlo e non puoi portare altri pacchetti di terze parti che sfruttano le funzionalità del dispositivo
nativo, che non è supportato in Expo.
Quindi questi potrebbero essere due motivi per cui vuoi passare: vuoi sbarazzarti di quel
wrapper perché ogni millisecondo di prestazione conta per te e ogni kilobyte di dimensioni conta per te o a causa di
una funzionalità nativa che manca.
Ora sottolineo per la maggior parte delle app, entrambi i motivi probabilmente non si applicano perché non stiamo parlando di
un enorme successo in termini di prestazioni,
non stiamo parlando di un'app super enorme che otterresti, anzi è molto snella ma comunque potrebbe essere una cosa per alcune app e
la cosa con i
moduli nativi che potrebbe mancare, ce ne sono così tanti inclusi, è probabile che tu possa
costruire l'app che vuoi costruire con ciò che è incluso. Ma nel caso in cui manchi qualcosa,
puoi ovviamente costruire anche un'app React Native e possiamo trovarla anche sui
documenti ufficiali senza expo.
Ora lasciami immergermi nelle alternative che hai.