Opis
Książka przedstawia sposoby i techniki programowania użyteczne we wszelkich zastosowaniach języka Java. W publikacji akcentowany jest kontekst praktyczny: jak i do czego poszczególnych narzędzi językowych używać.
Specjalna uwaga zwracana jest na nowe elementy języka, dostępne w wersjach 8 i 9.
Rozbudowane rozdziały o kolekcjach, wejściu-wyjściu, programowaniu współbieżnym i dynamicznym stanowią swoiste kompendia, które dają nie tylko orientację co do zestawu dostępnych środków programowania, ale również omawiają ważne szczegóły i niuanse ich zastosowań.
Zakłada się, że Czytelnik ma orientację w podstawach programowania w języku Java, ale niekoniecznie musi być zaawansowanym programistą. Dlatego ważne bloki tematyczne (takie jak np. programowanie obiektowe i funkcyjne w Javie) omawiane są od podstaw.
Do interesujących szczegółowych tematów poruszanych w książce należą:
· definiowanie metod w interfejsach (w tym metod prywatnych, poczynając od Javy w wersji 9),
· lambda-wyrażenia i przetwarzanie strumieniowe,
· obiekty typu Optional jako monady oraz ich użycie,
· spliteratory,
· zadania typu CountedCompleter jako kontynuacje oraz ich zastosowania,
· zadania typu CompletableFuture (dostępne od Javy 8) i ich praktyczne użycie,
· wyspecjalizowane synchronizatory, w tym - nowe w Javie 8 - obiekty typu StampedLock,
· zastosowanie refleksji oraz uchwytów metod (MethodHandle),
· tworzenie dynamicznych klas i obiektów typu proxy,
· zastosowania JavaBeans i delegacyjnego modelu obsługi zdarzeń zmian ich właściwości,
· definiowanie i przetwarzanie adnotacji (w tym definiowanie procesorów adnotacji),
· użycie skryptów z poziomu aplikacji Javy.