Szukam jakiejś książki, którą powinien znać każdy Senior Java Developer.
Jak uczyłem się podstaw Javy, to czytałem: "Java. Podstawy" (najfajniejsza, najbardziej przystępna), "Thinking in Java" (bardziej zaawansowana, ale toporna), "Head First Java" (dla mnie za bardzo komiksowa), "Analiza i projektowanie obiektowe. Rusz głową!" (kolejna od Head First, doceniam, ciekawa, mimo że komiksowa, to do tematu projektowania pasowało - w ogóle mało książek na ten temat), "Java. Techniki zaawansowane" (w sumie nic specjalnego).
Jest jakaś taka "biblia", którą trzymacie na półce i co jakiś czas do niej zaglądacie? Ja miałem tak własnie z: - "Java. Podstawy" (ale obecnie już chyba wszystko z niej umiem), - "Spring w akcji" (świetna książka, czasem zaglądam jak czegoś zapomnę, ale też większość już umiem, a to czego nie, to i w książce nie ma), - "Czysty kod" (powolutku sobie czytam).
Teraz chciałbym coś bardziej zaawansowanego. Głównie chodzi o Javę i tematy pokrewne. Może nie ściśle z frameworków, bo to rzeczy wtórne (a zaawansowanej do Springa i tak pewnie nie ma).
Myślę nad: - "Effective Java" (podobno są tam tłumaczone takie zaawansowane rzeczy od środka jak działa Java itd., brzmi fajnie, ale może jest jeszcze coś lepszego?) - "Java Concurrency in Practice" (podobna świetna książka, na pytaniach rekrutacyjnych zawsze są pytania z wątków, temat trudny, a więc warto poczytać. Tylko że to książka sprzed ponad 10 lat, więc pewnie już mocno nieaktualna. Może jest coś dobrego nowszego na ten temat?). - "Domain-Driven Design: Tackling Complexity in the Heart of Software" (słyszałem, że dobre, tylko czy mi jest potrzebna? Nie jestem analitykiem, ani jeszcze architektem. Nie pracuję nad mega wielkimi projektami, w których DDD jest potrzebne. Podobno to jest ciężka lektura. Fajnie, że przykłady w Javie, tak jak Clean Code. Książka już bardzo stara - 15 lat, ale taka miękka wiedza chyba szybko się nie dezaktualizuje). - "Design patterns: elements of reusable object-oriented software" (fajnie mieć książkę z totalnymi podstawami jak wzorce projektowe. to potrzebne zawsze. Ta jest chyba klasyką. Ale odpada bo przykłady są w C++. No i bardzo stara - 24 lata). - "Java Puzzlers" (polecana nie wiem czemu. Stara - 13 lat) - "Unix and Linux System Administration Handbook" (polecana dla adminów, ale programiści Javy są ściśle związani ze środowiskiem Linuxa, więc też warto znać takie rzeczy. Chociaż z drugiej strony to może przesada, żeby specjalnie tego się uczyć jak już zna się podstawy basha) - "Test Driven Development: By Example" (testy nie są moją mocną stroną, obecnie powinienem bardziej nauczyć się obecnych technologii z testowania, a teorię i TDD zostawić sobie na kiedy indziej. Poza tym też stara - 16 lat) - Książka do "OCPJP" (tutaj i tutaj już pytałem jaka. Wydaje mi się, że obecnie szukam czegoś innego niż tego typu przygotowanie do certyfikatu. Coś dzięki czemu będę lepiej myślał, projektował, optymalizował, wiedział jak działa. A nie tylko znał przypadki brzegowe kompilatora) - kolejna książka Roberta C. Martina np. "Clean Architecture: A Craftsman's Guide to Software Structure and Design" (wydaje mi się, że Clean Code była dobra. A kolejne to tylko jechanie na fejmie i nie są już tak ważne, tak dobre i poruszające takie podstawy. Poza tym wolałbym też coś bardziej technicznego niż Clean Code albo DDD).
Najlepiej coś z Javy. Jak jest coś tak zaawansowanego i poruszającego dokładnie podstawowe rzeczy (tzn. jak coś działa, a nie wklej kod i masz), to może być ze Springa. Myślałem też nad czymś do Javy EE, ale nie wiem czy obecnie warto (wszędzie Spring). Albo coś z algorytmiki, wzorców projektowych, architektury, projektowania obiektowego - ale też żeby było więcej praktyki, a nie taka bardzo miękka.
Obecnie szukam książki tego typu w języki angielskim.
Książka dla Senior Java Developera
Effective Java51.7% (15)
Java Concurrency in Practice20.7% (6)
Domain-Driven Design6.9% (2)
Design patterns: elements of reusable...0% (0)
Java Puzzlers3.4% (1)
Unix and Linux System Administration Handbook3.4% (1)
Test Driven Development: By Example0% (0)
dowolna do OCPJP3.4% (1)
R.C.Martina np. Clean Architecture: A Craftsm...6.9% (2)
@kebab-case: nie czytałem i nie widziałem nigdy Effective Java. Teraz zajrzałem, przeczytałem spis treści i fragmenty. Jest to po prostu zbiór dobrych praktyk. Coś jak "Czysty kod", tylko od strony technicznej. Większość z tego i tak już używam na co dzień, ale jest kilka ciekawostek. Bardzo fajna książka.
Ale oczekiwałem po niej więcej. Myślałem, że będą w niej np. jakieś porównania wydajnościowe (np. kiedy używać jakiej kolekcji), problemy z wielowątkowością
@mk321: effective java - no powiedzmy. to raczej coś do czego wracasz. Ciężko zapamiętać wszystko co w niej jest po jednym przeczytaniu. Bloch pisze, żeby nie sięgać po to gdy nie masz opanowanychbpodstaw języka. On wskazuje które elementy dlaczego zostały zaprojektowane w dany sposób i jak powinny być wykorzystywane (z różnych powodów - wiec nie tylko konwencja).
OCA jest wymagane do OCP. To drugie jest ciekawsze, ale trzeba zrobić oba.
Szukam jakiejś książki, którą powinien znać każdy Senior Java Developer.
Jak uczyłem się podstaw Javy, to czytałem: "Java. Podstawy" (najfajniejsza, najbardziej przystępna), "Thinking in Java" (bardziej zaawansowana, ale toporna), "Head First Java" (dla mnie za bardzo komiksowa), "Analiza i projektowanie obiektowe. Rusz głową!" (kolejna od Head First, doceniam, ciekawa, mimo że komiksowa, to do tematu projektowania pasowało - w ogóle mało książek na ten temat), "Java. Techniki zaawansowane" (w sumie nic specjalnego).
Jest jakaś taka "biblia", którą trzymacie na półce i co jakiś czas do niej zaglądacie?
Ja miałem tak własnie z:
- "Java. Podstawy" (ale obecnie już chyba wszystko z niej umiem),
- "Spring w akcji" (świetna książka, czasem zaglądam jak czegoś zapomnę, ale też większość już umiem, a to czego nie, to i w książce nie ma),
- "Czysty kod" (powolutku sobie czytam).
Teraz chciałbym coś bardziej zaawansowanego. Głównie chodzi o Javę i tematy pokrewne. Może nie ściśle z frameworków, bo to rzeczy wtórne (a zaawansowanej do Springa i tak pewnie nie ma).
Myślę nad:
- "Effective Java" (podobno są tam tłumaczone takie zaawansowane rzeczy od środka jak działa Java itd., brzmi fajnie, ale może jest jeszcze coś lepszego?)
- "Java Concurrency in Practice" (podobna świetna książka, na pytaniach rekrutacyjnych zawsze są pytania z wątków, temat trudny, a więc warto poczytać. Tylko że to książka sprzed ponad 10 lat, więc pewnie już mocno nieaktualna. Może jest coś dobrego nowszego na ten temat?).
- "Domain-Driven Design: Tackling Complexity in the Heart of Software" (słyszałem, że dobre, tylko czy mi jest potrzebna? Nie jestem analitykiem, ani jeszcze architektem. Nie pracuję nad mega wielkimi projektami, w których DDD jest potrzebne. Podobno to jest ciężka lektura. Fajnie, że przykłady w Javie, tak jak Clean Code. Książka już bardzo stara - 15 lat, ale taka miękka wiedza chyba szybko się nie dezaktualizuje).
- "Design patterns: elements of reusable object-oriented software" (fajnie mieć książkę z totalnymi podstawami jak wzorce projektowe. to potrzebne zawsze. Ta jest chyba klasyką. Ale odpada bo przykłady są w C++. No i bardzo stara - 24 lata).
- "Java Puzzlers" (polecana nie wiem czemu. Stara - 13 lat)
- "Unix and Linux System Administration Handbook" (polecana dla adminów, ale programiści Javy są ściśle związani ze środowiskiem Linuxa, więc też warto znać takie rzeczy. Chociaż z drugiej strony to może przesada, żeby specjalnie tego się uczyć jak już zna się podstawy basha)
- "Test Driven Development: By Example" (testy nie są moją mocną stroną, obecnie powinienem bardziej nauczyć się obecnych technologii z testowania, a teorię i TDD zostawić sobie na kiedy indziej. Poza tym też stara - 16 lat)
- Książka do "OCPJP" (tutaj i tutaj już pytałem jaka. Wydaje mi się, że obecnie szukam czegoś innego niż tego typu przygotowanie do certyfikatu. Coś dzięki czemu będę lepiej myślał, projektował, optymalizował, wiedział jak działa. A nie tylko znał przypadki brzegowe kompilatora)
- kolejna książka Roberta C. Martina np. "Clean Architecture: A Craftsman's Guide to Software Structure and Design" (wydaje mi się, że Clean Code była dobra. A kolejne to tylko jechanie na fejmie i nie są już tak ważne, tak dobre i poruszające takie podstawy. Poza tym wolałbym też coś bardziej technicznego niż Clean Code albo DDD).
Najlepiej coś z Javy. Jak jest coś tak zaawansowanego i poruszającego dokładnie podstawowe rzeczy (tzn. jak coś działa, a nie wklej kod i masz), to może być ze Springa. Myślałem też nad czymś do Javy EE, ale nie wiem czy obecnie warto (wszędzie Spring). Albo coś z algorytmiki, wzorców projektowych, architektury, projektowania obiektowego - ale też żeby było więcej praktyki, a nie taka bardzo miękka.
Obecnie szukam książki tego typu w języki angielskim.
Książka dla Senior Java Developera
OCJP (czy teraz OCA, OCP) ma tylko sens jeśli Twoja korpo zapłaci Ci za egzamin na certyfikat.
Ale oczekiwałem po niej więcej. Myślałem, że będą w niej np. jakieś porównania wydajnościowe (np. kiedy używać jakiej kolekcji), problemy z wielowątkowością
@mk321: O tę książkę chodzi. To, że ma swoje lata nic nie zmienia. Tych wzorców używa się powszechnie do dzisiaj. Nie ma znaczenia, że przykłady są w
OCA jest wymagane do OCP. To drugie jest ciekawsze, ale trzeba zrobić oba.