JavaRush /Blog Java /Random-PL /Najlepsze książki o Javie dla początkujących i nie tylko ...

Najlepsze książki o Javie dla początkujących i nie tylko (2023)

Opublikowano w grupie Random-PL
Jesteśmy przyzwyczajeni do szybkiego dostępu do informacji i równie szybkiego przyswajania. Wolimy pięciominutowe filmy od głębokich wykładów i krótkie artykuły od książek. Nie twierdzę, że dobra książka o programowaniu zastąpi jakikolwiek artykuł, to nieprawda. I na pewno nie zastąpi praktyki. Jednak dla mnie osobiście prawdziwe zrozumienie podstaw programowania przyszło po tym, jak rozwiązałem setki problemów na kursie programowania JavaRush i przeczytałem mnóstwo artykułów, zacząłem jednocześnie studiować teorię z książek i zagłębiać się w nie. Od dłuższego czasu poszukuję mojego osobistego „najlepszego samouczka Java dla początkujących”. Poniżej kilka książek o Javie, które w większym lub mniejszym stopniu przydały mi się na różnych etapach studiów.

Książki dla początkujących

W tej sekcji zebrałem książki, które będą Ci potrzebne, aby postawić pierwsze kroki w nauce programowania w Javie.

1. Najpierw kierujcie się Javą, Kathy Sierra i Bert Bates

Zacząłem od tej książki nie dlatego, że jest moją ulubioną, ale dlatego, że jest najprostsza. Ta książka, zdaniem wielu programistów, jest najlepszym samouczkiem Java od podstaw. Co więcej, jest naprawdę od zera, to znaczy jest odpowiedni dla tych, którzy dopiero zaczynają i nie do końca rozumieją, czym jest programowanie bestii. Przyznaję, przyszło to do mnie za późno. Chyba dlatego nie potrafiłem tego docenić. Bardzo przyjemnie się ją „po prostu czytało”, jednak długo szukałam w niej czegokolwiek konkretnego. Materiał przedstawiony jest obrazowo, ale raczej powierzchownie (bo od podstaw!), a wielu wątków i niezbędnych wyjaśnień po prostu nie ma. Ale znajomy, któremu go odziedziczyłem, był nim zachwycony i krzyknął, że to nie tylko najlepszy podręcznik do Javy dla początkujących, ale wręcz światowy majstersztyk i tak należy przedstawiać skomplikowany materiał.

Zalety:

  • Najlepszy tutorial Java od podstaw, dla kompletnych manekinów, napisany w żywym języku.
  • Fajne ilustracje i humor.
  • Wyjaśnienie na przykładach z życia.

Wady:

  • Dużo wody dla tych, którzy już weszli w temat.
  • Nie zawsze udane łamigłówki i ćwiczenia.

2. Java dla opornych, Barry Bird

Książka ta, muszę przyznać, przyszła do mnie już, gdy pracowałem jako programista. We wcześniejszej wersji artykułu o przydatnych książkach zadano mi w komentarzach pytanie na ten temat, a kiedy zobaczyłem ją z testerem w pracy, postanowiłem przyjrzeć się jej bliżej. Java for Dummies autorstwa Barry’ego Birda to interesująca książka dla początkujących, którzy chcą skorzystać z kilku zasobów, które pomogą im w nauce. To nie jest poradnik dla początkujących, ale raczej pierwszy podręcznik do języka Java. Najefektywniej jest uczyć się go równolegle z lekcjami krok po kroku (jak w JavaRush) i (wymagane!) od razu utrwalić zdobytą wiedzę w praktyce. Na podstawie prezentacji od razu rozpoznałem w autorze nauczyciela, gdyż miejscami zatrzymuje się w miejscach nieoczekiwanych na pierwszy rzut oka i szczegółowo analizuje poruszane zagadnienia. To nie przypadek: na te pytania jego uczniowie najczęściej się potykali. Ale niektóre tematy są poruszane powierzchownie... Jest to jednak książka dla początkujących, nie należy oczekiwać od niej głębi. Powiedzmy, że pierwsze dwa rozdziały są dobre dla początkujących, OOP (rozdział 3) jest lepiej przestudiowany w innej książce, ale rozdziały 4 (zaawansowane techniki programowania - wyjaśnienia, jak używać klas i metod, uruchamianie kolekcji, wielowątkowość, obsługa wyjątków) i 5 (wskazówki dotyczące unikania błędów) Uważam za bardzo udane i przydatne. Co więcej, Java For Dummies jest łatwa do odczytania, pełna kolorowych i zabawnych przykładów. Można ją łatwo przeczytać w dowolnym miejscu w drodze lub przed pójściem spać. Jeśli oczywiście odpowiada Ci styl autora. I pamiętaj: żadna książka na świecie nie zmieni Cię w programistę. Tylko praktyka może. Najlepsze książki o Javie dla początkujących i nie tylko (2023) - 1

