Knjige koje morate pročitati da biste naučili Java programiranje

Pozdrav svima, danas je svijet internetskih tečajeva. Svi govore o učenju na mrežnom treningu, Youtubeu, besplatnim tečajevima na Courseri i drugim web stranicama, što je sjajno kao mrežni tečajevi koji će vam pomoći da brže učite, ali, vjerujem da bi knjige i dalje trebale biti važan dio vašeg učenja, jer pružaju najdublje znanje i često napisano od strane autoriteta o toj temi.

Ako učite Java programiranje, budite spremni za upoznavanje s nekim od najstrašnijih knjiga za učenje i svladavanje Java programiranja u ovom članku.

Kad god programer započne s učenjem programskog jezika Java, prvo pitanje koje postavlja je: „Na koju bih se knjigu trebao obratiti da bih naučio Javu? "Ili " Koja je najbolja knjiga za učenje Java za početnike? " ili "Možete li mi reći neke dobre knjige za učenje Java?" To samo po sebi govori koliko su Java knjige važne za programere, posebno početnike.

Unatoč tome što je na Javi dostupno toliko besplatnih izvora, poput tutorijala, mrežnih tečajeva, savjeta, blogova i primjera koda, Java knjige imaju svoje mjesto jer:

  • Napisali su ih programeri koji su autoritet u toj temi
  • Oni pokrivaju temu s više detalja i objašnjenjima.

Ove su Java knjige moji osobni favoriti, a kad god nađem malo vremena, radije ih pročitam kako bih osvježio svoje znanje. Iako sam već mnogo pročitao ( Efektivnu Javu pročitao sam barem četiri puta do sada), uvijek želim naučiti nešto novo i moja potraga za sjajnim knjigama nikad ne prestaje.

Ove su knjige neke od najboljih dostupnih danas i podjednako su korisne za početnike, srednje i napredne Java programere.

Nije važno jeste li potpuno novi na Javi ili već neko vrijeme programirate na Javi, naučit ćete puno novih stvari kroz ove knjige.

Kad to kažem, nisu sve knjige jednako prikladne za sve programere. Za početnike je Head First Java i dalje najbolja knjiga za početak, a za naprednog razvojnog programera Java Effective Java je lijepa knjiga za početak.

10 najboljih knjiga za učenje Java programiranja

Evo moje kolekcije Java knjiga koju predlažem svakom programeru koji želi naučiti Javu. Sadrži knjige i za početnike i za iskusne programere.

Ove knjige pokrivaju različita područja, uključujući temeljne osnove Java-e, okvir za prikupljanje Java-a, multithreading i paralelnost, JVM-ove unutarnje dijelove i podešavanje izvedbe, obrasce dizajna itd.

1. Glava prva Java

Mnogi će ljudi pomisliti da je ovo stara knjiga, ali iskreno govoreći Java First Java najbolja je knjiga za svakog programera koji je nov u programiranju i na Javi. Glavni način objašnjenja prilično je fenomenalan i zaista sam uživao u njihovoj knjizi.

Head First Java pokriva osnovno znanje Java programiranja o klasi, objektu, niti, zbirci i značajkama jezika, poput generičkih podataka, enuma, varijabilnih argumenata ili automatskog boksanja.

Oni također imaju napredni odjeljak o Swingu, umrežavanju i Java IO-u, što ih čini kompletnim paketom za početnike na Javi. Ovo bi trebala biti vaša prva Java knjiga koju pogledate ako krećete od nule.

Ako više volite internetske tečajeve od knjiga, tada možete pogledati i Udemyjev kompletni Java MasterClass tečaj.

Izjava o odricanju odgovornosti: ovo nije besplatan tečaj i dobit ću naknadu ako ga kupite od Udemyja ili ako koristite bilo kakve poveznice do ovdje navedenih knjiga s Amazona.

2. Obrazac dizajna s glavom

Head First Design Pattern je još jedna vrhunska Java knjiga iz laboratorija Head-First.

Kad sam počeo čitati ovu knjigu davne 2006. godine, nisam puno razmišljao o dizajnerskim uzorcima, kako rješavaju uobičajene probleme, kako primijeniti dizajnerski obrazac, koje prednosti pružaju i svim osnovnim stvarima. Ali nakon što sam pročitao ovu Javinu knjigu, imao sam ogromnu korist.

