1 00:00:02,460 --> 00:00:06,610 Inoltre, non voglio nascondere che React Native sia un obiettivo in rapido 2 00:00:06,660 --> 00:00:10,010 movimento, abbiamo nuove versioni pubblicate quasi ogni mese. 3 00:00:10,110 --> 00:00:15,480 Si verificano interruzioni di modifica e, naturalmente, farò del mio meglio per mantenere questo corso aggiornato 4 00:00:15,480 --> 00:00:21,210 per farti conoscere le modifiche e come regolare il tuo codice ma a volte, devi solo tornare 5 00:00:21,210 --> 00:00:26,610 a un'app che hai creato sei mesi fa e devi cambiare qualcosa lì perché qualcosa è 6 00:00:26,610 --> 00:00:28,170 cambiato nell'ultima versione di React 7 00:00:28,170 --> 00:00:33,930 Native e per continuare a lavorare sulla tua app, devi cambiare qualcosa nel codice che prima funzionava, è 8 00:00:33,930 --> 00:00:34,800 normale, 9 00:00:34,800 --> 00:00:35,850 che accadrà, non 10 00:00:35,850 --> 00:00:41,800 tutto il tempo, non tutti i mesi ma accadrà. Anche in React Native, in genere si 11 00:00:41,820 --> 00:00:45,120 ha un'elevata dipendenza da pacchetti di terze parti. 12 00:00:45,120 --> 00:00:51,600 Ora il bello è quando si lavora con expo, questo è solo in parte vero perché expo stesso è 13 00:00:51,600 --> 00:00:54,690 già un tale wrapper con molte funzioni interessanti 14 00:00:54,690 --> 00:01:00,060 incorporate, quindi hai un'alta dipendenza da expo quando lavori con quello ma non devi trovare dozzine 15 00:01:00,060 --> 00:01:05,950 di altri pacchetti di terze parti per accedere alla videocamera, per lavorare con Bluetooth o cose del genere. 16 00:01:06,030 --> 00:01:09,200 Se stai creando un'app React Native senza barebon, sarebbe diversa, 17 00:01:09,290 --> 00:01:14,060 solo un set di funzionalità di base è integrato direttamente in React Native e per la 18 00:01:14,100 --> 00:01:19,320 maggior parte delle cose che desideri aggiungere alla tua app nativa, dovresti raggiungere altri pacchetti gestiti dalla community 19 00:01:19,320 --> 00:01:21,550 per farli funzionare e anche con 20 00:01:21,570 --> 00:01:26,600 expo, avremo bisogno di un paio di pacchetti di terze parti per avere tutto ciò che vogliamo. 21 00:01:26,700 --> 00:01:31,350 E questo è qualcosa che hai, hai quella dipendenza e questo ovviamente significa che 22 00:01:31,350 --> 00:01:37,300 se quei pacchetti cambiano o non vengono più mantenuti, devi trovare alternative o devi aggiornare il tuo codice, 23 00:01:37,440 --> 00:01:44,400 quindi è qualcosa che devi anche essere consapevole di. E React Native ha anche alcuni bug, non cruciali, 24 00:01:44,400 --> 00:01:45,360 puoi fondamentalmente 25 00:01:45,390 --> 00:01:51,270 creare qualsiasi app tu voglia con React Native ma a volte le cose non funzionano come 26 00:01:51,270 --> 00:01:56,360 ti aspetteresti che funzionino e devi essere creativo, trovare soluzioni alternative e così via 27 00:01:56,430 --> 00:02:02,640 e in questo corso ti mostrerò anche alcune di queste strane cose che React Native ha, ma 28 00:02:02,730 --> 00:02:09,420 in generale, quando crei app React Native, devi essere disposto a rimanere aggiornato, a utilizzare Google, a immergerti nelle 29 00:02:09,420 --> 00:02:15,690 discussioni dei problemi e semplicemente prova le cose. Con Expo hai un'esperienza di sviluppo piuttosto fluida 30 00:02:15,720 --> 00:02:22,770 ma, di tanto in tanto, la strada può essere accidentata. Ora, tutto ciò potrebbe sembrare piuttosto brutto, quindi non 31 00:02:22,800 --> 00:02:27,100 dovresti aver imparato React Native? Bene diamo un'occhiata alle alternative. 32 00:02:27,220 --> 00:02:33,580 Naturalmente un'alternativa è sempre quella di creare vere app native con il framework Android per 33 00:02:33,580 --> 00:02:37,710 Java o Kotlin o con Swift, ObjectiveC per iOS. 34 00:02:38,290 --> 00:02:43,180 Puoi farlo, ma ovviamente il rovescio della medaglia è che devi imparare queste lingue e l'enorme vantaggio di lavorare in 35 00:02:43,180 --> 00:02:49,330 un progetto e condividere un sacco di codice andrà completamente perso. Nelle app React Native, sicuramente, probabilmente dovrai 36 00:02:49,330 --> 00:02:54,460 adattare il tuo codice alla piattaforma su cui stai lavorando di tanto in tanto, 37 00:02:54,460 --> 00:03:01,330 ma la maggior parte della tua base di codice può essere condivisa e può essere riutilizzata senza alcuna modifica. 38 00:03:01,330 --> 00:03:06,520 Se stai usando le lingue della piattaforma nativa, devi sicuramente lavorare in due progetti totalmente diversi 39 00:03:06,520 --> 00:03:12,790 e non sarai in grado di riutilizzare molto codice. Un'alternativa è anche quella di creare un'app Web 40 00:03:12,790 --> 00:03:13,210 progressiva, 41 00:03:13,240 --> 00:03:19,300 che è una normale app Web che utilizza alcune funzionalità che la fanno sembrare un'app mobile ma 42 00:03:19,300 --> 00:03:26,230 non è distribuita attraverso gli app store e si basa sugli utenti che utilizzano un browser che supporta le funzionalità 43 00:03:26,230 --> 00:03:30,550 stai utilizzando e, in caso contrario, la tua app non funziona così bene. 44 00:03:30,560 --> 00:03:38,790 La terza alternativa è che usi Ionic o una soluzione simile, Ionic è uno strumento o un framework che ti consente di creare vere app native che 45 00:03:38,820 --> 00:03:44,790 distribuisci attraverso gli store di app con tecnologie web. Alla fine, Ionic prende una normale app 46 00:03:44,790 --> 00:03:50,550 Web e la avvolge in un'app nativa, quindi non compila nulla, la avvolge e questo è un 47 00:03:50,550 --> 00:03:53,700 approccio gradevole, mi piace Ionic in realtà e può 48 00:03:53,700 --> 00:03:59,320 essere perfetto per molte app ma, naturalmente, un possibile svantaggio è che le prestazioni possono peggiorare 49 00:03:59,340 --> 00:04:03,290 perché hai solo un'app Web chiusa, non hai un'app nativa compilata 50 00:04:03,330 --> 00:04:09,030 e questo è qualcosa che hai con React Native ovviamente e dal momento che nel complesso 51 00:04:09,030 --> 00:04:15,060 abbiamo strumenti e possiamo acquisire conoscenze che ci aiuta a superare le sfide che React Native pone talvolta, 52 00:04:15,090 --> 00:04:22,080 React Native è un modo fantastico di creare app native. Puoi condividere un codice, ottenere grandi prestazioni, 53 00:04:22,260 --> 00:04:26,150 puoi distribuirlo attraverso gli app store, è molto carino. 54 00:04:26,280 --> 00:04:32,160 Ora una nota a margine, hai anche alternative come Flutter o Native Script, quelle alternative seguono un 55 00:04:32,160 --> 00:04:37,770 approccio simile a quello di React Native, ottieni un'app compilata lì, usano semplicemente diversi linguaggi di 56 00:04:37,770 --> 00:04:43,440 programmazione, diversi framework e allegati, troverai un collegamento a un video di confronto in cui comparo 57 00:04:43,440 --> 00:04:49,050 tutte queste alternative nel caso in cui tu sia interessato ad approfondire un po 'l'argomento.