JavaRush /Java Blog /Random-TL /Pinakamahusay na Mga Aklat sa Java para sa Mga Nagsisimul...

Pinakamahusay na Mga Aklat sa Java para sa Mga Nagsisimula at Higit Pa (2023)

Nai-publish sa grupo
Nakasanayan na namin ang mabilis na pag-access sa impormasyon at ang parehong mabilis na pagsipsip. Mas gusto namin ang limang minutong video kaysa sa malalalim na lektura at maikling artikulo kaysa mga aklat. Hindi ko sasabihin na ang isang magandang libro sa programming ay papalitan ang anumang artikulo, hindi ito ganoon. At tiyak na hindi nito mapapalitan ang pagsasanay. Gayunpaman, para sa akin nang personal, ang isang tunay na pag-unawa sa mga pangunahing kaalaman ng programming ay dumating pagkatapos kong malutas ang daan-daang mga problema sa kurso ng JavaRush programming at magbasa ng isang toneladang artikulo, nagsimulang sabay na pag-aralan ang teorya mula sa mga libro at malalim na pinag-aralan ang mga ito. Matagal ko nang hinahanap ang aking personal na "pinakamahusay na Java tutorial para sa mga nagsisimula." Nasa ibaba ang ilang mga aklat sa Java na kapaki-pakinabang sa akin sa mas malaki o mas maliit na lawak sa iba't ibang yugto ng aking pag-aaral.

Mga Aklat para sa Mga Nagsisimula

Sa seksyong ito, nakolekta ko ang mga aklat na kakailanganin mong gawin ang iyong mga unang hakbang sa pag-aaral ng Java programming.

1. Head First Java, Kathy Sierra at Bert Bates

Nagsimula ako sa librong ito hindi dahil paborito ko ito, ngunit dahil ito ang pinakasimple. Ang aklat na ito, ayon sa maraming programmer, ay ang pinakamahusay na tutorial sa Java mula sa simula. Bukod dito, ito ay tunay na mula sa simula, iyon ay, ito ay angkop para sa mga nagsisimula pa lamang at hindi lubos na nauunawaan kung anong uri ng beast programming. I admit, it came to me too late. Sa tingin ko iyon ang dahilan kung bakit hindi ko ito ma-appreciate. Napakasaya na "basahin lang" ito, ngunit matagal akong naghanap ng anumang partikular dito. Ang materyal ay malinaw na ipinakita, ngunit sa halip ay mababaw (dahil ito ay mula sa simula!) At maraming mga paksa at kinakailangang mga paliwanag ay wala doon. Ngunit ang aking kaibigan, kung kanino ito ay minana, ay natuwa dito at sumigaw na hindi lamang ito ang pinakamahusay na aklat-aralin sa Java para sa mga nagsisimula, ngunit isang direktang obra maestra sa mundo at ito ay kung paano dapat iharap ang kumplikadong materyal.

Mga kalamangan:

  • Ang pinakamahusay na Java tutorial mula sa simula, para sa kumpletong dummies, nakasulat sa isang buhay na wika.
  • Mga cool na guhit at katatawanan.
  • Pagpapaliwanag na may mga tunay na halimbawa sa buhay.

Bahid:

  • Maraming tubig para sa mga nakapasok na sa paksa.
  • Hindi palaging matagumpay na mga palaisipan at pagsasanay.

2. Java para sa Dummies, Barry Bird

Ang aklat na ito, dapat kong aminin, ay dumating na sa akin noong ako ay nagtatrabaho bilang isang programmer. Sa isang mas naunang bersyon ng artikulo tungkol sa mga kapaki-pakinabang na libro, tinanong ako tungkol dito sa mga komento, at nang makita ko ito na may isang tester sa trabaho, nagpasya akong tingnan ito nang mas malapitan. Ang Java for Dummies ni Barry Bird ay isang kawili-wiling libro para sa mga baguhan na handang gumamit ng ilang mapagkukunan upang matulungan silang matuto. Ito ay hindi isang tutorial ng baguhan, ngunit sa halip ay isang unang reference na libro para sa Java. Pinakamabisang pag-aralan ito kasabay ng mga sunud-sunod na aralin (tulad ng sa JavaRush) at (kinakailangan!) Upang pagsamahin kaagad ang iyong natutunan sa pagsasanay. Batay sa pagtatanghal, agad kong nakilala ang may-akda bilang isang guro, dahil sa mga lugar ay humihinto siya sa mga lugar na hindi inaasahang sa unang tingin at sinusuri ang mga isyung ibinangon nang detalyado. Hindi ito aksidente: sa mga tanong na ito ang madalas na natitisod sa kanyang mga estudyante. Ngunit ang ilang mga paksa ay sakop ng mababaw... Gayunpaman, ito ay isang libro para sa mga nagsisimula, hindi mo dapat asahan ang lalim mula dito. Sabihin nating ang unang dalawang kabanata ay mabuti para sa mga nagsisimula, ang OOP (kabanata 3) ay mas mahusay na pinag-aralan sa ibang libro, ngunit ang mga kabanata 4 (mga advanced na diskarte sa programming - mga paliwanag kung paano gumamit ng mga klase at pamamaraan, pagsisimula ng mga koleksyon, multithreading, paghawak ng exception) at 5 (mga tip sa pag-iwas sa mga pagkakamali) Itinuturing kong napakatagumpay at kapaki-pakinabang. Bukod dito, ang Java For Dummies ay madaling basahin, puno ng makulay at nakakatawang mga halimbawa. Madali itong mabasa kahit saan sa kalsada o bago matulog. Kung nasiyahan ka sa istilo ng may-akda, siyempre. At tandaan: walang aklat sa mundong ito ang maaaring gawing software developer. Practice lang pwede. Pinakamahusay na Mga Aklat sa Java para sa Mga Nagsisimula at Higit Pa (2023) - 1

