1 00:00:02,200 --> 00:00:04,510 Quindi ora che abbiamo imparato tutte 2 00:00:04,510 --> 00:00:09,860 queste alternative, la domanda ovvia è: quale approccio dovresti usare per la tua applicazione? 3 00:00:09,860 --> 00:00:15,250 Ora penso che nel corso del corso, hai visto che usare expo in generale è un'esperienza 4 00:00:15,260 --> 00:00:21,000 di sviluppo eccezionale, tutto è super veloce, è facile testare le modifiche sia su simulatori che su dispositivi reali. 5 00:00:21,050 --> 00:00:22,940 Non è necessario creare localmente, quindi 6 00:00:22,960 --> 00:00:29,990 è anche possibile creare e testare per e su iOS, su sistemi Windows e Linux che non è possibile senza il 7 00:00:30,170 --> 00:00:32,050 flusso di lavoro gestito ed 8 00:00:32,390 --> 00:00:34,150 è tutto abbastanza interessante. 9 00:00:34,370 --> 00:00:39,950 Ma quando confrontiamo le configurazioni expo con quelle non expo e con non expo, intendo sia crearlo con la 10 00:00:39,950 --> 00:00:43,610 CLI React Native sia usare un flusso di lavoro bare expo, quindi 11 00:00:43,610 --> 00:00:45,760 ovviamente dobbiamo confrontare tutte le cose. 12 00:00:45,770 --> 00:00:52,760 Quindi, come accennato con expo, con il flusso di lavoro gestito, è facile da usare, facile da sviluppare, non 13 00:00:52,820 --> 00:00:55,970 expo significa più configurazione manuale e così via. 14 00:00:55,970 --> 00:01:01,310 Ora ti divertirai anche a distribuire la tua app come vedrai anche nella sezione di distribuzione e puoi 15 00:01:01,700 --> 00:01:06,260 persino creare e distribuire per iOS se sei sulla macchina Windows o Linux, cosa che 16 00:01:06,260 --> 00:01:09,500 non è possibile senza il flusso di lavoro gestito. 17 00:01:09,860 --> 00:01:15,590 Quindi, ci sono alcune restrizioni lì e la distribuzione, come vedrai, richiede anche più lavoro 18 00:01:15,710 --> 00:01:23,520 manuale, come il flusso di lavoro non expo in generale. Quando siamo nel mondo del flusso di lavoro gestito dall'Expo, abbiamo anche 19 00:01:23,520 --> 00:01:25,200 una ricca serie di 20 00:01:25,260 --> 00:01:32,760 moduli nativi, quindi tutte queste API dell'Expo che sono sempre facili da usare, solo un'Expo installata via, non hanno bisogno di alcuna configurazione, 21 00:01:32,760 --> 00:01:33,200 quindi 22 00:01:33,210 --> 00:01:38,070 è davvero incredibile e sei diventato carino tutto ciò che potresti desiderare in un'app 23 00:01:38,070 --> 00:01:41,440 nativa lì - fotocamera, posizione, file system, è tutto lì. 24 00:01:41,910 --> 00:01:46,440 Se a volte hai bisogno di qualcosa che non è supportato o hai bisogno di scrivere 25 00:01:46,470 --> 00:01:52,560 il tuo codice nativo che vuoi connettere a React Native, il tuo pacchetto o qualunque cosa sia, allora non-expo è la soluzione. 26 00:01:52,560 --> 00:01:59,700 Quindi lì puoi usare qualsiasi codice nativo ma, ovviamente, devi impostarlo manualmente e questo potrebbe essere facile con 27 00:01:59,700 --> 00:02:07,140 il link React Native come hai visto o anche con alcune librerie di autolinking ma potresti avere anche librerie 28 00:02:07,140 --> 00:02:09,060 che richiedono più sforzo. 29 00:02:09,060 --> 00:02:14,820 Inoltre, vale la pena notare che ovviamente le librerie di terze parti devono essere mantenute per rimanere 30 00:02:14,820 --> 00:02:20,850 aggiornate con React Native e le versioni più recenti di React Native ma devono anche rimanere aggiornate con 31 00:02:20,940 --> 00:02:22,440 Android e iOS, 32 00:02:22,440 --> 00:02:27,740 giusto, perché queste piattaforme anche evolvere e introdurre nuove funzionalità o deprecare le vecchie funzionalità. 33 00:02:27,930 --> 00:02:34,410 Le API di expo sono abbastanza garantite da mantenere perché il team di expo è attivo, ci sta 34 00:02:34,410 --> 00:02:37,710 lavorando ed è un intero ecosistema che lavora insieme. 35 00:02:37,950 --> 00:02:40,740 Questo potrebbe non essere vero per tutti i pacchetti 36 00:02:40,740 --> 00:02:45,840 di terze parti, quindi questa sicurezza aggiuntiva che si ottiene con i pacchetti expo è decisamente carina. 37 00:02:45,840 --> 00:02:52,920 Detto questo, come hai visto con il flusso di lavoro nudo, puoi ovviamente aggiungere anche alcune API expo 38 00:02:52,920 --> 00:02:55,160 ad app non gestite, ciò 39 00:02:55,170 --> 00:03:02,910 è possibile ma richiede un po 'più di lavoro. Ora, ovviamente, il flusso di lavoro gestito ha dei lati negativi, è 40 00:03:02,910 --> 00:03:07,600 un wrapper per la tua app e questo ovviamente influisce sia sulle dimensioni che sulle 41 00:03:07,710 --> 00:03:14,640 prestazioni, molto probabilmente non in un modo che sentirai o vedrai ma vale la pena notare, c'è un sottile wrapper extra e non 42 00:03:14,840 --> 00:03:19,610 lo hai nel flusso di lavoro nudo o quando lavori solo con la CLI React Native 43 00:03:20,520 --> 00:03:24,000 e ovviamente, come detto, sei limitato ai moduli nativi incorporati. 44 00:03:24,000 --> 00:03:27,700 Ci sono un sacco di quelli e probabilmente tutto ciò di cui potresti 45 00:03:28,200 --> 00:03:31,580 mai aver bisogno ma se hai bisogno di qualcos'altro che non 46 00:03:31,620 --> 00:03:36,390 è incorporato in Expo, quindi un'API che non è supportata da Expo, quindi non c'è modo 47 00:03:36,390 --> 00:03:39,710 di farlo funzionare, quindi è necessario da espellere perché solo le 48 00:03:39,720 --> 00:03:46,790 non-expo e con ciò intendo le app di flusso di lavoro non gestite supportano tutti i pacchetti di terze parti e tutti i moduli 49 00:03:46,800 --> 00:03:48,550 nativi che potresti voler utilizzare. 50 00:03:48,780 --> 00:03:54,000 Quindi il mio suggerimento sarebbe che per la maggior parte delle app, praticamente tutte 51 00:03:54,000 --> 00:04:00,690 le app, probabilmente lavori con expo a causa della grande esperienza di sviluppo e della grande flessibilità che hai lì. 52 00:04:00,690 --> 00:04:07,230 Dal momento che puoi sempre espellere, non c'è molto da perdere, puoi sempre tornare a un'app gestita non expo se 53 00:04:07,230 --> 00:04:08,340 vuoi come 54 00:04:08,370 --> 00:04:12,340 hai visto, a partire da un'app così non expo, quindi con un'app 55 00:04:12,360 --> 00:04:17,180 nuda o addirittura con solo un'app CLI nativa di React è una buona idea 56 00:04:17,190 --> 00:04:23,460 se sai che avrai bisogno di molte funzionalità native che non sono supportate da expo o se stai costruendo 57 00:04:23,460 --> 00:04:29,460 un'applicazione ad alte prestazioni in cui ogni kilobyte di involucro extra conta, quindi ovviamente tu potrebbe iniziare con 58 00:04:29,460 --> 00:04:35,820 un'app del genere, ma per il resto non vedo davvero alcun motivo per cui non usare expo e soprattutto 59 00:04:35,820 --> 00:04:37,000 se non stai lavorando 60 00:04:37,290 --> 00:04:42,120 in una grande squadra, in una società o qualcosa del genere, essendo in grado 61 00:04:42,330 --> 00:04:46,860 di costruire app iOS anche su Windows è davvero una bella cosa, quindi anche 62 00:04:46,860 --> 00:04:54,420 questo è un buon motivo per rimanere nel mondo gestito. Quindi questi sono i miei due centesimi su questo, dal 63 00:04:54,420 --> 00:04:55,890 momento che puoi espellere, 64 00:04:55,890 --> 00:04:58,490 non è come se dovessi attenersi a 65 00:04:58,500 --> 00:05:05,700 una soluzione se inizi con essa, solo tornare indietro dalla CLI nativa nuda o React, solo l'installazione sul flusso di lavoro 66 00:05:05,700 --> 00:05:11,250 gestito è un po ' più complicato perché lì, è necessario creare un nuovo progetto gestito 67 00:05:11,250 --> 00:05:18,330 expo, copiare il codice e se sono state utilizzate librerie di terze parti che non sono expo, non sarà più 68 00:05:18,330 --> 00:05:19,280 possibile utilizzarle. 69 00:05:19,290 --> 00:05:21,450 Quindi tornare indietro può essere 70 00:05:21,450 --> 00:05:26,610 difficile, passare da expo gestito a expo non gestito, è abbastanza facile con l'espulsione.