Prvo poglavlje o nasljeđivanju i sastavu, koje je jednostavno fantastično i promovira poboljšane prakse uvođenjem problema, a zatim rješenja.

Ova knjiga također sadrži korisne točke, vježbe i memorijske karte, koje vam pomažu da brzo razumijete obrasce dizajna.

Ako želite naučiti osnovne Java dizajnerske obrasce i objektno orijentirane principe dizajna, ovo je prva Java knjiga koju biste trebali provjeriti.

Ako tražite tečaj o GOF-u ili objektno orijentiranim uzorcima dizajna, predlažem da provjerite Design Pattern Library , jedan od najboljih tečajeva koje sam do sada pohađao o uzorcima dizajna.

Jedna od dobrih vijesti o ovoj knjizi je da je novo izdanje ažurirano za Javu SE 8, koja će vas naučiti kako razviti klasični obrazac GOF dizajna koristeći značajke Java 8, poput lambda izraza i streamova.

3. Učinkovita Java

Učinkovita Java jedna je od najboljih Java knjiga u mojem dosijeu i jedna od najugodnijih. Visoko cijenim Joshua Blocha, autora, zbog njegovog doprinosa okviru Java kolekcije i paketu Java Concurrency.

Učinkovita Java najbolja je za iskusnog ili iskusnog programera koji dobro poznaje Java programiranje. Izvrsno je za programere koji žele podijeliti svoje vještine slijedeći najbolje prakse u programiranju i koji su željni slušati nekoga tko je pridonio Java razvojnom paketu (JDK).

Učinkovita Java sastoji se od zbirke najboljih praksi Java programiranja, u rasponu od statičkih tvornica, serializacije, jednakosti i hashcodea do generičkih lijekova, enuma, vararga i refleksije.

Ova knjiga o programiranju Java pokriva gotovo sve aspekte Java na malo drugačiji način nego što ste navikli.

Prošle je godine objavljeno novo izdanje koje je predstavilo značajke JDK 7, 8 i 9, koje je objavljeno prošle godine u rujnu. Ima i cijelo poglavlje o lambdama.

4. Java paralelnost u praksi

Java Concurrency u praksi još je jedan klasik Joshua Blocha, Douga Lea i tima. Ovo je najbolja Java knjiga o istodobnosti i višestrukom uvođenju niti - jedno od obaveznih čitanja za osnovne Java programere.

Snage istovremene prakse na Javi uključuju:

1) Ova je knjiga vrlo detaljna i obuhvaća manje detalje višenitnosti i istodobnosti

2) Umjesto da se usredotoči na osnovne Java klase, ova se knjiga fokusira na probleme i probleme paralelnosti, poput mrtve točke, izgladnjivanja, sigurnosti niti, uvjeta trke i predstavlja načine za njihovo rješavanje pomoću Java klasa paralelnosti.

Ova je knjiga izvrstan resurs za učenje i svladavanje Java-ovih paralelnih paketa i klasa, poput CountDownLatch, CyclicBarrier, BlockingQueue ili Semaphore. To je najveći razlog zbog kojeg volim čitati ovu Javinu knjigu i čitati je iznova i iznova.

3) Još jedna jača strana istodobne prakse u Javi su primjeri bez gluposti; primjeri u ovoj knjizi su jasni, sažeti i inteligentni.

4) Ova knjiga također dobro objašnjava što nije u redu i zašto nije u redu te kako to ispraviti, što je neophodno za uspjeh bilo koje Java knjige.

Ukratko, ovo je jedna od najboljih knjiga za učenje paralelnosti i višestrukog navoja na Javi. Sadržaj je definitivno napredan iz perspektive početnika, ali sigurno je ovo knjiga koju moraju pročitati iskusni Java programeri.

5. Java generički i zbirke

Java Generics and Collection Naftalina i Philipa Wadlera iz O'Reillyja je još jedna dobra knjiga o Javi, koju sam u početku zaboravio uvrstiti na svoj popis, ali sada je uvrštavam na zahtjev mnogih čitatelja.

Ova mi se knjiga sviđa zbog njezinog sadržaja o generičkim lijekovima i zbirkama, koja su osnovna područja Java jezika.