Mga kalamangan:

  • Madaling wika.
  • Mahusay na payo at isang magandang panimula sa maraming paksa (kabanata 1, 2, 4).
  • Magandang halimbawa.

Bahid:

  • Hindi lahat ng mga paksa ay pantay na ipinakita.
  • Hindi lahat ay magugustuhan ang istilo ng may-akda.

3. Java: Programming Fundamentals para sa Absolute Beginners, Nathan Clark

Isa pang libro para sa mga mambabasa na walang karanasan sa programming. Sasabihin ko ang pangunahing bentahe nito ay ang step-by-step na kalikasan nito. Ito ay lubos na nagpapaliwanag ng mga punto na kadalasang nagdudulot ng mga paghihirap para sa mga taong nahaharap sa programming sa unang pagkakataon. Dito matututunan mo kung paano pumili ng isang IDE at kung paano isulat ang iyong unang programa. Ipapaliwanag ng aklat kung ano ang Java Development Kit at Java Runtime Environment at magbibigay ng mga halimbawa ng bawat piraso ng code. Pero... walang Russian translation ng librong ito, so I recommend it to those who know English at least at the B1 level. Siyanga pala, kailangang malaman ng bawat developer ang English sa antas na ito, para makapatay ka ng dalawang ibon gamit ang isang bato sa pamamagitan ng pag-aaral ng Java mula sa isang librong English-language. Sapat na ang gayong mga aklat sa artikulong ito. Pinakamahusay na Mga Aklat sa Java para sa Mga Nagsisimula at Higit Pa (2023) - 2

Mga kalamangan:

  • Isang maayos na pagpapakilala sa programming at ang mga pangunahing pag-andar ng wikang Java.
  • Pagkakasunod-sunod ng presentasyon.

Bahid:

  • Walang malalim na paliwanag sa konsepto ng object-oriented programming, kaya ang ilan sa mga praktikal na halimbawa ay maaaring nakalilito.
  • Walang pagsasalin ng Ruso.

4. Think Java: How to Think Like a Computer Scientist, Allen Downey at Chris Mayfield

Isa pang kawili-wiling aklat na magagamit sa Ingles. Tulad ng tala ng mga may-akda, ang pangunahing layunin ng libro ay tulungan ang mga mambabasa na bumuo ng mga kasanayan sa pag-iisip na kinakailangan upang malutas ang mga problema na likas sa computer science. Ang libro ay inilaan para sa mga nagsisimula, kaya ang mga may-akda ay nagsisimula sa mga pangunahing kaalaman na maaaring maunawaan ng mga walang karanasan sa programming o kaalaman sa Java. Ito ay nakasulat nang simple, at maaaring maging kapaki-pakinabang sa mga mag-aaral o mga taong nagtuturo sa sarili na gustong makabisado ang programming at bumuo ng mga kasanayan sa pag-iisip ng algorithm. Tulad ng marami pang iba, ang aklat ay nagsisimula sa isang panimula sa OOP. Ang bawat kabanata ay naglalaman ng mga seksyon ng bokabularyo at ehersisyo upang palakasin ang teorya at master ang mga kasanayan sa programming. Pinakamahusay na Mga Aklat sa Java para sa Mga Nagsisimula at Higit Pa (2023) - 3

Mga kalamangan:

  • Madali at nakakatuwang basahin.
  • Ang libro ay nagpapakita ng mga kumplikadong konsepto ng programming sa isang naa-access at madaling maunawaan na paraan.
  • Mga disenteng halimbawa at pagsasanay.

Bahid:

  • Kakulangan ng hakbang-hakbang na diskarte.
  • Ang ilang mga mambabasa ay maaaring magkaroon ng mga tanong pagkatapos ng ilang mga seksyon dahil hindi palaging isang detalyadong paliwanag ng ilang mga paksa.

5. Java. Isang Gabay sa Baguhan, Herbert Schildt

Matapos tingnan ang aklat-aralin na ito, naisip ko na ito ay angkop para sa mga gustong mas tradisyonal na presentasyon ng materyal kaysa sa Headfirst, ngunit naghahanap din ng tutorial mula sa simula. Sa ilang mga lugar, ang pagtatanghal sa aklat ay napakadetalye, nakapagpapaalaala sa pinalawak at isinalin na dokumentasyon na may magagandang visual na mga halimbawa. Minsan, para sa akin, ang may-akda ay tumatawid sa linya at nagsimulang ngumunguya ng sobra, ang pagbabasa ay nagiging boring... at biglang - sumisipsip - at ang ilang medyo kumplikadong lugar ay halos napalampas, at ikaw ay ganap na nalilito sa pagsisikap na maunawaan kung ano at saan. napalampas mo. Gayunpaman, hindi masyadong maraming ganoong lugar sa aklat, at may kilala akong mga taong naniniwala na ang Gabay sa Baguhan ay ang pinakamahusay na tutorial sa Java para sa mga hindi pa nakakaalam ng anuman. Sa personal, nakita kong hindi pantay ang libro. Sabihin nating magsisimula akong mag-sort sa mga koleksyon at sa halip na isang paliwanag ng tao, binibigyan nila ako ng gawaing mag-isa na lumikha ng isang Set batay sa mga array. Cool na problema, ngunit gusto kong mas maunawaan kung ano ang mga karaniwang koleksyon muna! Bagama't ang aklat na ito, tulad ng nauna, ay itinuturing na isang aklat-aralin para sa mga nagsisimula, ang aking karanasan bilang isang guro ay nagmumungkahi na ito ay mabuti lamang kasabay ng iba pang mga materyales: para sa isang humanities switcher, hindi lahat ay magiging simple at malinaw. Ang "A Beginner's Guide" ay angkop para sa isang taong kahit papaano ay nag-aral ng programming (halimbawa, sa unibersidad), matagal nang sumuko dito, at sa parehong oras ay gusto ang istilo ng pagtatanghal ng may-akda. Lalo na nakalulugod na ang aklat-aralin ay patuloy na na-update, at sinasaklaw nito ang mga tampok ng Java 8, at ang kasalukuyang edisyon (ikasampu) ay isinasaalang-alang ang JDK 9 at JDK 10. Pinakamahusay na Mga Aklat sa Java para sa Mga Nagsisimula at Higit Pa (2023) - 4

