Punctul de pornire pentru a învăța Java – ceea ce ar trebui să știi și lucruri pe care mi-aș fi dorit să le fi știut

Publicat: 2020-04-14

Începeți în programare este mai ușor dacă face parte din curriculumul universitar. Apoi, nu trebuie să alegeți ce limbă să învățați, ce argumente să omiteți și ce concepte să acordați mai multă atenție.

Când am fost la facultate, C a fost primul limbaj de programare care a învățat, apoi profesorii ne dădeau un curs despre C++ și mai târziu, dacă voiai, puteai să înveți Java, Python și alte limbaje.

Cu toate acestea, atunci când vorbesc cu dezvoltatorii de software de nivel de intrare, nu recomand să vă renunțați la educația de programare cu C. În schimb, vă sugerez de obicei să învățați Java – voi înțelege de ce puțin mai târziu.

Deși, în opinia mea, comunitatea Java este plină de materiale de învățare, dezvoltatorii începători mă întreabă adesea „De unde să încep?” sau „Trebuie să citesc teoria sau să încep imediat să scriu cod?”.

Aparent, să înveți să codificați pe cont propriu nu este ușor. În calitate de dezvoltator experimentat, am decis să ajut colegii începători și să-i trec prin capcanele curbei de învățare Java. În această postare, vei afla care practici schimbă jocul în învățarea Java, unde mulți dezvoltatori Java eșuează și cum să te asiguri că aplici conceptele pe care le stăpânești la locul de muncă.

Dar de ce Java?

Dacă primul tău instinct este să începi o dezbatere cu mine și să explici că Python este mai ușor sau că C este o modalitate mai tradițională de a învăța dezvoltarea de software, permiteți-mă să vă asigur că văd de unde ați putea veni.

Văd Java așa cum este în mod obiectiv, îi recunosc dezavantajele (viteza și eficiența memoriei, de exemplu) – cu toate acestea, cred că nu există un limbaj mai bun de învățat ca dezvoltator entry-level.

Iată de ce îmi place atât de mult Java ca punct de plecare în programare:

  • Conceptele de Java sunt folosite de mai multe limbaje de programare. Programarea orientată pe obiecte, variabilele tipizate sau fluxul de control sunt toate conceptele pe care le puteți utiliza ulterior când lucrați în C sau C++. Dacă un dezvoltator Python știe doar să codifice în Python, veți avea o punte între Java și alte limbaje web și mobile (Kotlin, de exemplu, datorează o mare parte din funcționalitatea sa Java). În ceea ce privește versatilitatea, alegerea Java este cu siguranță o victorie față de orice altă limbă.
  • Codarea în Java este versatilă. Pentru primul tău limbaj de dezvoltare, nu vrei doar o tehnologie profitabilă care să-ți aducă abilități și un loc de muncă. Mai degrabă, este în interesul tău să te asiguri că ești pregătit pentru o plimbare distractivă – iar Java este exact ceea ce cauți. Dacă abia sunteți la început, sentimentul că C este mai simplu, deoarece trebuie să tastați mai puțin, vă poate bântui (este înșelător, după cum veți înțelege mai târziu). Cu toate acestea, din moment ce îmi amintesc zilele mele de învățare a limbajului de programare, nicio altă experiență de învățare nu învinge amestecul în Java. Există atât de mult spațiu pentru creativitate și exemple de aplicații de construit – RPG-uri bazate pe text, jocuri gestionate de consolă și multe altele. În plus, puteți găsi proiecte pentru toate nivelurile de dificultate – nu este nevoie să învățați concepte teoretice luni de zile înainte de a trece la învățarea practică.
  • Limbaj folosit pe scară largă. Uneori, este la fel de simplu – vrei să înveți o limbă care să te permită să faci orice și aproape că nu există nimic mai bun decât Java. Limbajul este excelent pentru aplicații web, software, proiecte Android și instrumente interne. După ce te pricepi la Java, vei avea senzația că poți face mai mult sau mai puțin orice. Desigur, amestecul în limbaje scriptate precum JavaScript va fi în continuare necesară – cu toate acestea, nu ar fi la fel de înfricoșător ca să înveți un limbaj de programare de la zero, odată ce ai ajuns cel puțin la nivelul de competență intermediar al Java.