Poznavanje Java kolekcija i generičkih podataka očekuje se od iskusnog programera, a ove knjige pomažu u tom području.

Objašnjava svako sučelje za prikupljanje kao što su Set, List, Map, Queue i njihova implementacija, uspoređujući njihovu izvedbu u različitim situacijama.

Ja stvarno volio svoj usporedba shema na kraju svakog poglavlja, što vam daje dobru ideju o tome kada koristiti određenu Java klasa zbirke, kao što su ArrayList, HashMap, ili LinkedHashMap.

6. Java izvedba Binu Johna

Ovo je još jedna dobra knjiga koja podučava o JVM unutrašnjosti, odvozu smeća, JVM podešavanju, profiliranju. itd. i toplo preporučujem svakom starijem programeru Java da pročita ovu knjigu. Ovo je također jedan od mojih osobnih favorita.

Kako smo se kretali postupno, krenuli smo od početničke do srednje i sada više razine.

Java izvedba odnosi se na praćenje izvedbe, profiliranje i alate koji se koriste za nadzor performansi Java.

Ovo nije uobičajena knjiga o programiranju. Umjesto toga, pruža detalje o JVM-u, prikupljanju smeća, nadzoru hrpe Java i aplikaciji za profiliranje.

Svidjelo mi se njihovo poglavlje o pregledu JVM-a, a mora se pročitati da biste saznali više o JVM-u jednostavnim jezikom.

I početnici i programeri koji imaju srednju razinu mogu imati koristi od ove knjige, ali dobro je prije čitanja imati malo Java iskustva. Do sada je ovo najbolja Java knjiga o praćenju izvedbe.

Ovo je još jedna Java knjiga koju morate pročitati ako se ozbiljno bavite performansama.

Na Javi je dostupno nekoliko novih knjiga koje pokrivaju JDK 1.7. Da biste saznali najnoviju knjigu o performansama Jave, poput Java Performance, The Definitive Guide autora Scotta Oaksa , koju svakako treba pogledati prije kupnje ove knjige.

Ako su vam potrebne neke smjernice o rješavanju problema s memorijom i procesorom, predlažem da pogledate i tečaj Razumijevanje i rješavanje Java memorijskih problema Richarda Warburtona.

7. Java zagonetke

Java Puzzlers još je jedna knjiga koju vrijedi pročitati od Joshua Blocha, ovog puta s Nealom Gafterom. Ova knjiga govori o glavnim slučajevima i zamkama u programskom jeziku Java.

Java je sigurnija i sigurnija od C ++-a, a JVM čini dobar posao oslobađajući programera od raspodjele memorije sklone pogreškama. Ali ipak, Java ima kutne slučajeve koji mogu iznenaditi čak i iskusnog Java programera.

Ova Java knjiga predstavlja takve Java zamke i objašnjava ih detaljnije. Ovo je dobra Java knjiga ako volite zagonetke - mnoge od njih čak možete uključiti u osnovne Java intervjue kako biste provjerili njihovo znanje o Javi.

Ne ocjenjujem ga tako visoko kao Učinkovita Java i Java paralelnost u praksi, ali svejedno možete pokušati, posebno da provjerite svoje znanje o Javi i njezinim kutnim slučajevima, što će vam pomoći da odgovorite na neka od škakljivih Java pitanja iz intervjua.

Da biste dobili veći dio ove Java knjige, pokušajte sami riješiti zagonetke, a zatim potražite objašnjenja kako biste svoje znanje učinili konkretnijim.

8. Glava prva objektno orijentirana analiza i dizajn

Još jedna dobra knjiga o principima programiranja i dizajna Java iz serije Head-First. Objektno orijentirana analiza i dizajn glave prvi se mogu čitati zajedno s uzorcima dizajna glave glave .

Ova se knjiga usredotočuje na objektno orijentirane principe dizajna, poput favoriziranja Kompozicije nad nasljeđivanjem, programiranje za sučelje, a ne implementaciju, SUHO itd.

Jedan dio učenja Java je pisanje dobrog koda i praćenje najboljih praksi, a ova knjiga izvrsno podučava programere o njima.

Znanje stečeno iz ove knjige primjenjivo je na mnoge objektno orijentirane programske jezike i u cjelini će poboljšati vaše razumijevanje principa koda i OOP dizajna.