Mga kalamangan:

  • Tradisyunal na maalalahanin na pagtatanghal ng mga pangunahing kaalaman.
  • Magandang halimbawa.

Bahid:

  • May mga tumalon mula sa "masyadong ngumunguya" hanggang sa "sabi nang palampas"
  • Nakakatamad sa mga lugar.
Siyanga pala, si Herbert Schildt ay may isa pang sikat na libro sa programming - "Java. The Complete Guide". Ito ay isang ganap na naiibang aklat-aralin, mas pangunahing. Ituloy natin ito.

Mga gabay para sa mga magpapatuloy o magsisimulang muli

Ang mga sumusunod na aklat ay pinakaangkop para sa mga may kaunting pang-unawa sa programming at gustong sumisid ng kaunti sa Java o magsimulang magsanay nang mas lubusan. May mga manual, reference na libro, at tutorial sa mga bago o medyo bagong feature ng Java na kadalasang hindi agad napupuntahan ng mga tao, pati na rin ang mga aklat sa Android (mas tiyak, isang libro sa Android).

6. Java. Ang Kumpletong Gabay, Herbert Shildt

Aaminin ko: noong unang panahon ay na-download ko ang aklat na ito mula sa Internet upang suriin ito at pagkatapos ay bilhin ito o hindi bilhin ito. Walang biro, 1300 pages ng text! At ang presyo ay hindi gaanong kahanga-hanga kaysa sa dami. Ganoon din ang ginawa ko sa dalawang tomo na “Professional's Library” ni Kay Horstmann (higit pa tungkol dito sa ibaba). Sa hinaharap, sasabihin ko na pinili ko ang pangalawa. Bakit? Dahil sa librong Java. The Complete Guide" Nakita ko ang parehong mga pagkukulang tulad ng sa "Beginner's Guide". Minsan ang mga paliwanag ay ngumunguya, kung minsan sila ay gusot, ngunit sa parehong oras ay hindi lamang sila gusot, ngunit kahit papaano ay verbosely gusot. Marahil ito ang istilo ng may-akda at sa tingin ko ay may magugustuhan ito, o sa halip, ayon sa kanilang pag-iisip. Sa pangkalahatan, ang Java 8: The Definitive Guide ay isang magandang reference na libro para sa Java. Ngunit sa personal, mas nagustuhan ko ang pagtatanghal ng parehong mga bagay sa ibang libro. Pinakamahusay na Mga Aklat sa Java para sa Mga Nagsisimula at Higit Pa (2023) - 5

Mga kalamangan:

  • Kumpletong gabay. Tila mayroong lahat ng mga paksa na kailangang malaman ng isang baguhan, at hindi lamang isang baguhan.
  • Mga detalyadong paliwanag.

Bahid:

  • Maraming tubig (ngunit ang ilan ay maaaring gusto iyon!).
  • Ang pagsasalin ng Ruso ay hindi ang pinakamahusay.

7. Java. Ang Aklatan ng Propesyonal, Kay S. Horstmann, Harry Cornell

Ang mga aklat nina Schildt at Horstmann ay madalas na inihahambing sa isa't isa. Parehong may tapat na tagahanga ang isa at ang isa pa. Para sa akin, ang dalawang-volume na aklat ni Horstmann ay ang pinakamahusay na aklat-aralin sa Java. Ito ay naging isang reference na libro para sa akin sa baguhan at intermediate na antas ng JavaRush. Kapag hindi ko naiintindihan ang isang paksa, karamihan ay bumaling ako kay Horstmann, at nilinaw niya ang maraming bagay. Sinasaklaw ng aklat ang lahat mula sa syntax hanggang sa multithreaded programming, localization ng program, at pagtatrabaho sa XML. At huwag hayaan ang pangalang "Professional's Library" na takutin ka (iyon ang ikinatakot ko), ang mga pangunahing kaalaman ay nasasakupan nang maayos. Bilang karagdagan, ito ay kapaki-pakinabang na muling basahin ito sa pana-panahon upang i-refresh at ayusin ang iyong kaalaman.

Mga kalamangan:

  • Sa nakakagulat na bilang ng mga pahina, mayroong kaunting tubig (hindi katulad ng Schildt).
  • Naglalaman ng lahat ng kailangan ng mga nagsisimula.
  • Pinapalawak ang Java 8, isinasaalang-alang ang mga pagbabago sa JDK 9, 10 at 11.
  • Magandang presentasyon ng mga paksa sa mga koleksyon at generics.
  • Mahusay na ipinares sa JavaRush. Pumunta sa paksa, lutasin ang mga problema, maaga o huli ay hindi mo naiintindihan ang isang bagay - panoorin ang Horstmann, subukang muli.

