CodeGym/Blog Java/Aleatoriu/Lista de verificare a unui dezvoltator Java. Ce ar trebui...
John Squirrels
Nivel
San Francisco

Lista de verificare a unui dezvoltator Java. Ce ar trebui să știe un dezvoltator

Publicat în grup
Bună! Astăzi vom vorbi despre calea de dezvoltare a unui dezvoltator Java și despre ceea ce trebuie să știe pentru a fi la cerere. Lista de verificare a unui dezvoltator Java.  Ce ar trebui să știe un dezvoltator - 1Într-un interviu, orice dezvoltator i-ar putea pune la grătar candidatul la job. De exemplu, ei pot începe să pună întrebări despre anumite subiecte pe care le-au întâlnit în proiectul lor curent. Dar să nu știi totul este normal. Faptul că nu poți răspunde la unele întrebări este de asemenea normal. Ca regulă generală, fiecare programator Java trebuie să aibă o înțelegere de bază a dezvoltării software. Deci, să aruncăm o privire la ceea ce este considerat „de bază”.

1. Algoritmi de bază

Primul lucru de abordat atunci când începeți să învățați programarea (nu doar Java) este să înțelegeți elementele de bază. De exemplu, algoritmi. Există un număr infinit de ei și nu ar trebui să-ți ucizi ani întregi din viață încercând să înveți cât mai mulți algoritmi: majoritatea nu îți vor fi de folos. Puteți obține minimumul necesar de cunoștințe din cartea „Algoritmi Grokking”. Acest lucru este suficient pentru a începe, dar dacă doriți, puteți învăța din cartea „Structuri și algoritmi” sau „Algoritmi în Java” de Robert Sedgewick și Kevin Wayne. De asemenea, vă recomand să vă îmbunătățiți cunoștințele de bază ale informaticii. Acest lucru se poate face cu cursul Harvard CS50.

2. Sintaxa Java

După ce învățăm elementele de bază ale algoritmilor, trebuie să învățăm sintaxa Java. La urma urmei, toți studiem aici să devenim programatori Java, nu? Cursul CodeGym este perfect pentru asta. Pe măsură ce efectuați nenumărate sarcini, veți pune mâna pe sintaxa Java și apoi, fără prea multă ezitare, veți scrie/citi cod Java ca și cum ar fi limba dumneavoastră maternă. CodeGym este practică, dar dincolo de asta, trebuie să te uiți și la teorie pentru a înțelege ce faci. Pentru a face acest lucru, puteți citi cărți. De exemplu, una dintre următoarele:
  • „Capul întâi Java”,
  • „Java for Dummies” de Barry Bird;
  • „Java: un ghid pentru începători” de Herbert Schildt.
După ce ați citit aceste cărți, puteți trece la cărți mai dificile:
  • „Gândirea în Java”, Bruce Eckel;
  • „Java eficient” de Joshua Bloch;
  • „Java: Referința completă” de Herbert Schildt.
Ultimele trei cărți nu sunt ușor de citit pentru începători, dar oferă o bază solidă în teoria Java. De asemenea, nu uitați de articolele CodeGym, deoarece oferă explicații pentru majoritatea subiectelor care vă pot interesa. Puteți găsi un articol relevant tastând subiectul care vă interesează în bara de căutare: Lista de verificare a unui dezvoltator Java.  Ce ar trebui să știe un dezvoltator - 2De asemenea, vă recomand să căutați întrebări din interviurile Java. Acest lucru vă va ajuta să înțelegeți exact ce trebuie să învățați și pentru ce întrebări să vă pregătiți.

3. Modele de design

Modelele de design sunt anumite modele repetabile care rezolvă probleme în contexte întâlnite frecvent. Acestea includ modele de bază, simple pe care fiecare programator care se respectă ar trebui să le cunoască. Pentru a înțelege acest subiect, luați cartea „Head First Design Patterns”. Acesta explică modelele de design de bază într-un mod accesibil. Dar cartea vorbește mult despre Java, așa că atunci când consumați această carte veți avea nevoie și de fluență în acest limbaj de programare. Pentru o scufundare mai profundă în tipare, puteți citi și „Design Patterns: Elements of Reusable Object-Oriented Software” din Gang of Four ( Nota editorului: Gang of Four este o echipă de autori care include Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides.). Odată ce ați studiat acest subiect, veți începe să vedeți tipare practic peste tot în codul dvs. Acordați atenție acestui lucru, în special modelelor folosite în primăvară, deoarece aceasta este o întrebare populară la interviu.

