CodeGym /Java Blog /Random-IT /Verso l'infinito e oltre: quanto tempo ci vuole per impar...
John Squirrels
Livello 41
San Francisco

Verso l'infinito e oltre: quanto tempo ci vuole per imparare Java?

Pubblicato nel gruppo Random-IT
Quindi quanto tempo ci vuole per imparare Java? Dieci anni, dieci settimane o un giorno? Forse tutta la tua vita? Potresti trovare risposte molto particolari a questa domanda su alcuni forum online. Mettiamolo in chiaro fin dall'inizio. In questo articolo “conoscere Java” non significa che puoi scrivere “Hello world program”. Si tratta di conoscere Java abbastanza bene da trovare il tuo primo lavoro. Il motto di Buzz Lightyear qui nel titolo non è esattamente uno scherzo. Potresti davvero continuare a imparare Java o qualsiasi altra lingua per il resto della tua vita. Il motivo è che la lingua è in continua evoluzione, il suo ambito cambia e... Buone notizie, amici!Non c'è motivo di farsi prendere dal panico! È sicuramente possibile completare l'apprendimento della missione Java in 3-12 mesi, tuttavia ci sono molte sfumature di cui parleremo in questo articolo. Qui cercheremo di rispondere anche alla domanda “come imparare Java velocemente”.

Come cerchiamo la risposta

La domanda "quanto tempo ci vuole per imparare Java" è piuttosto complicata. Lo suddividiamo in sotto-domande più specifiche e rispondiamo qui. Per essere più precisi, abbiamo utilizzato le interviste agli studenti di CodeGym, le fonti aperte e le statistiche del sondaggio. Quel sondaggio riguardava i processi di apprendimento di Java e la ricerca di quel primo lavoro. È stato condotto da una delle unità CodeGym locali. I partecipanti al sondaggio erano studenti CodeGym di livello 30 e superiore, che hanno trovato il primo lavoro relativo a Java o hanno preso parte a uno stage Java.

Cosa significa “Conoscere Java”?

La risposta più precisa, anche se molto generica, a questa domanda sarebbe "essere in grado di risolvere il problema utilizzando Java". Un tale problema potrebbe essere l'obiettivo di "superare un esame" o "ottenere un lavoro". Oppure può essere un compito tecnico, grande "creare il mio progetto abbastanza buono per Play Market", ad esempio, o piccolo come "capire come scrivere codice che faccia ciò di cui hai bisogno". Verso l'infinito e oltre: quanto tempo ci vuole per imparare Java?  - 2Naturalmente, i tuoi problemi cambieranno nel tempo. Dopo aver ottenuto il tuo primo lavoro, dovrai crescere in posizioni (ad esempio, da Java Junior Developer a Java Middle/Senior Developer). La prima attività di codifica è seguita dalla seconda. Inoltre, quando lo fai, appariranno alcuni nuovi obiettivi. Torniamo alla nostra domanda. Quali temi dovresti conoscere per scrivere "I know Java" nel tuo CV? Gli studenti Java di solito imparano i seguenti argomenti:
  • Nucleo Java o
  • Nucleo Java + JUnit o
  • Core Java + DataBase o
  • Core Java + Strumenti o
  • Core Java + Librerie o
  • Core Java + Spring + SpringBoot + Hibernate o
  • Core Java + Android SDK o
  • …e tutte le combinazioni di cui sopra.
Tutti questi argomenti hanno una cosa in comune. È Core Java, le basi del linguaggio Java. Quindi, se non conosci Core Java , sicuramente non conosci affatto Java . Pertanto, apprendere Core Java è il primo passo per ogni futuro sviluppatore di software Java. Core Java copre i concetti fondamentali del linguaggio:
  • Tipi e oggetti di base
  • Costruzioni di base (Operatori Speciali, Loop, Diramazioni)
  • Concetti OOP
  • Classi wrapper
  • Collezioni
  • Multithreading
  • Flussi di I/O
  • La gestione delle eccezioni
Quindi Core Java contiene tipi, oggetti, costruzioni e principi di base, nonché le librerie e i framework più importanti. Inoltre Core Jav copre le classi per il networking, la sicurezza, l'accesso al database, lo sviluppo dell'interfaccia utente grafica (GUI) e l'analisi XML. Principalmente tutti i pacchetti di "Core Java" iniziano con 'java.lang..' Il primo obiettivo per ogni studente Java è imparare Core Java. Cosa imparare dopo Java Core? Dipende da cosa stai imparando Java per.

Il tuo modo personale. Per cosa impari Java?