Bahid:

  • Maaaring makita ng ilan na tuyo ang aklat.
  • Walang practice.
  • Pagsasalin sa Russian na may mga pagkakamali.

8. Gumaganap ang Java 8: Lambdas, Stream, at Functional-Style Programming

Sa ikawalong bersyon, ang bagong pag-andar ay dumating sa mundo ng Java na napakahalaga at naiiba mula sa kung ano ang bago na ipinapayong pag-aralan ang mga paksang ito nang hiwalay sa lahat ng iba pa. Bukod dito: hanggang ngayon ay wala pang mas mahalagang pag-update ng wika. Kaya bago sa amin ang Java 8 sa aksyon, isang kawili-wiling aklat-aralin sa Java 8. Mahalagang agad na ituro na ito ay idinisenyo para sa mga taong alam na ang mga pangunahing kaalaman ng "lamang" na Java. Ang napakahusay ng aklat na ito ay mayroon itong napakaraming sari-sari at kapaki-pakinabang na mga problema sa pagsasanay. Kasama sa mga halimbawa ang parehong "tama" at "mali" na mga sample ng code. Ang pangunahing bagay ay hindi malito.

Mga kalamangan:

  • Practice oriented.
  • Ipinapakita ang pagkakaiba sa pagitan ng tama at maling code.

Bahid:

  • Ang mga karagdagang mapagkukunan ay kinakailangan upang makakuha ng mas malalim na pag-unawa sa mga pangunahing kaalaman sa Java.

9. Core Java para sa Impatient (Third Edition) o Java SE 9. Basic Course, Kay Horstmann

Sa orihinal, ang aklat na ito ay tinatawag na Core Java para sa Impatient, iyon ay, "Java Core para sa impatient." Hindi ko alam kung bakit hindi ito isinama sa pagsasalin. Sa palagay ko, makakatulong ito sa libro na hindi mawala sa mga kapantay nito. Mayroong pagsasalin ng ikalawang edisyon ng aklat sa Russian, at sa Ingles ay mayroon nang ikatlong edisyon, na-update sa Java 17. Ang aklat ay nakaayos bilang isang mabilis na sanggunian, at ito ay napaka-maginhawang gamitin upang mahanap ang sagot sa isang tiyak na tanong kung may nakalimutan ka o dati nang na-program sa ibang mga wika. Ang lalo kong nagustuhan ay ang mga teksto ay napakaikli, mahalagang walang nginunguya at tubig. Nagbibigay ang aklat ng magandang paglalarawan ng mga expression ng lambda, input/output stream, at module. Gayunpaman, hindi ipapaliwanag ng aklat na ito kung ano ang variable o loop. Ngunit mayroong, bilang karagdagan, nabanggit ko na, ang mga pangunahing istruktura, koleksyon, anotasyon, generics, pag-log, multithreading - lahat ng bagay na gagawin mo sa pagsasanay. Sa totoo lang, gusto ko talaga ang librong ito, at kahit ngayon ay tinitingnan ko ito minsan. Tandaan lamang na ang aklat na ito ay hindi angkop para sa mga walang alam sa programming. Ito ay mas malamang para sa mga nag-aral na ng ibang wika o parehong Java, ngunit sa mahabang panahon at hindi ganap.

Mga kalamangan:

  • Maikling bloke ng impormasyon. To the point ang lahat.
  • Walang mga hindi kinakailangang paksa.
  • Isang napakahusay na seleksyon ng mga kasalukuyang paksa para pag-aralan ng mga nagsisimulang Java programmer.
  • Mga matagumpay na halimbawa.

Bahid:

  • Ang aklat ay hindi angkop para sa mga nagsisimulang matuto ng programming mula sa simula.

10. Java. Handbook ng Developer, Benjamin J. Evans, David Flanagan

Isang magandang unibersal na sangguniang libro, isang alternatibo sa mga aklat ni Horstmann. Naglalaman ng impormasyon na kapaki-pakinabang para sa parehong mga nagsisimula at mga developer ng Java na patuloy na sumisid sa programming. Ang pinakabagong edisyon sa oras ng pagsulat ng pariralang ito (ikapito) ay batay sa Java 11. Ang aklat ay hindi mahaba, maraming mga halimbawa, ang Java API at ang pinakamahusay na mga kasanayan sa pag-unlad ay tinalakay. Madaling basahin ang aklat at mula rito ay matututunan mo ang mga pangunahing kaalaman sa wika, mga kapaki-pakinabang na diskarte sa programming, at maging ang mga bagong uso sa Java.

Mga kalamangan:

  • Maikling at magandang buod.
  • Mayroong lahat ng kailangan ng isang baguhan na programmer.
  • Magandang paglalarawan ng mga modernong kasangkapan.
  • Mga matagumpay na halimbawa.

Bahid:

  • Hindi palaging may sapat na pagsasalin ng terminolohiya sa Russian.

11. Ang Java Module System, Nikolay Parlog

Ang aklat na ito ay makukuha sa Ingles at Ruso. Ito ay isang napaka detalyadong gabay sa Java modular system. Nagtalo ang may-akda na mas madaling lumikha ng isang maaasahan at secure na application kung ang code ay nakabalot sa maayos na mga bloke. Ang mga module sa Java ay medyo bagong tool; ang mga pangunahing pagbabago sa arkitektura ay nakaapekto lamang sa Java core mula pa noong bersyon 9. At bagama't parami nang parami ang mga proyektong may mga module, may mga tao na nakasanayan nang magtrabaho sa lumang paraan at walang alam tungkol sa mga ito. kawili-wiling mga inobasyon. Pagkatapos basahin ang aklat na ito, mauunawaan mo kung paano subaybayan kung paano nakikipag-ugnayan ang iba't ibang JAR file at madaling mahanap ang mga nawawalang dependency. Kung seryoso ka sa mga modular na proyekto ng Java o kailangan mong matuto ng mga module para sa trabaho, tingnan ang aklat na ito.