Zalety:

  • Łatwy język.
  • Rozsądne rady i dobre wprowadzenie do szeregu tematów (rozdziały 1, 2, 4).
  • Dobre przykłady.

Wady:

  • Nie wszystkie tematy są równie dobrze przedstawione.
  • Nie każdemu spodoba się styl autora.

3. Java: Podstawy programowania dla początkujących, Nathan Clark

Kolejna książka dla czytelników z zerowym doświadczeniem w programowaniu. Powiedziałbym, że jego główną zaletą jest etapowość. Całkiem dobrze wyjaśnia punkty, które zwykle sprawiają trudności osobom, które mają do czynienia z programowaniem po raz pierwszy. Tutaj dowiesz się jak wybrać IDE i jak napisać swój pierwszy program. Książka wyjaśnia, czym są Java Development Kit i Java Runtime Environment oraz podaje przykłady każdego fragmentu kodu. Ale… nie ma rosyjskiego tłumaczenia tej książki, dlatego polecam ją tym, którzy znają angielski przynajmniej na poziomie B1. Swoją drogą, każdy programista musi znać angielski na tym poziomie, żeby można było upiec dwie pieczenie na jednym ogniu, ucząc się Javy z anglojęzycznej książki. W tym artykule jest wystarczająco dużo takich książek. Najlepsze książki o Javie dla początkujących i nie tylko (2023) - 2

Zalety:

  • Płynne wprowadzenie do programowania i podstawowych funkcji języka Java.
  • Kolejność prezentacji.

Wady:

  • Nie ma dogłębnego wyjaśnienia koncepcji programowania obiektowego, więc niektóre praktyczne przykłady mogą być mylące.
  • Nie ma tłumaczenia na język rosyjski.

4. Myśl w Javie: jak myśleć jak informatyk, Allen Downey i Chris Mayfield

Kolejna ciekawa książka dostępna w języku angielskim. Jak zauważają autorzy, głównym celem książki jest pomoc czytelnikom w rozwijaniu umiejętności myślenia niezbędnych do rozwiązywania problemów nieodłącznie związanych z informatyką. Książka przeznaczona jest dla początkujących, dlatego autorzy zaczynają od podstaw, które mogą być zrozumiałe przez osoby niemające żadnego doświadczenia w programowaniu ani znajomości języka Java. Jest napisany prosto i może być przydatny dla studentów lub samouków, którzy chcą opanować programowanie i rozwinąć umiejętności myślenia algorytmicznego. Podobnie jak wiele innych, książka zaczyna się od wprowadzenia do OOP. Każdy rozdział zawiera słownictwo i sekcje ćwiczeń wzmacniających teorię i doskonalących umiejętności programowania. Najlepsze książki o Javie dla początkujących i nie tylko (2023) - 3

Zalety:

  • Lekko i przyjemnie się czyta.
  • Książka przedstawia złożone koncepcje programistyczne w przystępny i łatwy do zrozumienia sposób.
  • Przyzwoite przykłady i ćwiczenia.

Wady:

  • Brak podejścia krok po kroku.
  • Niektórzy czytelnicy mogą pozostać z pytaniami po niektórych rozdziałach, ponieważ nie zawsze znajdują się tam szczegółowe wyjaśnienia niektórych tematów.

5. Jawa. Przewodnik dla początkujących, Herbert Schildt

Po przejrzeniu tego podręcznika pomyślałem, że będzie on dobry dla tych, którzy lubią bardziej tradycyjne przedstawienie materiału niż w Headfirst, ale też szukają tutoriala od zera. W niektórych miejscach prezentacja w książce jest bardzo szczegółowa, przypominając rozszerzoną i przetłumaczoną dokumentację z dobrymi przykładami wizualnymi. Czasami, jak u mnie, autor przekracza granicę i zaczyna za dużo przeżuwać, czytanie staje się nudne… i nagle – salto – i niemal natychmiast pomijane jest jakieś dość skomplikowane miejsce, a ty jesteś całkowicie zdezorientowany, próbując zrozumieć, co i gdzie Przegapiłeś. Jednak takich miejsc w książce nie jest zbyt wiele, a znam osoby, które uważają, że Przewodnik dla początkujących to najlepszy poradnik Java dla tych, którzy jeszcze nic nie wiedzą. Osobiście książka wydała mi się nierówna. Powiedzmy, że zaczynam sortować kolekcje i zamiast ludzkich wyjaśnień powierzają mi zadanie samodzielnego stworzenia zestawu na podstawie tablic. Fajny problem, ale najpierw chciałbym lepiej zrozumieć, jakie są kolekcje standardowe! Choć książka ta, podobnie jak poprzednia, uznawana jest za podręcznik dla początkujących, z mojego doświadczenia jako nauczyciela wynika, że ​​sprawdza się ona tylko w połączeniu z innymi materiałami: dla miłośnika nauk humanistycznych nie wszystko będzie proste i jasne. „Poradnik dla początkujących” jest odpowiedni dla kogoś, kto jakimś cudem studiował programowanie (np. na uniwersytecie), dawno temu zarzucił, a jednocześnie podoba mu się styl prezentacji autora. Szczególnie cieszy fakt, że podręcznik jest stale aktualizowany i obejmuje funkcje Java 8, a obecne wydanie (dziesiąte) uwzględnia JDK 9 i JDK 10. Najlepsze książki o Javie dla początkujących i nie tylko (2023) - 4