In questo articolo non consideriamo opzioni come “Imparo Java solo per divertimento” o “Voglio insegnare Java in futuro”. Qui stiamo parlando dell'uso professionale di Java nell'IT. Attualmente, molto spesso Java viene insegnato per andare in uno dei tre modi:
  • Sviluppatore Java, da tirocinante/sviluppatore junior a sviluppatore senior
  • Sviluppatore Android, indipendente o in azienda (da Junior a Senior)
  • Automazione QA (con Java)

Sviluppatore Java

Il pool di sviluppatori Java è molto ampio ei requisiti per la conoscenza di Java sono per ottenere il tuo primo lavoro che può variare notevolmente. Secondo CodeGym Survey, ci sono alcune persone che hanno ottenuto il loro primo lavoro Java Junior conoscendo solo Java Core e nient'altro. Le aziende erano pronte a formarli durante i processi di lavoro. Tuttavia, questo è un evento piuttosto raro. Più spesso una persona del genere può partecipare a uno stage o diventare un tirocinante Java dopo aver superato alcuni esami. Di solito i candidati Java Junior dovrebbero sapere più di Java Core per ottenere il loro primo lavoro. Ecco un elenco di tecnologie rilevanti che gli sviluppatori Java dovrebbero conoscere.
  • Nucleo Java
  • API JDK
  • Java 8 (lambda), Java 11
  • Librerie di test (JUnit)
  • Quadro primaverile
  • Spring Boot e Spring MVC
  • Ibernazione
  • JDB
Di seguito è riportata un'infografica estesa basata sul sondaggio CodeGym e sull'analisi delle attuali offerte di lavoro Java Junior. Notiamo solo che non descrive Java stesso, ma anche una serie di altre tecnologie che i moderni sviluppatori Java dovrebbero conoscere. Verso l'infinito e oltre: quanto tempo ci vuole per imparare Java?  - 3Le sue dimensioni e la ramificazione possono spaventare un lettore inesperto. Per favore, stai calmo e respira profondamente! Queste tecnologie imparerai in dettaglio durante il tuo lavoro. Di solito uno sviluppatore di software principiante deve solo avere un'idea generale della maggior parte di queste tecnologie (con rare eccezioni).

Sviluppatore Android

Gli sviluppatori Android potrebbero lavorare per un'azienda o avere i propri progetti. Dovrebbero conoscere sicuramente Java Core e alcune altre tecnologie. Qui abbiamo un'infografica che mostra un modo di Android Developer. Verso l'infinito e oltre: quanto tempo ci vuole per imparare Java?  - 4Bene, ci sono molti punti nell'elenco, ma non molti riguardano direttamente Java (solo strumenti di test e in realtà Core Java). Di solito gli sviluppatori concordano sul fatto che imparare a programmare Android da soli è in qualche modo più semplice e veloce dello sviluppo aziendale. Tuttavia, anche per chi ambisce alla posizione di Java Junior, sarà utile realizzare progetti Android per allenare le proprie capacità di programmazione.

Automazione controllo qualità

Un buon QA Automation dovrebbe conoscere abbastanza bene il linguaggio di programmazione, è una delle competenze più importanti per questa professione. Connesso a Java
  • Core Java (soprattutto OOP, Collection, FileOperations)
  • Librerie di test (JUnit)
  • IDEA IntelliJ
Altre tecnologie:
  • Quadro Selenium RC/WebDriver
  • Modello a oggetti della pagina
  • Html/CSS
  • SQL
Di solito la strada per Junior QA Automation è leggermente più breve di Java Junior Developer. I numeri precisi li troverete alla fine di questo articolo.

Chi sta chiedendo? Ritratti di potenziali studenti Java

“Penso che dipenda dal tuo background e dalla quantità di tempo che puoi dedicare allo studio. Quando ho iniziato il mio viaggio come sviluppatore di software, trascorrevo almeno 40 ore a settimana a studiare. Dopo 6 mesi di studio a tempo pieno mi sono sentito abbastanza sicuro di poter padroneggiare qualsiasi nuova tecnologia da solo. Per ottenere il tuo primo lavoro come ingegnere del software non dovrai solo imparare Java, ma anche comprendere le basi dell'informatica, della programmazione orientata agli oggetti e scrivere alcuni progetti che possano mostrare il tuo lavoro. Penso che questo possa richiedere da qualche parte tra i nove ei dodici mesi. So che sembra un sacco di lavoro, ma non scoraggiarti! Questo viaggio può essere davvero divertente se scopri quale aspetto della programmazione ti sta dando gioia e ti permetti di giocare. Verso l'infinito e oltre: quanto tempo ci vuole per imparare Java?  - 5
Yuliya Deinega , Sviluppatore di software autodidatta. Yulia lavora per LinkedIn come REACH Apprentice Engineer Inoltre, ha creato il canale YouTube , per condividere la sua esperienza nell'apprendimento della programmazione informatica e nella ricerca di un lavoro nella Silicon Valley
Possiamo dividere coloro che iniziano ad imparare Java in tre categorie principali:
  1. "Rookie". Zero esperienza. Bene, qui ci sono persone che non sanno nulla di programmazione.
  2. "Mezzi". Studenti con esperienza di programmazione minima o caotica. Quelle persone imparano a programmare a scuola, all'università o ai corsi, ma non è stato un apprendimento serio.
  3. "Professionisti". Sviluppatori di software che conoscono altri linguaggi di programmazione (1 o più).