Mga kalamangan:

  • Ang pinaka kumpletong paglalarawan ng mga pakinabang ng modular system.
  • Mahusay na mga halimbawa at diskarte para sa paglipat sa mga module.

Bahid:

  • Mayroon itong kaunting syntactic na paglalarawan, na mahirap para sa mga nagsisimula.

12. Modern Java in Action: Lambdas, streams, functional at reactive programming

Kahit na ang Java ay nasa loob ng maraming taon, ang wika ay patuloy na nakakakuha ng mga bagong kakayahan. Siyempre, lahat tayo ay tao, at minsan ay binabalewala ng mga programmer ang mga bagong feature at diskarte at nag-aatubili silang ipatupad ang mga ito sa mga proyekto ng Java. Ang mga aklat tulad ng Modern Java in Action ay idinisenyo upang makatulong sa paglutas ng problemang ito. Ang gabay na ito ay sumasaklaw nang detalyado sa mga paksang kadalasang sinasaklaw sa mga maiikling itinuro na pagsasanay. Tandaan ko na kadalasan ang ganitong pagsasanay ay tumatagal ng 1-3 araw, at ang impormasyon doon ay napakakonsentrado. Kaya't ang mga baguhang programmer ay nalulunod lamang sa mga bagong impormasyon at hindi ito tinatanggap. At ang aklat na ito ay magdadala sa iyo nang sunud-sunod mula sa mga expression ng lambda hanggang sa mga sanggunian sa pamamaraan, mga functional na interface at mga thread, at kung magagawa mo itong maingat.

Mga kalamangan:

  • Ang aklat na ito ay naglalaman ng lahat ng mga modernong tampok ng Java kaya ito ay lubhang kapaki-pakinabang.
  • Pare-parehong paglalahad ng mga kumplikadong konsepto.
  • Inihambing ng mga may-akda ang mga bagong uso sa mga tradisyonal. Kaya't ang aklat na ito ay maaaring irekomenda kahit sa mga baguhan.

Bahid:

  • Para sa mga may alam na tungkol sa paksa, ang libro ay maaaring mukhang medyo salita.

13. Head First Android Development

Ang Java ay ang katutubong wika ng Android. Samakatuwid, ang isa sa mga pinakasikat na opsyon upang simulan ang pagbuo ng application sa wikang ito ay ang paglikha ng isang Android application. Ang aklat na ito (mayroong pagsasalin sa Russian na "Head First Programming para sa Android") ay isa pa mula sa serye ng Head First. Kaya ang mga katangian ng pamilya ng serye ay lubos na likas sa manwal na ito. Iyon ay, dito ay makakahanap ka ng maraming mga larawan, isang madaling istilo, isang malaking bilang ng mga pagsasanay nang hindi seryosong nagsasaliksik sa kakanyahan. Nangangahulugan ito na kung gusto mong lubos na maunawaan ang pag-develop ng Android app, maaaring kailanganin mong magsagawa ng karagdagang pananaliksik at pumunta nang mas malalim sa mga pinagmulan. Ngunit kung gusto mong mabilis na simulan ang programming para sa system na ito, ito ang lugar para sa iyo.

Mga kalamangan:

  • Madaling istilo, mga larawan, iba't ibang gawain at mga pagsasanay sa proyekto na maaaring aktibong kasangkot ang mambabasa sa proseso ng pag-aaral.
  • Simplicity at Accessibility: Sinusubukan ng mga may-akda na ipaliwanag ang mga kumplikadong konsepto sa mga simpleng termino, na ginagawang mas madaling maunawaan ng mga nagsisimula.

Bahid:

  • Pagkaluma: Maaaring magresulta ang mabilis na pagbabago sa teknolohiya sa mundo ng programming at Android sa aklat na hindi na naglalaman ng mga kasalukuyang diskarte at tool.
  • Ang ilang mga paksa ay itinuturing na masyadong mababaw.

14. Pag-aaral ng Java: Ipinapakilala ang Real-World Programming gamit ang Java

Dapat kong sabihin kaagad na ang aklat na ito ay hindi inilaan para sa mga nagsisimula. Kakailanganin mo ito kung alam mo ang Core Java kahit man lang sa basic level at makakasulat ka ng mga simpleng application. Kung gayon, tutulungan ka ng aklat na ito na maunawaan ang iba't ibang kumplikadong konsepto ng wikang Java at ipaliwanag kung paano ginagamit ang lahat ng mga klase, aklatan, lambda expression, input/output, atbp. sa tunay na pang-industriyang programming. Ang aklat ay batay sa mga modernong bersyon ng Java at naglalaman ng medyo simple ngunit kapaki-pakinabang na mga halimbawa para sa totoong trabaho. Ang huling seksyon ay nagsasalita tungkol sa paggamit ng Java nang direkta para sa mga web application at web server, isang bagay na hindi mo madalas makita sa mga aklat. Sa pamamagitan ng paraan, ang aklat na ito ay umiiral din sa bersyong Ruso ("Programming in Java", Mark Loy).

Mga kalamangan:

  • Mga modernong bersyon ng Java.
  • Mga halimbawa ng mga web application at server.

Bahid:

  • Mahirap para sa mga nagsisimula.