Zalety:

  • Tradycyjna, przemyślana prezentacja podstaw.
  • Dobre przykłady.

Wady:

  • Są skoki od „zbyt przeżutego” do „powiedzianego mimochodem”
  • Miejscami jest nudno.
Nawiasem mówiąc, Herbert Schildt ma inną słynną książkę o programowaniu - „Java. The Complete Guide”. To zupełnie inny podręcznik, bardziej fundamentalny. Przejdźmy do tego.

Poradniki dla osób kontynuujących lub zaczynających od nowa

Poniższe książki najlepiej nadają się dla tych, którzy mają już pewną wiedzę na temat programowania i chcą zagłębić się w Javę lub zacząć dokładniej ćwiczyć. Istnieją podręczniki, podręczniki i samouczki dotyczące nowych lub stosunkowo nowych funkcji Java, z którymi ludzie zwykle nie zapoznają się od razu, a także książki o Androidzie (a dokładniej jedna książka o Androidzie).

6. Jawa. Kompletny przewodnik, Herbert Shildt

Przyznaję się: kiedyś ściągnąłem tę książkę z Internetu, żeby ją ocenić, a potem kupić lub nie. To nie żart, 1300 stron tekstu! A cena jest nie mniej imponująca niż objętość. Podobnie postąpiłem z dwutomową „Biblioteką Profesjonalisty” Kay Horstmann (więcej o tym poniżej). Patrząc w przyszłość powiem, że wybrałem to drugie. Dlaczego? Ponieważ w książce Java. Kompletny przewodnik” Widziałem te same niedociągnięcia, co w „Przewodniku dla początkujących”. Czasem wyjaśnienia są przeżuwane, czasem pogniecione, ale jednocześnie nie tylko pogniecione, ale jakoś gadatliwie pogniecione. Być może taki jest styl autorki i myślę, że komuś się spodoba, a raczej zgodnie z jego tokiem myślenia. Ogólnie rzecz biorąc, Java 8: The Definitive Guide to dobry podręcznik do języka Java. Ale osobiście jeszcze bardziej podobało mi się przedstawienie tych samych rzeczy w innej książce. Najlepsze książki o Javie dla początkujących i nie tylko (2023) – 5

Zalety:

  • Kompletny przewodnik. Wydaje się, że są wszystkie tematy, które powinien znać początkujący, i nie tylko początkujący.
  • Szczegółowe wyjaśnienia.

Wady:

  • Dużo wody (ale niektórym może się to spodobać!).
  • Tłumaczenie rosyjskie nie jest najlepsze.

7. Jawa. Biblioteka profesjonalisty, Kay S. Horstmann, Harry Cornell

Książki Schildta i Horstmanna są często porównywane do siebie. Zarówno jeden, jak i drugi mają wiernych fanów. Dla mnie dwutomowa książka Horstmanna jest najlepszym podręcznikiem o Javie. Stała się dla mnie podręcznikiem na poziomie początkującym i średniozaawansowanym JavaRush. Kiedy nie rozumiałem jakiegoś tematu, najczęściej zwracałem się do Horstmanna, a on mi wyjaśnił wiele rzeczy. Książka omawia wszystko, od składni po programowanie wielowątkowe, lokalizację programów i pracę z XML. I niech Was nie odstraszy nazwa „Biblioteka profesjonalistów” (to mnie przestraszyło), podstawy są omówione całkiem nieźle. Ponadto warto ją okresowo czytać ponownie, aby odświeżyć i uporządkować swoją wiedzę.

Zalety:

  • Przy zaskakującej liczbie stron jest mało wody (w przeciwieństwie do Schildta).
  • Zawiera wszystko, czego potrzebują początkujący.
  • Rozszerza Javę 8, uwzględnia zmiany w JDK 9, 10 i 11.
  • Dobra prezentacja tematów dotyczących kolekcji i rodzajów.
  • Dobrze komponuje się z JavaRush. Przejdź do tematu, rozwiąż problemy, prędzej czy później czegoś nie zrozumiesz - obejrzyj Horstmanna, spróbuj ponownie.

Wady:

  • Niektórzy mogą uznać książkę za suchą.
  • Żadnej praktyki.
  • Tłumaczenie rosyjskie z błędami.