Secondo il sondaggio, il 49% dei nostri studenti aveva una programmazione di base nelle scuole o nei corsi prima di iniziare a imparare seriamente Java.
  • Il 33,3% erano assolutamente neofiti
  • Il 17,6% conosceva almeno un linguaggio di programmazione
Verso l'infinito e oltre: quanto tempo ci vuole per imparare Java?  - 6

Cosa influisce positivamente sul tempo di studio?

Per non perdere tempo invano, è necessario avvicinarsi all'apprendimento in modo efficace fin dall'inizio. Abbiamo identificato i punti principali che contribuiscono al successo della programmazione degli studi.

Scegli le fonti giuste

Puoi trovare molte informazioni diverse su Java su Internet. È facile perdersi in esso. A volte, se non capisci un argomento, è utile cercare su Google nuove fonti, ma prima di iniziare è una buona idea scegliere: 1 corso principale e 1-2 fonti ausiliarie come libri Java o tutorial. Attenersi a loro. In questo caso, risparmierai tempo evitando di vagare senza meta su Internet e cercare qualcosa.

Sii pronto a imparare molto e costantemente

John Selawsky, Java Tutor e Software Developer ha detto in uno dei suoi articoli che a volte aveva alcuni studenti che programmavano incredibilmente bene, ma alcuni di loro semplicemente interrompevano il loro apprendimento. I loro problemi non erano nel tempo libero, nell'età o nel sesso. Non si trattava di abilità! Si trattava di coerenza. Tutti gli studenti di successo avevano un programma coerente e si sono attenuti ad esso. Hanno fatto progressi, anche se a volte sono stati lenti. Quindi dovresti avere un programma (puoi prenderlo dal tuo corso principale o tutorial) e impostare il tempo per l'apprendimento. Vuoi fare della programmazione Java la tua professione? In tal caso, preparati a imparare ogni giorno per 1-3 ore. Verso l'infinito e oltre: quanto tempo ci vuole per imparare Java?  - 7Secondo il sondaggio CodeGym, il 52,3% dei nostri studenti di successo ha svolto da 1 a 3 ore di pratica quotidiana.

Buon rapporto tra teoria e pratica

Non puoi imparare a nuotare senza provare a nuotare, solo con un libro. La stessa storia con la programmazione. Non puoi imparare la programmazione senza scrivere codice. La programmazione è un'attività pratica. È importante iniziare a scrivere il codice il prima possibile. Non è necessario imparare troppa teoria in una volta, soprattutto nei primi mesi di studio. È meglio studiarlo in piccole porzioni e poi sistemarlo immediatamente nella pratica. Quindi, il 20% del tuo tempo è dedicato alla ricerca teorica e l'80% alla pratica. Qui è il posto giusto per tornare alla primissima domanda “Cosa significa conoscere Java” e chiarire la risposta. Conoscere Java significa saper programmare in Java. Non "conoscere Java" ma essere in grado di scrivere programmi di varia complessità e avere una certa esperienza in tale codifica.

Buon rapporto per compiti facili e difficili

I neofiti molto spesso cercano di risolvere alcuni compiti difficili, provali ancora e ancora. Se lo fanno per troppo tempo, il risultato potrebbe essere triste. Questa è una strada per perdere la motivazione. Per i principianti è più vantaggioso risolvere molti compiti piccoli e semplici piuttosto che pochi compiti complessi. Un buon rapporto per i primi mesi di apprendimento è di 1 compito difficile su 10-20 compiti semplici. E ancora una cosa: se il compito è troppo complicato per te e hai provato a risolverlo più volte, sii abbastanza coraggioso da... rimandare finché non ne saprai di più. È meglio risolvere molti problemi più facili e poi tornare alla fortezza invalicabile. Oppure.. se pensi ancora che questo sia il momento giusto per risolverlo, non aver paura di fare una domanda. Questo è il punto successivo.

Saper fare domande