4. Paradigma de programare. Cod de curățenie

Pe lângă modelele standard de design, există diverse principii și paradigme de care trebuie să fii conștient ( SOLID , GRASP ). De asemenea, trebuie să păstrați codul curat și lizibil. Pentru tot, trebuie să știți despre acest subiect, consultați Clean Code de Robert Martin sau consultați „Code Complete” de Steve McConnell.

5. SQL

Următorul nostru pas este să studiem un limbaj pentru baze de date relaționale - SQL . Bazele de date sunt locul în care sunt stocate informațiile (datele) utilizate de o aplicație web. O bază de date constă din mai multe tabele (agenda de adrese de pe telefonul dvs. este un exemplu simplu). Dezvoltatorii Java sunt responsabili nu numai pentru aplicația Java, ci și pentru baza de date cu care interacționează și unde își stochează datele. În bazele de date relaționale (care sunt cel mai comun tip), toată interacțiunea are loc printr-un limbaj special numit Structured Query Language sau SQL. Pentru a înțelege acest subiect, tot ce trebuie să faceți este să citiți una dintre aceste cărți:
  • „Learning SQL” de Alan Beaulieu;
  • „SQL” de Chris Fehily;
  • „Head First SQL” de Lynn Beighley.
Dar practica fără teorie nu o reduce, nu-i așa? Și la interviuri vă puteți aștepta la un test al cunoștințelor dvs. de SQL. Intervievatorii adesea (aproape întotdeauna) oferă una sau două sarcini care implică scrierea unei interogări SQL. Ca rezultat, este foarte important să-ți perfecționezi abilitățile practice SQL pentru a te arăta într-o lumină bună.

6. MySQL/PostgreSQL

După ce învățați limbajul SQL, trebuie să vă familiarizați cu o anumită implementare a bazei de date. În funcție de baza de date, unele comenzi pot varia dramatic. Și există diferențe destul de vizibile în capabilitățile bazei de date. Cele mai comune baze de date relaționale sunt MySQL și PostgreSQL . Lista de verificare a unui dezvoltator Java.  Ce ar trebui să știe un dezvoltator - 3MySQL este mult mai simplu, dar PostgreSQL are capabilități mult mai largi. A fi familiarizat cu cel puțin unul dintre ele este suficient pentru a începe. Puteți studia implementările bazelor de date dacă vă folosiți abilitățile de a căuta pe Google - găsiți articole și tutoriale relevante pe YouTube. Va trebui să vă cultivați capacitatea de a crea interogări de căutare adecvate pentru întrebările la care aveți nevoie de răspuns. La urma urmei, un programator este cineva cu centură neagră în google.

7. Maven/Gradle

Trebuie să înveți fie cadrul Gradle, fie Maven . Ele sunt pentru construirea de proiecte, iar pentru tine, Java este acum nu numai pentru sarcini care implică câteva clase, ci și un limbaj pentru scrierea de aplicații cu drepturi depline. Trebuie să înțelegeți cum să construiți un proiect, care sunt etapele de construire, cum să încărcați bibliotecile externe necesare cu cod terță parte și multe altele. În ciuda faptului că Gradle este mai nou și mai concis, Maven este folosit în majoritatea cazurilor. Așadar, acordați o atenție deosebită ciclului de viață al construcției Maven.

8. Git