8. Java 8 w akcji: lambdy, strumienie i programowanie w stylu funkcjonalnym

Wraz z ósmą wersją w świecie Java pojawiła się nowa funkcjonalność, tak ważna i różniąca się od tego, co było wcześniej, że wskazane jest studiowanie tych tematów oddzielnie od wszystkiego innego. Co więcej: do tej pory nie było jeszcze ważniejszej aktualizacji językowej. Przed nami więc Java 8 w akcji, ciekawy podręcznik o Javie 8. Warto od razu zaznaczyć, że jest on przeznaczony dla tych, którzy znają już podstawy „tylko” Javy. To, co czyni tę książkę tak dobrą, to fakt, że zawiera tak wiele różnorodnych i przydatnych problemów praktycznych. Przykłady obejmują zarówno „poprawne”, jak i „niepoprawne” próbki kodu. Najważniejsze to nie mylić.

Zalety:

  • Zorientowany na praktykę.
  • Pokazuje różnicę pomiędzy poprawnym i niepoprawnym kodem.

Wady:

  • Aby uzyskać głębsze zrozumienie podstaw języka Java, wymagane są dodatkowe zasoby.

9. Core Java dla niecierpliwych (wydanie trzecie) lub Java SE 9. Kurs podstawowy, Kay Horstmann

W oryginale książka ta nazywa się Core Java for the Imcierped, czyli „Java Core dla niecierpliwych”. Nie wiem dlaczego nie uwzględniono tego w tłumaczeniu. Moim zdaniem pomogłoby to książce nie zgubić się wśród rówieśników. Istnieje tłumaczenie drugiego wydania książki na język rosyjski, a na język angielski jest już trzecie wydanie, zaktualizowane do wersji Java 17. Książka jest zorganizowana w formie szybkiego podręcznika i bardzo wygodnie jest znaleźć odpowiedź na pytanie konkretne pytanie, jeśli o czymś zapomniałeś lub programowałeś wcześniej w innych językach. Szczególnie podobało mi się to, że teksty są bardzo krótkie, w zasadzie bez żucia i wody. Książka zawiera dobry opis wyrażeń lambda, strumieni wejścia/wyjścia i modułów. Jednak ta książka nie wyjaśni, czym jest zmienna lub pętla. Ale są jeszcze, o czym już wspomniałem, podstawowe struktury, kolekcje, adnotacje, generyczne, logowanie, wielowątkowość - wszystko, z czym będziesz pracować w praktyce. Szczerze mówiąc, bardzo podoba mi się ta książka i nawet teraz czasami do niej zaglądam. Pamiętaj tylko, że ta książka nie jest odpowiednia dla tych, którzy nie mają zielonego pojęcia o programowaniu. Jest to bardziej prawdopodobne dla tych, którzy uczyli się już innego języka lub tej samej Javy, ale przez długi czas i nie do końca.

Zalety:

  • Krótkie bloki informacyjne. Wszystko jest do rzeczy.
  • Nie ma zbędnych tematów.
  • Bardzo dobry wybór aktualnych tematów do nauki dla początkujących programistów Java.
  • Udane przykłady.

Wady:

  • Książka nie jest odpowiednia dla osób rozpoczynających naukę programowania od zera.

10. Jawa. Podręcznik programisty, Benjamin J. Evans, David Flanagan

Dobry, uniwersalny podręcznik, alternatywa dla książek Horstmanna. Zawiera informacje przydatne zarówno dla początkujących, jak i programistów Java, którzy kontynuują naukę programowania. Najnowsze wydanie w chwili pisania tego wyrażenia (siódme) oparte jest na Javie 11. Książka nie jest obszerna, jest w niej wiele przykładów, omawiane jest API Java i najlepsze praktyki programistyczne. Książkę czyta się łatwo i można z niej poznać podstawy języka, przydatne techniki programowania, a nawet nowe trendy w Javie.

Zalety:

  • Krótkie i dobre podsumowanie.
  • Jest wszystko, czego potrzebuje początkujący programista.
  • Dobry opis nowoczesnych narzędzi.
  • Udane przykłady.

Wady:

  • Nie zawsze istnieje odpowiednie tłumaczenie terminologii na język rosyjski.

11. System modułów Java, Nikolay Parlog

Książka ta jest dostępna w języku angielskim i rosyjskim. Jest to bardzo szczegółowy przewodnik po modułowym systemie Java. Autor przekonuje, że znacznie łatwiej jest stworzyć niezawodną i bezpieczną aplikację, jeśli kod jest spakowany w zgrabne bloki. Moduły w Javie są stosunkowo nowym narzędziem, zasadnicze zmiany w architekturze dotknęły rdzeń Javy dopiero od wersji 9. I choć projektów z modułami jest coraz więcej, to są ludzie, którzy są przyzwyczajeni do pracy w staroświecki sposób i nic o nich nie wiedzą ciekawe innowacje. Po przeczytaniu tej książki zrozumiesz, jak monitorować interakcję różnych plików JAR i łatwo znajdować brakujące zależności. Jeśli poważnie myślisz o modułowych projektach w języku Java lub potrzebujesz nauczyć się modułów do pracy, zapoznaj się z tą książką.