Walang katapusang klasiko

Ang mga librong isinulat ko tungkol sa ibaba ay maaaring tawaging sagradong teksto para sa mga nagsisimula at intermediate javists.

15. Epektibong Java, Joshua Bloch

Ito ay isang kayamanan, hindi isang libro, at nakatutok sa mga pangunahing prinsipyo ng wika mula sa isa sa mga may-akda nito, si Joshua Bloch. Malamang, nagamit mo na ang mga aklatan nito (sa Java Collection, halimbawa). Magpapareserba ako kaagad: ang mga kumpletong nagsisimula, maliban sa ilang prodigies-speedrunners, ay hindi kailangan ng Effective Java book. Una, mas mahusay na makabisado ang syntax at kumuha ng hindi bababa sa ilang kasanayan sa pagprograma, kumbaga, kunin ang iyong ulo sa paligid nito, at pagkatapos ay gawin ang paglikha ni Joshua Bloch. Ang aklat ay magiging kapaki-pakinabang para sa mga gustong tunay na maunawaan ang Java, bumuo ng tamang diskarte kapag nagprograma sa wikang ito, maunawaan hindi lamang kung paano ito gagawin, ngunit lahat ng iba pa na kailangang gawin nang eksakto sa ganoong paraan. At para din sa mga gustong malalim na maunawaan ang OOP (sa prinsipyo, ito ay magkakaugnay na mga bagay). Ang aklat na ito ay ang pinakamahusay na aklat-aralin sa Java sa konteksto ng object-oriented na diskarte sa programming.

Mga kalamangan:

  • Isang napakatalino na presentasyon ng materyal sa paksa ng OOP.
  • Ang pinakamahusay na mga kasanayan sa programming ay ibinigay.
  • Kilalang-kilala ng may-akda ang Java mula sa loob.

Bahid:

  • Mahirap para sa mga nagsisimula.

16. Java Philosophy, Bruce Eckel

Ang pamagat ng aklat na ito ay nagsasalita para sa sarili nito. Ito ay isa pang alpha at omega para sa lahat ng gustong malaman ang Java! Sa aklat na ito makakahanap ka ng mabuti at malinaw na mga halimbawa, at mula sa kanila ay magiging malinaw kung paano gumagana ang Java. Mahirap para sa akin na sabihin kung alin sa dalawang libro - "The Philosophy of Java" o "Effective Programming" - ang mas mahusay. Masasabi kong medyo mas palakaibigan si Eckel sa mga baguhan, habang si Bloch ay nangangailangan ng ilang karanasan. Una kong nabasa ang kabanata mula sa "Java Philosophy" noong nagsisimula pa lang akong matuto ng JavaRush (sa tingin ko ito ay nakalista bilang inirerekomenda sa isa sa mga unang antas). Tapos hindi siya bagay sa akin. Ngunit pagkatapos ng antas 10 o 12 - ito ay isang kanta! At, sasabihin ko, isang napaka-kapaki-pakinabang na kanta. Ibinalik ko ito mamaya, pagdating ko sa Effective Programming. Sasabihin ko ito: hayaan sina Bloch at Eckel na pag-usapan ang parehong bagay, ngunit sa magkaibang paraan, at magbigay ng magkaibang mga halimbawa.

Mga kalamangan:

  • Isang malalim na pagtatanghal ng mga prinsipyo ng Java mula sa isang propesyonal.
  • Ito ay magiging mabuti para sa mga lumilipat mula sa ibang mga wika - maraming mga paghahambing sa C++, halimbawa.
  • Para sa akin, maaari mong simulan ang pagbabasa nito sa antas 10, ngunit Eckel - ilang sandali.

Bahid:

  • Napakasamang mga pagsasalin ng Ruso.

Pangkalahatang Programming Books

Ang mga sumusunod na libro ay hindi direktang nauugnay sa Java, ngunit magiging kapaki-pakinabang ang mga ito sa nagsisimulang developer, dahil nakakatulong ang mga ito na bumuo ng pag-iisip ng programmer at maunawaan kung paano gumagana ang isang computer, ang mga pangunahing prinsipyo at konsepto ng programming, kung ano ang malinis na code at kung paano magsulat ito.

17. Mga Klasikong Problema sa Computer Science sa Java