Git este un sistem distribuit de control al versiunilor. Această tehnologie permite dezvoltatorilor să colaboreze la o singură aplicație fără a interfera unul cu celălalt. Desigur, există și alte sisteme de control al versiunilor. De exemplu, Subversion . Dar Git este folosit cel mai larg și trebuie să poți lucra cu el.Lista de verificare a unui dezvoltator Java.  Ce ar trebui să știe un dezvoltator - 4Pe lângă numeroasele articole despre Git pe care le poți găsi online, YouTube are videoclipuri mai mult decât suficiente pentru a te ajuta să stăpânești această tehnologie, pas cu pas. La început, este mai bine să utilizați Git din linia de comandă, mai degrabă decât un fel de implementare a GUI, deoarece veți fi forțat să faceți totul folosind comenzi. În interviuri, oamenilor le place adesea să întrebe despre câteva comenzi Git, așa că vă recomand să le scrieți și să le păstrați undeva aproape. De asemenea, vă recomand să luați notițe, ținând evidența celor mai importante puncte pentru a le parcurge înainte de interviu și pentru a vă împrospăta memoria.

9. JDBC

Această tehnologie conectează aplicația dvs. Java și o bază de date relațională. Pentru elementele de bază, vă recomand să citiți orice tutorial JDBC. Există o abundență de articole care explică JDBC și oferă exemple rudimentare, chiar dacă nimeni nu mai folosește JDBC în mod direct.

10. JPA. Hibernează

JPA este o modalitate de a stabili o conexiune între o aplicație Java și o bază de date, la fel ca JDBC. Dar, în același timp, JPA este o tehnologie de nivel superior și, prin urmare, mai ușor de utilizat. Dar JPA este doar o specificație, nu o implementare. Are nevoie de o implementare concretă. Multe dintre ele există, dar cel mai apropiat de idealurile JPA, cel mai popular și cel mai dezvoltat este Hibernate. Veți întâlni această tehnologie de mai multe ori în cariera dumneavoastră de dezvoltare de software. Deci, pe lângă familiarizarea cu această tehnologie citind articole, poate merita să vă gândiți la citirea unei cărți, de exemplu, „Java Persistence API”.

11. Primăvara

Când devii un dezvoltator Java, Spring nu mai este doar un cuvânt pentru tine. Lista de verificare a unui dezvoltator Java.  Ce ar trebui să știe un dezvoltator - 5Cunoașterea acestui cadru este acum la fel de importantă ca și cunoașterea sintaxei Java. Ai putea spune că Spring are un frate, adică Java EE. Dar Java EE este depășit și nu mai este folosit în proiecte noi. Majoritatea covârșitoare a dezvoltatorilor Java sunt acum dezvoltatori Java-Spring, așa că cunoașterea unor tehnologii Spring de bază este o necesitate. Spring nu este doar un cadru, ci un întreg cadru de cadre: Lista de verificare a unui dezvoltator Java.  Ce ar trebui să știe un dezvoltator - 6Și acesta este doar un subset al cadrelor pe care le oferă Spring. Pentru un începător, să cunoască doar câteva dintre ele este suficient de bun:

  • Miez de primăvară

Ar trebui să puneți acest lucru în primul rând, astfel încât să puteți înțelege ce este Spring - totul despre containere Spring, fasole, DI, IoC și așa mai departe. Pentru a înțelege însăși filosofia folosirii primăverii, ca să spunem așa. Studiul dvs. ulterioar al cadrelor Spring se va construi pe baza acestei baze. Poate că ar trebui să creați propria dvs. aplicație mică în care să puteți încorpora treptat toate tehnologiile nou învățate.

  • JDBC de primăvară

Mai devreme am menționat JDBC ca tehnologie pentru crearea unei conexiuni la baza de date. În general, utilizarea „nudă” a tehnologiei nu mai poate fi găsită în proiecte, așa că puteți concluziona că învățarea JDBC nu este necesară. Aceasta nu este atitudinea corectă. Explorând utilizarea liberă (directă) a JDBC, puteți vedea tehnologia la un nivel inferior și puteți înțelege problemele și deficiențele acesteia. Apoi, când începeți să învățați Spring JDBC, vă veți da seama ce anume îmbunătățește, optimizează și ascunde acest cadru.

  • Hibernare de primăvară

Analog cu situația cu JDBC gol, acest cadru folosește o tehnologie existentă, în acest caz, Hibernate. Dacă vă gândiți să utilizați Hibernate fără Spring, veți realiza cu siguranță beneficiile pe care le oferă Spring Hibernate.

  • JPA de primăvară