Zalety:

  • Najpełniejszy opis zalet systemu modułowego.
  • Świetne przykłady i strategie migracji do modułów.

Wady:

  • Ma niewiele opisów syntaktycznych, co jest trudne dla początkujących.

12. Nowoczesna Java w działaniu: Lambdy, strumienie, programowanie funkcjonalne i reaktywne

Mimo że Java istnieje już od wielu lat, język ten stale zyskuje nowe możliwości. Oczywiście wszyscy jesteśmy ludźmi i programiści czasami ignorują nowe funkcje i podejścia i niechętnie wdrażają je w projektach Java. Książki takie jak Modern Java in Action mają pomóc w rozwiązaniu tego problemu. W tym przewodniku szczegółowo omawiamy tematy najczęściej poruszane w krótkich szkoleniach mentorskich. Dodam, że zazwyczaj takie szkolenie trwa 1-3 dni, a informacje tam zawarte są bardzo skoncentrowane. Początkujący programiści po prostu toną w nowych informacjach i ich nie przyswajają. Ta książka poprowadzi Cię krok po kroku od wyrażeń lambda do odwołań do metod, interfejsów funkcjonalnych i wątków, a jeśli potrafisz, dokładnie to opracujesz.

Zalety:

  • Książka ta zawiera wszystkie nowoczesne funkcje języka Java, dlatego jest bardzo przydatna.
  • Spójna prezentacja złożonych koncepcji.
  • Autorzy porównują nowe trendy z tradycyjnymi. Dlatego książkę tę można polecić nawet początkującym.

Wady:

  • Dla tych, którzy już coś wiedzą na ten temat, książka może wydawać się nieco rozwlekła.

13. Najpierw kieruj się rozwojem Androida

Java jest rodzimym językiem Androida. Dlatego jedną z najpopularniejszych opcji rozpoczęcia tworzenia aplikacji w tym języku jest stworzenie aplikacji na Androida. Książka ta (istnieje rosyjskie tłumaczenie „Programowanie Head First dla Androida”) jest kolejną książką z serii Head First. Zatem cechy rodzinne serii są nieodłącznie związane z tym podręcznikiem. Oznacza to, że tutaj znajdziesz wiele zdjęć, łatwy styl, dużą liczbę ćwiczeń bez poważnego zagłębiania się w istotę. Oznacza to, że jeśli chcesz w pełni zrozumieć tworzenie aplikacji na Androida, być może będziesz musiał przeprowadzić dodatkowe badania i sięgnąć głębiej do źródeł. Jeśli jednak chcesz szybko rozpocząć programowanie dla tego systemu to jest to miejsce dla Ciebie.

Zalety:

  • Prosty styl, zdjęcia, różnorodne zadania i ćwiczenia projektowe, które mogą aktywnie zaangażować czytelnika w proces uczenia się.
  • Prostota i dostępność: Autorzy starają się wyjaśnić złożone koncepcje prostymi słowami, ułatwiając zrozumienie początkującym.

Wady:

  • Przestarzałość: szybkie zmiany technologiczne w świecie programowania i Androida mogą spowodować, że książka nie będzie już zawierać aktualnych podejść i narzędzi.
  • Niektóre tematy są traktowane zbyt powierzchownie.

14. Nauka języka Java: wprowadzenie do programowania w świecie rzeczywistym w języku Java

Od razu zaznaczę, że książka ta nie jest przeznaczona dla początkujących. Będziesz go potrzebować, jeśli znasz Core Java przynajmniej na poziomie podstawowym i potrafisz pisać proste aplikacje. Jeśli tak, ta książka pomoże ci zrozumieć różne złożone koncepcje języka Java i wyjaśni, w jaki sposób wszystkie te klasy, biblioteki, wyrażenia lambda, wejścia/wyjścia itp. są wykorzystywane w prawdziwym programowaniu przemysłowym. Książka oparta jest na współczesnych wersjach Javy i zawiera dość proste, ale przydatne przykłady do prawdziwej pracy. Ostatnia sekcja mówi o bezpośrednim używaniu języka Java w aplikacjach internetowych i serwerach internetowych, co nie zdarza się często w książkach. Nawiasem mówiąc, ta książka istnieje również w wersji rosyjskiej („Programowanie w Javie”, Mark Loy).

Zalety:

  • Nowoczesne wersje Javy.
  • Przykłady aplikacji internetowych i serwerów.

