Come imparare bene Android
Ehi là - Mark di Devslopes qui.
Quando stai iniziando a imparare a codificare Android, la quantità di cose che devi imparare può sembrare schiacciante. Che linguaggio dovresti usare? Java o Kotlin? O dovrei andare in un linguaggio non nativo? Se sì, dovrei usare React Native, Flutter o Xamarin? E così via.
Ma cerca di non impantanarti in tutte le opzioni. Come dice il proverbio, il viaggio di mille miglia inizia con un solo passo. E la codifica è sicuramente un viaggio.
Mentre la quantità di cose da imparare può sembrare schiacciante, c'è una semplice disciplina che è assolutamente essenziale quando si impara lo sviluppo di Android:
Codifica ogni giorno.
So che può sembrare conciso e solo un po' di "ispirazione", ma la coerenza è la chiave quando si impara qualcosa come un nuovo linguaggio di programmazione o una nuova tecnologia. Dedicate un'ora o più ogni giorno per imparare, scrivere codice e costruire cose. Questo è ciò che fa la differenza tra chi ha successo e chi fallisce.
Come dice Darren Hardy nel suo libro The Compound Effect: "Non cambierai mai la tua vita finché non cambi qualcosa che fai ogni giorno. Il segreto del tuo successo si trova nella tua routine quotidiana."
p.s. Ti consiglio vivamente questo libro.
Quando impari, potresti trovarti sopraffatto da tutto ciò che devi imparare e iniziare a confrontarti con gli altri... Forse uno sviluppatore di YouTube che segui, forse un amico che conosci, o forse semplicemente ti picchi perché non ti senti abbastanza intelligente. Questa è una bugia enorme e ti impedisce di crescere! Si chiama "sindrome dell'impostore" - dove ti attacchi e ti senti come se fossi un impostore e che se qualcuno scoprisse davvero quello che non sai non ti prenderebbe sul serio come sviluppatore.
Ma, ecco un piccolo segreto. Ti garantisco che anche le persone che pensi sappiano tutto, stanno cercando su Google tutto il tempo proprio come te. Io so di esserlo!
Una cosa che mi ha davvero aiutato quando stavo imparando a scrivere codice, è riconoscere la crescita che hai fatto. Quando sei in grado di risolvere un problema difficile, di eseguire con successo il debug di qualcosa, o di aiutare qualcun altro a risolvere un problema, fermati e renditi conto di quanta strada hai fatto!
Un sacco di gente è ossessionata da "dovrei imparare X?" o "dovrei imparare Y?" quando in realtà, i principi generali del design del software e della programmazione possono essere appresi in molti modi - lo sviluppo Android è solo un modo per imparare i principi chiave. Quindi, se siete preoccupati che le applicazioni mobili diventino obsolete, potete stare tranquilli sapendo che avete una solida base nella programmazione in generale e potete facilmente passare ad un'altra tecnologia. Abbiate la mentalità di crescita di poter applicare le competenze generali di programmazione ad altre tecnologie.
Mi piace dire alla gente che programmare applicazioni mobili è qualcosa di più che sapere come codificare. Infatti, penso che sia solo un terzo. Le altre due parti sono sapere come usare l'IDE (ambiente di sviluppo integrato, o in altre parole l'applicazione usata per fare l'applicazione Android) e poi sapere come usare le API Android (interfaccia di programmazione delle applicazioni).
Quindi, scomponiamole:
1. Imparare a codificare:
Se stai iniziando a imparare lo sviluppo Android, ci sono due opzioni principali al momento. Java e Kotlin. Java è il linguaggio più affermato; con oltre 20 anni di vita ci sono tonnellate di documentazione e risorse di apprendimento là fuori. Kotlin è il nuovo ragazzo sul blocco. È stato annunciato come un linguaggio ufficialmente supportato nella conferenza Google I/O del 2017 e da allora è esploso in popolarità. Secondo il sondaggio StackOverflow del 2018, è stato il secondo linguaggio più amato. Qui a Devslopes siamo tutti su Kotlin e lo consiglio vivamente alle persone che iniziano. È molto più pulito e facile da leggere di Java, il che lo rende più facile da imparare.
Da dove si comincia con il linguaggio di programmazione scelto?
- Fondamenti di programmazione: Impara le basi come variabili, costanti, numeri, booleani e logica condizionale, array, mappe hash, loop, funzioni, classi.
- Programmazione orientata agli oggetti: Mentre ci sono altri paradigmi usati nello sviluppo di Android, OOP (Object-Oriented Programming) è il più comune. È stato provato e testato per molti anni ed è usato letteralmente con tonnellate di altri linguaggi/tecnologie di programmazione. Dovreste anche imparare (ed essere in grado di articolare chiaramente) cose come il polimorfismo e l'ereditarietà.
2. Conoscere il vostro IDE:
Se state facendo applicazioni Android, allora la scelta migliore è Android Studio. Questo è l'IDE ufficiale di Google per creare applicazioni Android. È qui che scriverete il vostro codice, creerete le vostre interfacce utente, testerete sull'emulatore, farete il debug e molto altro. E' un grande programma con tonnellate di funzioni, quindi dovrai passare un po' di tempo a familiarizzare con Android Studio.
3. Impara le API di Android:
Una volta che sai come funziona il linguaggio Kotlin/Java, dovrai imparare come sposarlo con le tecnologie Android che rendono possibili le applicazioni. Ecco alcune delle cose che penso siano essenziali per uno sviluppatore Android:
- Capire il ciclo di vita delle attività.
- Capire come usare i frammenti e il loro ciclo di vita.
- Intenti
- Costruire su dispositivi
- Caricare un'app sul Google Play store
- Comprensione di Model-View-Controller & OOP
- Debugare le app in Android Studio
- RecyclerViews
- Come creare interfacce utente usando il layout editor.
- Persistenza dei dati
- Parametrizzare JSON in dati utilizzabili nelle app
- Interagire con le API RESTful
- Git o un altro metodo di controllo della versione
- Comprensione del principio DRY
- Questo è ciò che insegniamo nel nostro corso Android
4. Entrare in una comunità:
Non fraintendetemi - imparare lo sviluppo Android è difficile. Imparare da soli è molto più difficile. Circondati sia di altri studenti che si trovano in una circostanza simile alla tua, sia di quelli che sono sopra di te per esperienza e che sono disposti a farti da mentore e ad aiutarti. Questo è qualcosa che abbiamo cercato di costruire a Devslopes - una comunità dove si può imparare a scrivere codice, costruire applicazioni incredibili, e non sentirsi stupidi a fare domande. In alcuni posti online tosse StackOverflow fare una semplice domanda è equiparabile ad un crimine di guerra. Abbiamo voluto costruire una comunità di studenti dove si possono fare domande e ottenere l'aiuto necessario. Potresti anche farti degli amici con cui collaborare ai progetti.
Se hai letto fino a qui, grazie. E se volete un percorso di apprendimento guidato per lo sviluppo Android e l'accesso a una comunità incredibile, date un'occhiata a Devslopes. Non vediamo l'ora di guidarti nel tuo viaggio Android.