Piața locurilor de muncă în programarea Java – Orice bun?

Învățați să dezvoltați coduri
Imagine: KnowTechie Store

Învățarea Java poate fi distractivă și toate, dar nu voi fi șomer și înfometat dacă aceasta este singura limbă pe care o cunosc?

Deoarece Java este atât de popular în rândul dezvoltatorilor entry-level, ați putea simți că toată lumea știe cum să-l folosească și nimeni nu va mai angaja programatori. Cel mai probabil, experimentați efectele clasice ale amorsării - gândindu-vă că pentru că vedeți multe lucruri, ar putea fi dureros de obișnuit.

Am adunat câteva statistici despre piața muncii Java pentru a dovedi că există o mulțime de muncă pentru un dezvoltator rezonabil de calificat:

  • Java este cel mai înalt limbaj de programare conform celui mai recent sondaj al Stack Overflow;
  • Un salariu mediu al unui dezvoltator Java din SUA este de 79.137 USD, potrivit Glassdoor;
  • Numărul de deschideri de dezvoltare Java disponibile în prezent pe Indeed – 27.049

Dacă luați în considerare tendințele generale din lumea tehnologiei – cum ar fi cererea tot mai mare de talent tehnologic și proliferarea tot mai mare a dispozitivelor Android (Java este un limbaj de dezvoltare pentru Android utilizat pe scară largă), devine clar că nu rămâneți fără locuri de muncă. oricând în curând.

Deci, în loc să ezitați dacă ar trebui sau nu să încercați Java, adunați-l și începeți să învățați limba astăzi.

Lucruri pe care mi-aș dori să le știu în călătoria mea de învățare Java

Pe vremea când învățam Java, nu existau jumătate din câte instrumente și resurse, în afară de câteva zeci de tutoriale, cărți și documentație oficială. De ce cred că dezvoltatorii le sunt mai ușor acum că există o mulțime de resurse, o mulțime de codificatori entry-level sunt confuzi și copleșiți de varietatea de instrumente.

Deși nu există o strategie concretă pentru dobândirea competențelor în dezvoltarea de software, iată câteva lucruri pe care mi-aș fi dorit să mi le fi spus cineva mai devreme.

1. Învață să rezolvi probleme, nu să programați

dezvoltator web
Imagine: Pexels

Văd o mulțime de începători răsfoind tutoriale după tutoriale, preluând modele și concepte. Cu toate acestea, deși acest lucru vă va ajuta să învățați sintaxa Java, veți fi totuși departe de mentalitatea unui programator.

Imediat după ce am terminat tutorialele Java și a trebuit să-mi folosesc abilitățile, am fost confuz și provocat. În loc să disec aplicațiile în părți mobile și să văd cum aș putea să le construiesc eu de la zero, am continuat să văd fiecare proiect ca pe un munte înalt pe care nu aveam cum să urc.

Din fericire, pe parcurs, am găsit o mulțime de resurse care m-au ajutat să devin mai încrezător în dezvoltarea Java în lumea reală:

  • Gândește-te ca un programator – o carte care te ajută să dobândești mentalitatea unui dezvoltator, indiferent de limba pe care o înveți
  • Codegym – o platformă dedicată special învățării Java care pune accent pe aplicarea practică a conceptelor teoretice. Datorită acestuia, am aflat despre mai multe hack-uri utile care m-au ajutat să mă ușuresc în dezvoltarea proiectelor.
  • Stack Overflow – Știu că ați auzit multe despre pândit aici – deși nu recomand să lipiți bucăți de cod din SO, răsfoirea forumurilor vă aduce cu siguranță un pas mai aproape de mentalitatea unui dezvoltator.