9. Razmišljanje na Javi

Thinking in Java napisao je Bruce Eckel, koji je također autor Thinking in C ++ i koristi svoj jedinstveni stil za podučavanje Java koncepta.

Mnogi bi se složili da je ovo jedna od najboljih Java knjiga, snagom koja ukazuje na inteligentne primjere. Ovo je jedna od cjelovitih knjiga na Javi i može se koristiti i kao referenca.

Postoji poglavlje o Java memoriranom preslikanom IO iz Thinking in Java , koje mi je najdraže.

Ako vam se ne sviđa stil podučavanja Head-First, ali trebate početnu Java knjigu s jednostavnim primjerom, razmišljanje na Javi dobar je izbor.

Detaljan je, zreo i često se ažurira, ali ako trebate više izbora, ove osnovne Java knjige možete pogledati i za početnike.

10. Java SE 8 za stvarno nestrpljive

Ovo je jedna od najboljih knjiga za učenje Jave 8. To je ujedno i moja opća namjena Java 8 knjiga. Ako imate manje vremena i želite naučiti sve važne stvari o Javi 8, ovo je knjiga na koju se možete pozvati.

Ne moram te podsjećati na Cay. S. Horstmannovo spisateljsko umijeće, jedan od najboljih autora na Javi i upravo tamo s Joshuom Blochom. Smatram da su obojica vrlo čitljivi.

Neće vam biti dosadno, što programeri često čine kad čitaju tehničke knjige. Objašnjava lambda ekspresiju, strujanje, funkcionalno sučelje, reference metoda, novi Java Date Time API i nekoliko drugih malih poboljšanja poput spajanja nizova, ponovljivih napomena itd. Ukratko, jedna od najboljih knjiga za učenje Java ruku pod ruku.

Završavati

Ovo je bio moj popis najboljih knjiga o programiranju za Java . Pročitao sam sve knjige, neke od njih i dalje čitam, a nekoliko, poput Effective Java i Head-First serijala, pročitao sam nekoliko puta. Mnogi programeri pitaju me s kojim bi knjigama trebali započeti i koju bi Java knjigu sada trebali čitati. Nadam se da ste u ovoj zbirci pronašli neke dobre knjige. Sretno čitanje!

Ostali korisni resursi za učenje Java programiranja

10 stvari Java programer trebao bi naučiti 2019

10 alata koje bi svaki programer Java trebao znati

10 razloga za učenje programskih jezika Java

10 Frameworks Java i web programer trebali bi učiti 2019

10 savjeta kako postati bolji programer Java u 2019

Top 5 Java Frameworks za učenje u 2019

10 Testiranje knjižnica koje bi svaki programer Java trebao znati

Završne napomene

Hvala što ste do sada pročitali ovaj članak. Možda mislite da postoji toliko stvari za naučiti, toliko tečajeva kojima se možete pridružiti, ali ne trebate brinuti.

Postoji velika vjerojatnost da već znate većinu stvari, a postoji i puno korisnih besplatnih resursa koje možete koristiti - tu i tamo sam ih također povezao s ostalim resursima, koji sigurno nisu besplatni , ali vrijedan novca.

Poseban sam ljubitelj Udemy tečajeva jer su vrlo pristupačni i nude puno vrijednosti u vrlo maloj količini, ali slobodni ste odabrati tečaj koji želite.

Na kraju, trebali biste imati dovoljno znanja i iskustva korištenja ovdje spomenutih resursa.

Sretno s Java putovanjem! To sigurno neće biti lako , ali slijedeći ovaj putokaz i vodič, korak ste bliže tome da postanete Java Developer kakav ste oduvijek željeli biti.

Ako vam se sviđa ovaj članak, razmislite o tome da me pratite na mediju (javinpaul). Ako želite biti obaviješteni o svakom novom postu, ne zaboravite pratiti javarevisited na Twitteru!

Još jednom, sve najbolje za vaše Razvojno putovanje o Javi i veliko hvala svim autorima što su napisali tako sjajne knjige. Ove vrhunske knjige o programiranju Java neke su od najboljih knjiga za učenje Java - čak bih rekao da su neke od njih najbolje knjige o Javi ikad objavljene.