Ang aklat na ito ni David Kopec ay maaaring isalin bilang "Mga Klasikal na Problema sa Computer Science sa Java". At ito ay inilaan para sa parehong mga may karanasan na mga developer at mga nagsisimula na alam ang isang programming language at nagsisimula nang harapin ang mga problema sa totoong mundo. O para sa mga interesado sa hindi karaniwang mga gawain upang bumuo ng pag-iisip ng programmer. O para sa mga gustong pagbutihin ang kanilang mga kakayahan at mahusay sa mga panayam. Ang ilang mga gawain ay tila hindi malulutas, ngunit ang mundo ng programming ay mas maliit kaysa sa tila. Malamang, may nakalutas na sa iyong hindi malulutas na problema. Sa kanyang aklat, nakolekta ni David Kopec ang pinakakapaki-pakinabang na mga solusyon, prinsipyo at algorithm. Ang Classic Computer Science Problems ay naglalaman ng 55 praktikal na halimbawa na sumasaklaw sa mga pinakabagong paksa: mga pangunahing algorithm, mga hadlang, artificial intelligence, atbp. Mga pangunahing paksa ng aklat:
  • Recursion, memorization at bit manipulation.
  • Paghahanap, graph at genetic algorithm.
  • Clustering (k-means method), neural network at mapagkumpitensyang paghahanap.
  • Mga kalamangan:

    • Lahat ng mga kapaki-pakinabang na algorithm at diskarte sa mga ito sa isang libro.
    • Mga halimbawa sa Java.

    Bahid:

    • Ang ilang mga halimbawa ay mahirap maunawaan ng mga nagsisimula.

    18. Tumungo Muna Matuto sa Code ni Eric Freeman

    Nabanggit ko na ang mga aklat ng Head First nang dalawang beses sa artikulong ito. Eto na yung pangatlo! Ito, tulad ng lahat ng mga libro sa serye, ay isinulat para sa mga ganap na nagsisimula, at nakatuon sa programming tulad nito. Kung naranasan mo na ang serye noon, kapag binuksan mo ang aklat na ito, madali mong makikilala ang istilo ng lagda ng Head First. Inirerekomenda ko ang aklat na ito kung kailangan mo ng tulong sa mga pangunahing konsepto ng programming sa isang masaya, madaling maunawaan na paraan.

    Mga kalamangan:

    • Nagbibigay ng pangkalahatang pag-unawa sa programming.

    Bahid:

    • Gumagamit ng mga halimbawa sa Python (dahil ito ay itinuturing na pinakamadaling wika para sa mga nagsisimula).

    19. Clean Code, Robert S. Martin

    Ang isang baguhan na programmer ay hindi binibigyang pansin ang estilo ng kanyang code. Siya ay higit na nakatuon sa paglaban sa mga pagkakamali. Gayunpaman, ang pagpapabuti ng iyong istilo ay napakahalaga para sa iyong potensyal na trabaho: ang isang taong hindi sumusunod sa malinis na code ay napakahirap makipagtulungan sa mga proyekto. Ang code nito ay mahirap basahin at panatilihin. Ipapakita sa iyo ng aklat na ito ang pagkakaiba sa pagitan ng mabuti at masamang code at ituturo sa iyo ang mga pangunahing panuntunan sa pagsulat ng malinis, nababasang code gamit ang pinakamahuhusay na kagawian. Magtanong sa isang pro, at malaki ang posibilidad na irerekomenda niya ang aklat na ito sa bawat gustong developer.

    Mga kalamangan:

    • Magandang halimbawa at tip para sa paggawa ng nababasang code.
    • Isa sa ilang mga libro ng uri nito.

    Bahid:

    • Ang may-akda minsan ay masyadong maingat.

    20. Code: Ang Lihim na Wika ng Computer Science, Charles Petzold

    Maaaring irekomenda ang aklat na ito sa parehong mag-aaral na interesado sa mga computer at isang programmer na may maraming taon ng karanasan na gustong mas maunawaan ang computer science. Nakita ko ang bersyong Ruso ng aklat na ito noong high school at naging inspirasyon ko. Ipinapaliwanag pa nito ang disenyo ng circuit gamit ang napakasimpleng mga halimbawa, at lahat ito ay nagsisimula sa mga manok at isang pangunahing flashlight. Sinasaklaw ng may-akda ang isang malawak na hanay ng mga paksa tulad ng kuryente, circuits, relay, binary system, logic, gate, microprocessors, code at iba pa upang unti-unting bumuo ng pag-unawa sa kung paano gumagana ang teknolohiya ng computer. Pagkatapos basahin ang aklat na ito, mauunawaan mo kung ano ang nasa likod ng mga pixel sa iyong desktop at kung ano ang nangyayari sa tuwing ginagamit mo ang iyong mga device.

    Mga kalamangan:

    • Malalim na sumisid sa pinakamababang antas ng hardware.

    Bahid:

    • Minsan ang pagsisid ay masyadong malalim :)

    21. Pag-crack sa Coding Interview, Gail Laakmann McDowell

    Ito ay isang napaka-kagiliw-giliw na libro para sa mga taong nagpaplanong maghanap ng trabaho bilang isang software developer sa malapit na hinaharap. Naglalaman ito ng malawak na hanay ng mga praktikal na tanong at solusyon na maaaring itanong sa iyo sa panahon ng isang pakikipanayam. Siyempre, dumadaloy ang lahat, nagbabago ang lahat. At nagbabago ang mga uso sa "pagsubok" ng developer. Gayunpaman, ang aklat na ito ay makakatulong sa newbie na maunawaan kung ano ang aasahan mula sa panayam. Gayunpaman, inirerekumenda kong pag-aralan ang kaalamang ito sa mga forum at komunidad ng Java.

    Mga kalamangan:

    • Paghahanda para sa Real World Programming Interviews.

    Bahid:

    • Hindi ito makakatulong nang walang karagdagang mga mapagkukunan.

    Algorithm at istruktura ng data

    Ang kaalaman sa mga algorithm ay tumutulong upang malutas ang mga problema sa pagbuo ng software nang mahusay at mahusay. Ang pag-alam kung paano pumili ng mga tamang istruktura ng data ay nakakatulong na mapabuti ang pagganap, bawasan ang mga gastos sa memorya, at magbigay ng mas matatag at mahusay na mga programa. At gayon pa man, kailangan mong kilalanin sila kahit papaano para makapasa sa mga panayam. Kaya nasa ibaba ang ilang kapaki-pakinabang na mga libro.

    22. Rocking Algorithm, Aditya Bhargava

    Isang napaka-interesante at medyo simpleng libro sa mga pangunahing kaalaman ng mga algorithm. Ipinapaliwanag nito ang mga sikat na algorithm tulad ng pag-uuri at paghahanap sa graphical na anyo. Ang mga aklat na tulad nito ay tumutulong sa iyong maunawaan ang kagandahan at pagiging kumplikado ng mga algorithm at mahalin ang mga ito nang buong puso. Ang libro ay may maraming mga larawan: mas gusto ng may-akda ang isang visual na diskarte sa mga paliwanag. Ang libro ay nahahati sa mga maikling seksyon na may iba't ibang mga halimbawa upang matiyak na ang bagong impormasyon ay hinihigop sa tamang sukat.

    Mga kalamangan:

    • Magandang paliwanag na may mga graphics.
    • Kawili-wili tungkol sa complex.

    Bahid:

    • Mga halimbawa sa Python.

    23. Panimula sa Algorithm, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein

    Introduction to Algorithms (Russian title "Algorithms: Construction and Analysis") ay isang napaka-matagumpay na libro tungkol sa mga algorithm para sa mga gusto ng pare-pareho at masusing presentasyon ng materyal. Ang lahat ng mga halimbawa sa aklat ay nakasulat sa tinatawag na pseudocode, iyon ay, hindi sa isang tunay na programming language, ngunit sa isang sintetikong isa na madaling maunawaan ng lahat. Bagama't ang aklat ay sinisingil bilang isang "panimula sa mga algorithm", ang mga paksang sakop ay napakalawak at ang mga konsepto ng mga istruktura ng data at mga algorithm ay naipaliwanag nang maayos.
    • Pag-uuri: Isang detalyadong pag-aaral ng iba't ibang algorithm ng pag-uuri gaya ng insertion sort, exchange sort, quick sort, merge sort, atbp.
    • Paghahanap: pasulong na paghahanap, paatras na paghahanap, binary na paghahanap at iba pa.
    • Puno: mga binary tree, pulang-itim na puno, AVL tree at iba pa.
    • Mga graph: graph traversal, shortest path search, minimum skeleton tree, atbp.
    • Dynamic na programming.
    Ngunit ang libro ay mayroon ding mga pagkukulang. Sa aking opinyon, ang Panimula ay masyadong nakatuon sa teoretikal na aspeto ng mga algorithm, ngunit kung minsan ay walang mga detalye tungkol sa kanilang praktikal na pagpapatupad. Ang orihinal ay nakasulat sa medyo simpleng Ingles (inirerekumenda ko ang Ingles na bersyon!).

    Mga kalamangan:

    • Isang mahusay na teoretikal na pagtatanghal ng pinakamahalagang algorithm para sa pag-uuri, paghahanap, mga puno, mga graph.
    • Madaling Ingles.

    Bahid:

    • Hindi sapat na pagsasanay, tumuon sa mga teoretikal na aspeto ng paksa.

    24. Think Data Structures: Algorithms and Information Retrieval in Java (Allen B. Downey)

    Ito ay isang kapaki-pakinabang na gabay sa paggamit ng mga istruktura ng data sa programming na may mga halimbawa sa Java. Nakatuon ang aklat sa pagsasanay, na tumutulong sa iyong mabilis na maunawaan kung paano ipatupad at gamitin ang mga algorithm at istruktura ng data sa mga totoong program. Ipinapaliwanag ng may-akda ang mga kumplikadong konsepto ng mga algorithm at istruktura ng data sa isang naa-access at nauunawaan na paraan, kaya kung mayroon kang hindi bababa sa mga pangunahing kasanayan sa programming, ang aklat na ito ay angkop para sa iyo. Ang bawat seksyon ay naglalaman ng panimula sa paksa, mga halimbawa, karagdagang paliwanag at pagsasanay upang pagsamahin ang teorya. Ang mas maganda ay ang bawat kabanata ay naglalaman ng mga problema sa disenyo na nagbibigay-daan sa mga mambabasa na ilapat ang kanilang natutunan upang lumikha ng kanilang sariling mga pagpapatupad ng mga algorithm at istruktura ng data.

    Mga kalamangan:

    • Maikling materyal na may kapaki-pakinabang na mga halimbawa.
    • Pagkakaroon ng mga gawain sa proyekto.

    Bahid:

    • Maaaring medyo mahirap para sa mga nagsisimula.
    • Hindi lahat ng paksa ay sinasaklaw sa pantay na lalim.

    25. Algorithms, Robert Sedgewick, Kevin Wayne

    Isa sa mga pinakatanyag na libro sa programming, na isinulat ng mga tunay na eksperto sa kanilang larangan, na nagpalaki ng higit sa isang henerasyon ng mga software engineer. Kung hindi ka natatakot sa isang masusing akademikong presentasyon at kumpletong pagsasawsaw sa paksa, kung handa ka nang tunay na maunawaan ang mga algorithm, pag-aralan ang mga ito minsan at para sa lahat, pag-aralan ang aklat na ito. Ito ay isang magandang pagpipilian para sa mga mag-aaral, guro at developer. Gayunpaman, para sa mga nagsisimula, maaaring tumagal ng dagdag na oras at pagsisikap upang maunawaan nang mabuti ang materyal sa aklat. Matagumpay na pinagsama ng mga may-akda ang teorya sa mga praktikal na halimbawa sa Java, na ginagawang mas madali para sa mga mambabasa na maunawaan ang mga kumplikadong konsepto.

    Mga kalamangan:

    • Malinaw at masinsinang presentasyon.
    • Maraming mga halimbawa sa Java.
    • Iba't ibang paksa: Sinasaklaw ng aklat ang halos lahat ng kailangan mong malaman tungkol sa mga algorithm.

    Bahid:

    • Labis na akademikong presentasyon.
    • Maaaring mahirap pag-aralan ang aklat nang mag-isa nang walang tamang suporta at
    Mga komento
    TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
    GO TO FULL VERSION