2. Am subestimat tehnologia de asistență

Cumva, eram fericitor ignorant cât de utile pot fi bibliotecile și cadrele Java. Desigur, în calitate de dezvoltator începător, vrei să faci totul pe cont propriu – cu toate acestea, există doar atâtea lucruri pe care le poți face într-o zi, iar căutarea comenzilor rapide este adesea crucială.

Dacă ar fi să repornesc călătoria mea de învățare Java, aș fi considerabil mai minuțios atunci când aleg un set de instrumente cu care să asociați limba.

Iată instrumentele pe care le-aș recomanda dezvoltatorilor să le verifice:

  • JUnit – un instrument convenabil de testare pentru programatorii Java
  • JRat – un profiler de performanță Java care permite dezvoltatorilor să monitorizeze execuția produselor lor;
  • Mockito – un cadru open-source care facilitează batjocorirea Java;
  • Ehcache – un instrument de stocare în cache conceput special pentru programarea Java.

Voi enumera mai jos cele mai esențiale biblioteci, cadre și API-uri pentru învățarea Java.

3. Nu aveam un plan de învățare

Punând multă încredere în tutoriale și resurse online, am început să învăț Java complet cu capul gol. Nu aveam nicio cronologie pentru călătoria mea, nicio idee despre cum mi-aș folosi abilitățile sau o rutină de studiu zilnică completă. Motivația mea a fost simplă și stupidă – Java părea la modă, neștiind că se simte ca o pierdere, așa că de ce nu îl învăț?

Dacă sunteți la început în dezvoltarea de software, fiți mai amănunțit cu privire la unde doriți să ajungeți la sfârșitul zilei. Nu lăsați nici obiectivul pe care îl aveți în minte să vă orbească – învățarea unui limbaj de programare ar trebui să înceapă întotdeauna cu elementele de bază, chiar dacă doriți să deveniți un dezvoltator full-stack – un jack-of-all-trades.

Chiar acum, dacă ar trebui să învăț Java de la zero, aceasta ar fi aproximativ foaia mea de parcurs:

API-uri JDK:

  • Java IO
  • Colecția Java
  • Concurență Java
  • Java 8

Cadre Java:

  • Primăvară
  • Cizme de primăvară
  • Hibernează
  • Micronaut
  • Microprofil Eclipse

Testarea bibliotecilor:

  • Castraveți – facilitează testarea bazată pe afaceri
  • Robot Framework – ajută la optimizarea testării integrării
  • JUnity pentru testarea unitară
  • Mockito pentru testarea modelelor.

Pentru o machetă mai detaliată a învățării dezvoltării Java, aruncați o privire la graficul de mai jos.

Aș atribui un termen limită fiecăruia dintre aceste blocuri pentru a mă asigura că nu slăbesc și nu fac progrese.

Concluzie

Când spun că învățarea Java este o călătorie distractivă, mă refer în primul rând la nostalgia și amintirile fericite pe care le vei simți după ce vei fi priceput. În ceea ce privește procesul, veți experimenta atât dezavantajele de a obține răspunsul corect la problemă, cât și dezavantajele de a nu înțelege ce naiba vrea resursa dvs. de învățare de la tine.

Ca în orice învățare, stăpânirea unui limbaj de programare este sudoare de sânge și lacrimi. Cu toate acestea, atâta timp cât perseverezi și treci de greutățile inițiale ale Java, procesul de învățare va deveni treptat mai plăcut și mai puțin obositor.

Ai vreo părere despre asta? Anunțați-ne mai jos în comentarii sau transmiteți discuția pe Twitter sau Facebook.

Recomandările editorilor:

  • Începeți-vă abilitățile JavaScript cu acest curs pentru începători de 13 USD
  • 9 trebuie să învețe pachete pentru a rămâne la curent cu Java
  • 3 lucruri pe care ar trebui să le știi despre găzduirea Java
  • De ce este programarea Java populară pentru companii?