Mai devreme am vorbit despre JPA și am menționat că este doar o specificație, deși are diverse implementări. Dintre aceste implementări, Hibernate se apropie cel mai mult de ideal. Spring are propria sa implementare JPA ideală care utilizează Hibernate sub capotă. Este cât se poate de aproape de idealul specificației JPA. Se numește Spring JPA. Într-un cuvânt, simplifică foarte mult accesul la baza de date. Puteți învăța doar JPA fără a învăța JDBC, Hibernate, Spring JDBC sau Spring Hibernate. Dar dacă adoptați această abordare, cunoștințele dvs. despre cum să vă conectați la o bază de date vor fi foarte superficiale.

  • Spring MVC

Această tehnologie face posibilă afișarea interfeței web a aplicației noastre pentru utilizatori și facilitarea comunicării între interfață și restul aplicației. Tehnologia poate fi folosită și fără afișare atunci când aveți o aplicație care este responsabilă pentru manipularea afișajului și interacționați cu aplicația folosind tehnologia RESTful . Pentru a absorbi mai bine informații despre primăvară, pe lângă articole și prelegeri pe YouTube, puteți citi mai multe cărți. Mi-a plăcut foarte mult cartea „Primăvara în acțiune” de Craig Walls. Vă sfătuiesc să citiți versiunea a 6-a, dacă știți bine engleza. O altă carte grozavă despre primăvară este „Primăvara 5 pentru profesioniști”. E mai dens. Mai degrabă o referință care este mai valoroasă de ținut la îndemână decât de citit de la cap la cap.Lista de verificare a unui dezvoltator Java.  Ce ar trebui să știe un dezvoltator - 7

  • Cizme de primăvară

Această tehnologie simplifică foarte mult utilizarea Spring. Nu l-am pus la sfârșitul listei dintr-un capriciu. Într-adevăr, se ascunde foarte mult sub capotă, iar pentru cineva care nu este familiarizat cu primăvara de vanilie, multe puncte pot fi neclare sau de neînțeles. În primul rând, pentru o mai bună înțelegere a modului în care funcționează cadrele Spring, ar trebui să utilizați Spring obișnuit și apoi să beneficiați de toate beneficiile mai mari ale utilizării Spring Boot. De asemenea, vă recomand să vă familiarizați cu Spring Security și Spring AOP. Dar, spre deosebire de tehnologiile de mai sus, cunoașterea profundă a acestor două nu este necesară încă. Această tehnologie nu este pentru începători. La interviuri, dezvoltatorii juniori nu vor fi întrebați despre ei (cu excepția unei întrebări superficiale, poate). Citiți o prezentare generală a acestor tehnologii și a principiilor din spatele muncii lor. În acest articol, Am menționat în repetate rânduri cărțile citite. Pe de o parte, acest lucru nu este obligatoriu. Poți deveni programator fără să citești o singură carte, dobândind toate cunoștințele necesare din articole online și videoclipuri de instruire. Pe de altă parte, pe piața muncii, concurența dintre dezvoltatorii începători este mare în prezent, ceea ce ridică ștacheta pentru ceea ce trebuie să știe un începător. Deci, cu cât știi mai multe, cu atât mai repede vei găsi primul tău loc de muncă impresionând intervievatorul cu nivelul tău de cunoștințe. Mulțumesc tuturor și Java să vă fie alături. ceea ce ridică ștacheta pentru ceea ce trebuie să știe un începător. Deci, cu cât știi mai multe, cu atât mai repede vei găsi primul tău loc de muncă impresionând intervievatorul cu nivelul tău de cunoștințe. Mulțumesc tuturor și Java să vă fie alături. ceea ce ridică ștacheta pentru ceea ce trebuie să știe un începător. Deci, cu cât știi mai multe, cu atât mai repede vei găsi primul tău loc de muncă impresionând intervievatorul cu nivelul tău de cunoștințe. Mulțumesc tuturor și Java să vă fie alături.
Comentarii
  • Popular
  • Nou
  • Vechi
Trebuie să fii conectat pentru a lăsa un comentariu
Această pagină nu are încă niciun comentariu