Efektywne programowanie (J. Bloch)

efektywne programowanie josh bloch

Istnieje kilka książek poświęconych Javie, które uważane są za absolutną klasykę, po którą po pewnym czasie po prostu wypada sięgnąć. Jedną z takich książek jest Efektywne Programowanie w języku Java autorstwa Joshuy Blocha.

Sam Josh zdobył tytuł doktora, początkowo pracował w firmie Sun Microsystems, później również w Google. Był i nadal jest współautorem, architektem oraz liderem wielu projektów związanych z funkcjonalnościami języka Java (np. Collections Framework) oraz specyfikacji Javy EE. Można go spotkać na wielu międzynarodowych konferencjach, gdzie chętnie dzieli się swoją wiedzą, a wśród wydanych przez niego książek można wymienić:

  • Efektywne programowanie w języku Java
  • Concurrency in practice
  • Java Puzzlers

Dwie ostatnie niestety nigdy nie doczekały się polskiego tłumaczenia i są obecnie ciężko dostępne w Polsce.

Omawiana tutaj książka miała pierwsze wydanie w roku 2001, jednak doczekała się reedycji w roku 2008 (w Polsce odpowiedniki pojawiały się rok później).

Książka przeznaczona jest dla osób świadomych możliwości Javy oraz sprawnie poruszających się w aspektach takich jak programowanie obiektowe, polimorfizm, czy praca z wyjątkami. W blisko 80 omówionych tematach znajdziemy praktyczne porady skupiające się wyłącznie na pułapkach i często popełnianych błędach, których możemy łatwo uniknąć. W odróżnieniu np. do książki Clean Code Roberta C. Martina jest tutaj dużo więcej konkretnych przykładów poświęconych Javie, a mniej ogólników odnoszących się po prostu do dobrego stylu programowania.

Większość problemów omówionych jest na przykładach z kodem źródłowym, który nie zawsze oddaje problemy świata rzeczywistego, ale zawsze są proste do zrozumienia i oddają ideę, którą chciał przekazać autor.

Tematy podzielone są na 10 sekcji:

  • tworzenie i usuwanie obiektów (np. wzorzec budowniczy)
  • metody wspólne dla wszystkich obiektów (np. equals, clone)
  • klasy i interfejsy (np. klasy niezmienne / immutable)
  • typy generyczne
  • adnotacje i typy wyliczeniowe enum
  • metody (np. varargs)
  • porady ogólne (np. poprawne obieranie typów do zamiaru)
  • wyjątki (dobre praktyki)
  • wielowątkowość
  • serializacja

Niestety z racji daty wydania książki nie omawia ona wielu ważnych zagadnień z Javy 7 oraz 8 (może doczekamy się aktualizacji?).

Książka Efektywne Programowanie w języku Java jest jedną z tych, którą czyta się często z uśmiechem, uświadamiając sobie, jak wiele błędów można było uniknąć w swoim kodzie. Na pewno nie jest to pozycja przeznaczona dla początkujących. Bardziej kierowana jest ona do osób, które dochodzą do punktu znajomości Javy "wiem, że nic nie wiem". Biorąc pod uwagę aktualną, niską cenę gorąco polecamy, czyta się dobrze i szybko jako lektura do poduszki.

Dyskusja i komentarze

Masz pytania do tego wpisu? Może chcesz się podzielić spostrzeżeniami? Zapraszamy dyskusji na naszej grupie na Facebooku.