Wady:

  • Trudne dla początkujących.

Ponadczasowa klasyka

Książki, o których piszę poniżej, można nazwać świętymi tekstami dla początkujących i średniozaawansowanych jawistów.

15. Efektywna Java, Joshua Bloch

To skarb, a nie książka, skupiający się na podstawowych zasadach języka autorstwa jednego z jej autorów, Joshuy Blocha. Najprawdopodobniej korzystałeś już z jego bibliotek (na przykład w kolekcji Java). Zaraz zrobię rezerwację: zupełnie początkujący, z wyjątkiem niektórych cudownych speedrunnerów, nie potrzebują książki Efektywna Java. Na początek lepiej opanować składnię i zdobyć przynajmniej trochę praktyki programistycznej, że tak powiem, oswoić się z tym, a następnie zająć się twórczością Joshuy Blocha. Książka będzie przydatna dla tych, którzy chcą naprawdę zrozumieć Javę, wypracować sobie właściwe podejście do programowania w tym języku, zrozumieć nie tylko jak to zrobić, ale wszystko inne, co trzeba zrobić właśnie w ten sposób. A także dla tych, którzy chcą dogłębnie zrozumieć OOP (w zasadzie są to rzeczy ze sobą powiązane). Książka ta jest najlepszym podręcznikiem języka Java w kontekście obiektowego podejścia do programowania.

Zalety:

  • Genialna prezentacja materiału na temat OOP.
  • Przedstawione są najlepsze praktyki programistyczne.
  • Autor zna Javę bardzo dobrze od podszewki.

Wady:

  • Trudne dla początkujących.

16. Filozofia Java, Bruce Eckel

Tytuł tej książki mówi sam za siebie. To kolejna alfa i omega dla wszystkich chcących poznać Javę! W tej książce znajdziesz dobre i jasne przykłady, dzięki którym będzie jasne, jak działa Java. Trudno mi powiedzieć, która z dwóch książek – „Filozofia Javy” czy „Efektywne programowanie” – jest lepsza. Powiedziałbym, że Eckel jest nieco bardziej przyjazny początkującym, natomiast Bloch wymaga pewnego doświadczenia. Po raz pierwszy przeczytałem rozdział z „Filozofii Java”, kiedy dopiero zaczynałem uczyć się JavaRush (myślę, że był wymieniony jako zalecany na jednym z wczesnych poziomów). Wtedy mi nie odpowiadała. Ale po poziomie 10 lub 12 – to była piosenka! I powiem, bardzo przydatna piosenka. Wróciłem do tego później, gdy doszedłem do Efektywnego Programowania. Powiem tak: niech Bloch i Eckel mówią o tym samym, ale w inny sposób i podają różne przykłady.

Zalety:

  • Dogłębna prezentacja zasad Java od profesjonalisty.
  • Będzie dobry dla tych, którzy przechodzą z innych języków - jest wiele porównań na przykład z C++.
  • Wydaje mi się, że można zacząć czytać ją na poziomie 10, ale Eckel – trochę później.

Wady:

  • Bardzo nieudane tłumaczenia z języka rosyjskiego.

Ogólne książki o programowaniu

Poniższe książki nie są bezpośrednio związane z Javą, ale przydadzą się początkującemu programiście, ponieważ pomogą rozwinąć myślenie programisty i zrozumieć, jak działa komputer, główne zasady i koncepcje programowania, czym jest czysty kod i jak pisać To.

17. Klasyczne problemy informatyki w Javie

Książkę Davida Kopeca można przetłumaczyć jako „Klasyczne problemy informatyki w Javie”. Jest przeznaczony zarówno dla doświadczonych programistów, jak i tych początkujących, którzy znają język programowania i już zaczynają stawiać czoła realnym problemom. Lub dla tych, którzy interesują się niestandardowymi zadaniami rozwijającymi myślenie programistyczne. Lub dla tych, którzy chcą doskonalić swoje umiejętności i dobrze wypaść na rozmowach kwalifikacyjnych. Niektóre zadania wydają się nie do pokonania, ale świat programowania jest mniejszy niż się wydaje. Najprawdopodobniej ktoś już rozwiązał Twój nierozwiązywalny problem. W swojej książce David Kopeć zebrał najbardziej przydatne gotowe rozwiązania, zasady i algorytmy. Classic Computer Science Problems zawiera 55 praktycznych przykładów obejmujących najbardziej aktualne tematy: podstawowe algorytmy, ograniczenia, sztuczna inteligencja itp. Główne tematy książki:
  • Rekurencja, zapamiętywanie i manipulacja bitami.
  • Algorytmy wyszukiwania, wykresu i genetyczne.
  • Klastrowanie (metoda k-średnich), sieci neuronowe i wyszukiwanie konkurencyjne.
  • Zalety:

    • Wszystkie przydatne algorytmy i podejścia do nich w jednej książce.
    • Przykłady w Javie.

    Wady:

    • Niektóre przykłady są trudne do zrozumienia dla początkujących.

    18. Najpierw głowa do głowy, naucz się kodować, Eric Freeman

    O książkach Head First wspomniałem już dwukrotnie w tym artykule. Oto trzeci! Ta, podobnie jak wszystkie książki z tej serii, jest napisana dla absolutnie początkujących i poświęcona programowaniu jako takiemu. Jeśli zetknąłeś się już z tą serią, po otwarciu tej książki z łatwością rozpoznasz charakterystyczny styl Head First. Polecam tę książkę, jeśli potrzebujesz pomocy w zakresie kluczowych koncepcji programowania w zabawny i łatwy do zrozumienia sposób.

    Zalety:

    • Zapewnia ogólną wiedzę na temat programowania.

    Wady:

    • Używa przykładów w Pythonie (ponieważ jest on uważany za najłatwiejszy język dla początkujących).

    19. Czysty kod, Robert S. Martin

    Początkujący programista nie przywiązuje dużej wagi do stylu swojego kodu. Dużo bardziej skupia się na walce z błędami. Jednak doskonalenie swojego stylu jest bardzo ważne dla potencjalnej pracy: z osobą, która nie trzyma się czystego kodu, bardzo trudno jest pracować nad projektami. Jego kod jest trudny do odczytania i utrzymania. Ta książka pokaże Ci różnicę między dobrym i złym kodem oraz nauczy Cię podstawowych zasad pisania czystego, czytelnego kodu przy użyciu najlepszych praktyk. Zapytaj profesjonalistę, a jest duża szansa, że ​​gorąco poleci tę książkę każdemu początkującemu programiście.

    Zalety:

    • Dobre przykłady i wskazówki dotyczące tworzenia czytelnego kodu.
    • Jedna z nielicznych książek tego typu.

    Wady:

    • Autor czasami jest zbyt skrupulatny.

    20. Kod: Sekretny język informatyki, Charles Petzold

    Książkę tę można polecić zarówno uczniowi zainteresowanemu komputerami, jak i programiście z wieloletnim doświadczeniem, chcącemu lepiej zrozumieć informatykę. Na rosyjską wersję tej książki natknęłam się jeszcze w szkole średniej i bardzo mnie zainspirowała. Wyjaśnia nawet projektowanie obwodów na bardzo prostych przykładach, a wszystko zaczyna się od kurczaków i podstawowej latarki. Autor porusza szeroki zakres tematów, takich jak elektryczność, obwody, przekaźniki, układ binarny, logika, bramki, mikroprocesory, kod i inne, aby stopniowo budować zrozumienie działania technologii komputerowej. Po przeczytaniu tej książki zrozumiesz, co kryje się za pikselami na Twoim pulpicie i co dzieje się za każdym razem, gdy korzystasz z Twoich urządzeń.

    Zalety:

    • Głęboko zanurz się w najniższy poziom sprzętu.

    Wady:

    • Czasami nurkowanie jest zbyt głębokie :)

    21. Wywiad o łamaniu kodowania, Gail Laakmann McDowell

    Jest to bardzo ciekawa książka dla tych, którzy w najbliższej przyszłości planują szukać pracy jako programista. Zawiera szeroką gamę praktycznych pytań i rozwiązań, które możesz zadać podczas rozmowy kwalifikacyjnej. Oczywiście wszystko płynie, wszystko się zmienia. Zmieniają się trendy w „testowaniu” programistów. Jednakże ta książka pomoże początkującemu zrozumieć, czego się spodziewać po rozmowie kwalifikacyjnej. Zalecam jednak odświeżenie tej wiedzy na forach i w społecznościach Java.

    Zalety:

    • Przygotowanie do rozmów kwalifikacyjnych dotyczących programowania w świecie rzeczywistym.

    Wady:

    • Bez dodatkowych źródeł nie pomoże.

    Algorytmy i struktury danych

    Znajomość algorytmów pomaga efektywnie i optymalnie rozwiązywać problemy związane z tworzeniem oprogramowania. Umiejętność wyboru odpowiednich struktur danych pomaga poprawić wydajność, zmniejszyć koszty pamięci i zapewnić bardziej stabilne i wydajne programy. A przecież trzeba je chociaż znać, żeby przejść rozmowę kwalifikacyjną. Poniżej znajduje się kilka przydatnych książek.

    22. Algorytmy kołysania, Aditya Bhargava

    Bardzo ciekawa i dość prosta książka o podstawach algorytmów. Wyjaśnia w formie graficznej popularne algorytmy, takie jak sortowanie i wyszukiwanie. To właśnie takie książki pomagają zrozumieć piękno i złożoność algorytmów i pokochać je całym sercem. W książce jest dużo ilustracji: autor preferuje wizualne podejście do objaśnień. Książka podzielona jest na krótkie rozdziały z różnymi przykładami, aby zapewnić przyswajanie nowych informacji w odpowiednich proporcjach.

    Zalety:

    • Dobre wyjaśnienia z grafiką.
    • Ciekawe co z kompleksem.

    Wady:

    • Przykłady w Pythonie.

    23. Wprowadzenie do algorytmów, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein

    Wprowadzenie do algorytmów (rosyjski tytuł „Algorithms: Construction and Analysis”) to bardzo udana książka o algorytmach dla tych, którzy lubią spójne i dokładne przedstawienie materiału. Wszystkie przykłady zawarte w książce są napisane w tzw. pseudokodzie, czyli nie w prawdziwym języku programowania, ale w syntetycznym, intuicyjnie zrozumiałym dla każdego języku. Chociaż książkę reklamuje się jako „wprowadzenie do algorytmów”, poruszane w niej tematy są bardzo szerokie, a koncepcje struktur danych i algorytmów są dość dobrze wyjaśnione.
    • Sortowanie: szczegółowe badanie różnych algorytmów sortowania, takich jak sortowanie przez wstawianie, sortowanie przez wymianę, sortowanie szybkie, sortowanie przez scalanie itp.
    • Wyszukiwanie: wyszukiwanie do przodu, wyszukiwanie do tyłu, wyszukiwanie binarne i inne.
    • Drzewa: drzewa binarne, drzewa czerwono-czarne, drzewa AVL i inne.
    • Wykresy: przechodzenie po grafie, wyszukiwanie najkrótszej ścieżki, minimalne drzewo szkieletowe itp.
    • Programowanie dynamiczne.
    Ale książka ma też swoje wady. Moim zdaniem Wstęp zbytnio skupia się na teoretycznej stronie algorytmów, ale czasem brakuje w nim szczegółów dotyczących ich praktycznej implementacji. Oryginał napisany jest dość prostym angielskim (polecam wersję angielską!).

    Zalety:

    • Doskonała prezentacja teoretyczna najważniejszych algorytmów sortowania, wyszukiwania, drzew, wykresów.
    • Łatwy angielski.

    Wady:

    • Za mało praktyki, skup się na teoretycznych aspektach tematu.

    24. Myśl o strukturach danych: algorytmy i wyszukiwanie informacji w Javie (Allen B. Downey)

    To przydatny przewodnik po używaniu struktur danych w programowaniu z przykładami w Javie. Książka skupia się na praktyce, która pozwala szybko zrozumieć, jak implementować i wykorzystywać algorytmy i struktury danych w rzeczywistych programach. Autor w przystępny i zrozumiały sposób wyjaśnia złożone pojęcia algorytmów i struktur danych, więc jeśli posiadasz przynajmniej podstawowe umiejętności programowania, ta książka będzie dla Ciebie odpowiednia. Każdy rozdział zawiera wprowadzenie do tematu, przykłady, dodatkowe wyjaśnienia i ćwiczenia utrwalające teorię. Szczególnie miłe jest to, że każdy rozdział zawiera problemy projektowe, które pozwalają czytelnikom zastosować zdobytą wiedzę do tworzenia własnych implementacji algorytmów i struktur danych.

    Zalety:

    • Zwięzły materiał z przydatnymi przykładami.
    • Dostępność zadań projektowych.

    Wady:

    • Może być trochę trudne dla początkujących.
    • Nie wszystkie tematy są omówione z równą szczegółowością.

    25. Algorytmy, Robert Sedgewick, Kevin Wayne

    Jedna z najsłynniejszych książek o programowaniu, napisana przez prawdziwych ekspertów w swojej dziedzinie, którzy wychowali więcej niż jedno pokolenie inżynierów oprogramowania. Jeśli nie przeraża Cię dogłębna prezentacja akademicka i całkowite zanurzenie się w temacie, jeśli jesteś gotowy, aby naprawdę zrozumieć algorytmy, przeanalizować je raz na zawsze, przeczytaj tę książkę. Jest to dobry wybór dla uczniów, nauczycieli i programistów. Jednak w przypadku początkujących dobre zrozumienie materiału zawartego w książce może zająć więcej czasu i wysiłku. Autorzy z powodzeniem łączą teorię z praktycznymi przykładami w języku Java, co ułatwia czytelnikom zrozumienie skomplikowanych pojęć.

    Zalety:

    • Przejrzysta i rzetelna prezentacja.
    • Dużo przykładów w Javie.
    • Różnorodność tematów: Książka obejmuje prawie wszystko, co musisz wiedzieć o algorytmach.

    Wady:

    • Nadmierna prezentacja akademicka.
    • Samodzielne studiowanie książki może być trudne bez odpowiedniego wsparcia i
    Komentarze
    TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
    GO TO FULL VERSION