I principianti spesso esitano a fare domande su forum e comunità, perché pensano che le loro domande possano essere stupide. Beh, sicuramente potrebbero! Ma va bene, non c'è motivo di preoccuparsi! Ogni sviluppatore di software era nei tuoi panni e aveva bisogno di una risposta a una stupida domanda da principiante. E allora? Le comunità di programmazione sono in qualche modo collaborative. Gli sviluppatori di software di solito lavorano come una squadra e tutti loro erano principianti una volta. Ogni studente e persino ogni sviluppatore di software professionista fa domande stupide di tanto in tanto e non c'è alcun crimine in questo. Quindi, se qualcosa è andato storto, vai sul forum e fai una domanda! Potrebbe essere Javaranch o Stack Overflow o CodeGym Help, di sicuro. I migliori forum per porre domande o cercare risposte:

Quindi per quanto tempo dovrei imparare Java per ottenere il mio primo lavoro?

Siamo arrivati ​​vicini al punto in cui possiamo rispondere alla domanda principale di questo articolo: quanto tempo ci vuole per imparare Java prima di iniziare a inviare il tuo CV e ottenere il tuo primo lavoro? Utilizziamo i dati del sondaggio e delle interviste agli studenti per creare i seguenti grafici, che tengono conto del livello iniziale degli intervistati e di una delle tre posizioni richieste. Per ogni gruppo abbiamo determinato gli intervalli di tempo per i quali hanno studiato Core Java e il tempo trascorso a studiare le relative tecnologie necessarie per ottenere il primo lavoro. Attenzione!Ecco le informazioni per leggere i grafici. “Rookie” è una persona con zero esperienza di programmazione, “Middle” è uno che ha imparato un po' a programmare a scuola o ai corsi. Nel caso di Java e Android Developer, "Pro" indica una persona che conosce bene uno o più linguaggi di programmazione. Nel caso di QA Automation per “Pro” si intende colui che già lavora nel testing manuale e vuole diventare un automatizzatore con linguaggio Java. Per tutti i grafici abbiamo utilizzato una scala temporale con il numero di mesi. I rettangoli rossi indicano il tempo impiegato per l'apprendimento di Core Java, quelli blu sono per altre tecnologie necessarie oltre a Core Java. Verso l'infinito e oltre: quanto tempo ci vuole per imparare Java?  - 8Verso l'infinito e oltre: quanto tempo ci vuole per imparare Java?  - 9Verso l'infinito e oltre: quanto tempo ci vuole per imparare Java?  - 10È importante capire che i grafici indicano il tempo mediospeso dagli intervistati di ciascun gruppo per studiare le tecnologie. In effetti, in ogni gruppo c'erano campioni che hanno affrontato il loro apprendimento molto più velocemente, e c'erano anche quelli che hanno ritardato i loro studi di diversi anni. Il tempo di apprendimento generale indica il momento in cui i candidati hanno iniziato a inviare un curriculum o hanno completato il loro primo progetto (quello che ha iniziato a guadagnare). Secondo il nostro sondaggio, in media, ci vogliono da un mese a tre per trovare un lavoro. Questi mesi di ricerca iniziano alla fine dello studio delle tecnologie correlate. Ci sono stati fortunati che hanno trovato lavoro una settimana dopo aver inviato il primo CV, ma c'è stato anche chi ha passato un anno a cercare. Verso l'infinito e oltre: quanto tempo ci vuole per imparare Java?  - 11

Conclusioni

Quanto tempo per imparare Java? Secondo i risultati della ricerca, la velocità di apprendimento di Java e delle relative tecnologie dipende principalmente dalla regolarità e dal livello iniziale dello studente. Sicuramente non puoi fare nulla con il tuo livello iniziale ora, ma lo studio regolare è sicuramente una tua responsabilità. Come imparare Java velocemente? Cerca di non fare lunghe soste o procrastinare mentre impari. È estremamente importante, perché durante le soste lunghe non ti limiti a stare fermo, ma torni indietro a poco a poco. Pratica quotidiana, perseveranza e motivazione: avrai sicuramente bisogno di tutto questo se decidi di imparare Java e le tecnologie correlate. Se segui un programma prestabilito, osserva il giusto equilibrio tra teoria e pratica e pratica ogni giorno per almeno 1-3 ore, non aver paura di fare domande, è del tutto possibile imparare Java al livello che ti permetterà di trovare il tuo primo lavoro in 6-12 mesi. ... E poi continua il tuo apprendimento come sviluppatore/professionista di QA Automation all'infinito e oltre! PS: E tu? Per quanto tempo impari Java per ora? Questo processo è difficile? O forse hai già trovato il tuo primo lavoro relativo a Java? È stato difficile? O forse hai appena iniziato a cercarlo? Condividi la tua esperienza qui!
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION