Facebook - konwersja
Pobierz fragment

Wzorce projektowe dla programistów Javy. Udoskonal swoje umiejętności projektowania oprogramowania - ebook

Wydawnictwo:
Tłumacz:
Data wydania:
11 marca 2024
Format ebooka:
PDF
Format PDF
czytaj
na laptopie
czytaj
na tablecie
Format e-booków, który możesz odczytywać na tablecie oraz laptopie. Pliki PDF są odczytywane również przez czytniki i smartfony, jednakze względu na komfort czytania i brak możliwości skalowania czcionki, czytanie plików PDF na tych urządzeniach może być męczące dla oczu. Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na laptopie
Pliki PDF zabezpieczone watermarkiem możesz odczytać na dowolnym laptopie po zainstalowaniu czytnika dokumentów PDF. Najpowszechniejszym programem, który umożliwi odczytanie pliku PDF na laptopie, jest Adobe Reader. W zależności od potrzeb, możesz zainstalować również inny program - e-booki PDF pod względem sposobu odczytywania nie różnią niczym od powszechnie stosowanych dokumentów PDF, które odczytujemy każdego dnia.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na tablecie
Aby odczytywać e-booki na swoim tablecie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. Bluefire dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
Pobierz fragment
Produkt chwilowo niedostępny

Wzorce projektowe dla programistów Javy. Udoskonal swoje umiejętności projektowania oprogramowania - ebook

Właściwe stosowanie wzorców projektowych jest umiejętnością, którą bardzo cenią twórcy oprogramowania. Wzorce pozwalają na szybkie opracowanie złożonych zagadnień i umożliwiają tworzenie kodu nadającego się do wielokrotnego użycia. Taki kod jest przy tym wydajny, łatwy w testowaniu i utrzymaniu. Z pewnością wzorce projektowe są świetnym rozwiązaniem dla inżyniera, który chce doskonalić umiejętności projektowania oprogramowania.

Książka stanowi zbiór praktycznych informacji dotyczących najpopularniejszych wzorców projektowych. Lekturę rozpoczniesz od zapoznania się z możliwościami korzystania z wzorców projektowych na platformie Javy. Dowiesz się także, jakich zasad trzeba przestrzegać, aby zapewnić czytelność i łatwość utrzymania kodu Javy. W kolejnych rozdziałach znajdziesz praktyczne wskazówki i przykłady dotyczące stosowania wzorców kreacyjnych, strukturalnych, operacyjnych, a także wzorców współbieżności. Nauczysz się ich używać do praktycznego rozwiązywania problemów często spotykanych podczas projektowania oprogramowania. Końcowy rozdział został poświęcony antywzorcom, a zawarte w nim informacje pomogą Ci w ich identyfikacji i podjęciu najlepszych środków zaradczych.

W książce:

  • jakie problemy można rozwiązać za pomocą wzorców projektowych w Javie
  • jakie możliwości ma programowanie współbieżne
  • jak wzorzec projektowy Obserwator buduje relację "jeden-do-wielu" między instancjami
  • jakie problemy pomaga rozwiązać wzorzec Odwiedzający
  • jak kontrolować zasoby przy użyciu wzorca Pula wątków
  • jak zaradzić problemom spowodowanym przez antywzorce

Wzorce projektowe: niezbędnik najlepszych programistów Javy!

 

Spis treści

O autorze

O recenzencie

Słowo wstępne

Wstęp

CZĘŚĆ 1. Wzorce projektowe i funkcjonalności platformy Java

  • Rozdział 1. Wprowadzenie do wzorców projektowych oprogramowania
    • Wymagania techniczne
    • Kod - od symboli do programu
    • Programowanie obiektowe i APDH
      • Prezentowanie tylko tego, co niezbędne - hermetyzacja
      • Nieunikniona ewolucja - dziedziczenie
      • Zachowanie na żądanie - polimorfizm
      • Standardowe możliwości - abstrakcja
      • Elementy scalające APDH
    • Rozumienie zasad projektowania SOLID
      • Zasada jednej odpowiedzialności (SRP) - silnik to tylko silnik
      • Zasada otwarte-zamknięte (OCP)
      • Zasada podstawienia Liskov (LSP) - możliwość zastępowania klas
      • Zasada segregacji interfejsów (ISP)
      • Zasada odwrócenia zależności (DIP)
    • Znaczenie wzorców projektowych
    • Przegląd wyzwań rozwiązywanych przez wzorce projektowe
    • Podsumowanie
    • Pytania
    • Dalsza lektura
  • Rozdział 2. Odkrywanie platformy Java pod kątem wzorców projektowych
    • Wymagania techniczne
    • Wstępne poznawanie Javy
    • Przedstawienie modelu platformy Java oraz jej możliwości
      • JDK
      • JRE
      • JVM
    • Przegląd odzyskiwania pamięci i modelu pamięci w Javie
      • JMM
      • Odśmiecanie i automatyczne zarządzanie pamięcią
    • Przedstawienie podstawowych API Javy
      • Podstawowe typy danych i typy opakowujące
      • Praca z API klasy String
      • Przedstawienie tablic
      • Prezentacja frameworka kolekcji
      • API operacji matematycznych
    • Programowanie funkcyjne w Javie
      • Przedstawienie wyrażeń lambda i interfejsów funkcyjnych
      • Korzystanie z interfejsów funkcyjnych w wyrażeniach lambda
    • Przedstawienie systemu modułów Javy
    • Krótki przegląd możliwości Javy z wersji od 11 do 17+
      • Składnia zmiennych lokalnych dla parametrów wyrażeń lambda (Java SE 11, JEP-323)
      • Wyrażenie switch (Java SE 14, JEP-361)
      • Bloki tekstowe (Java SE 15, JEP-378)
      • Dostosowywanie wzorców w operatorze instanceof (Java SE 16, JEP-394)
      • Rekordy (Java SE 16, JEP-395)
      • Klasy zapieczętowane (Java SE 17, JEP-409)
      • Domyślnie stosowane kodowanie UTF-8 (Java SE 18, JEP-400)
      • Dopasowywanie wzorców w instrukcji switch (Java SE 18, Second Preview, JEP-420)
    • Prezentacja współbieżności w Javie
      • Od prostych wątków do wykonawców
      • Wykonywanie zadań
    • Podsumowanie
    • Pytania
    • Dalsza lektura

CZĘŚĆ 2. Implementowanie standardowych

  • Rozdział 3. Kreacyjne wzorce projektowe
    • Wymagania techniczne
    • Wszystko zaczyna się od klas, które stają się obiektami
    • Tworzenie obiektów na podstawie danych wejściowych przy użyciu wzorca Metoda wytwórcza
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Tworzenie obiektów z różnych rodzin przy użyciu wzorca Fabryka abstrakcyjna
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Tworzenie złożonych obiektów przy użyciu wzorca Budowniczy
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Klonowanie obiektów przy wykorzystaniu wzorca Prototyp
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Zapewnianie istnienia tylko jednego obiektu przy użyciu wzorca projektowego Singleton
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Poprawianie wydajności dzięki wykorzystaniu wzorca Pula obiektów
      • Uzasadnienie
      • Przykłady wykorzystania wzorca w JDK
      • Przykładowy kod
      • Wniosek
    • Inicjalizacja obiektów na żądanie przy wykorzystaniu wzorca Leniwa inicjalizacja
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Zmniejszanie zależności przy wykorzystaniu wzorca Wstrzykiwanie zależności
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Podsumowanie
    • Pytania
    • Dalsza lektura
  • Rozdział 4. Stosowanie strukturalnych wzorców projektowych
    • Wymagania techniczne
    • Współpraca niezgodnych obiektów dzięki użyciu wzorca Adapter
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Rozdzielanie i niezależne rozwijanie obiektów dzięki użyciu wzorca Most
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Traktowanie obiektów w ten sam sposób dzięki użyciu wzorca Kompozyt
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Rozszerzanie funkcjonalności obiektów przy użyciu wzorca Dekorator
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Upraszczanie komunikacji przy użyciu wzorca Fasada
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Stosowanie warunków do wybierania pożądanych obiektów przy wykorzystaniu wzorca Filtr
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Współdzielenie obiektów w całej aplikacji przy wykorzystaniu wzorca Pyłek
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Obsługa żądań przy wykorzystaniu wzorca projektowego Front Controller
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Identyfikowanie instancji za pomocą wzorca Znacznik
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Poznawanie koncepcji modułów przy wykorzystaniu wzorca Moduł
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Dostarczanie zamiennika przy użyciu wzorca Pełnomocnik
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Odkrywanie wielokrotnego dziedziczenia w Javie za pomocą wzorca Bliźniak
      • Uzasadnienie
      • Przykładowy kod
      • Wniosek
    • Podsumowanie
    • Pytania
    • Dalsza lektura
  • Rozdział 5. Operacyjne wzorce projektowe
    • Wymagania techniczne
    • Ograniczanie kosztownej inicjalizacji przy użyciu wzorca Buforowanie
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Obsługa zdarzeń przy wykorzystaniu wzorca Łańcuch zobowiązań
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Przekształcanie informacji w działanie przy użyciu wzorca Polecenie
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Nadawanie znaczenia kontekstowi przy użyciu wzorca Interpreter
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Sprawdzanie wszystkich elementów przy użyciu wzorca Iterator
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Stosowanie wzorca Mediator do wymiany informacji
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Przywracanie pożądanego stanu przy wykorzystaniu wzorca Pamiątka
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Unikanie wyjątków związanych z wartością null przy użyciu wzorca Obiekt pusty
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Informowanie wszystkich zainteresowanych stron przy użyciu wzorca Obserwator
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Obsługa etapów istnienia instancji przy wykorzystaniu wzorca Potok
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Zmiana zachowania obiektu przy wykorzystaniu wzorca Stan
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Wykorzystanie wzorca Strategia do zmiany zachowania obiektu
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Standaryzacja procesów przy użyciu wzorca Metoda szablonowa
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Wykonywanie kodu w oparciu o typ obiektu przy użyciu wzorca Odwiedzający
      • Uzasadnienie
      • Przykłady zastosowania w JDK
      • Przykładowy kod
      • Wniosek
    • Podsumowanie
    • Pytania
    • Dalsza lektura

CZĘŚĆ 3. Inne ważne wzorce projektowe i antywzorce

  • Rozdział 6. Wzorce projektowe współbieżności
    • Wymagania techniczne
    • Separowanie wykonania metody przy użyciu wzorca Aktywny obiekt
      • Uzasadnienie
      • Przykładowy kod
      • Wniosek
    • Tworzenie nieblokujących zadań przy użyciu wzorca Asynchroniczne wywołanie metody
      • Uzasadnienie
      • Przykładowy kod
      • Wniosek
    • Opóźnianie wykonania do momentu ukończenia poprzedniego zadania przy wykorzystaniu wzorca Balking
      • Uzasadnienie
      • Przykładowy kod
      • Wniosek
    • Udostępnianie unikalnej instancji przy użyciu wzorca Podwójnie sprawdzane blokowanie
      • Uzasadnienie
      • Przykładowy kod
      • Wniosek
    • Stosowanie celowego blokowania wątków przy użyciu wzorca Blokada odczytu-zapisu
      • Uzasadnienie
      • Przykładowy kod
      • Wniosek
    • Separowanie logiki wykonania przy wykorzystaniu wzorca Producent-konsument
      • Uzasadnienie
      • Przykładowy kod
      • Wniosek
    • Realizacja odizolowanych zadań przy użyciu wzorca Dyspozytor
      • Uzasadnienie
      • Przykładowy kod
      • Wniosek
    • Efektywne wykorzystanie wątków za pomocą wzorca Pula wątków
      • Uzasadnienie
      • Przykładowy kod
      • Wniosek
    • Podsumowanie
    • Pytania
    • Dalsza lektura
  • Rozdział 7. Popularne antywzorce
    • Wymagania techniczne
    • Czym są antywzorce i jak je identyfikować
      • Zmiana zasad teoretycznych
      • Gromadzenie długu technicznego jako wąskie gardło
      • Niewłaściwe wykorzystanie możliwości platformy Java
      • Wybór odpowiedniego narzędzia
      • Podsumowanie antywzorca zapachu kodu
    • Badanie typowych antywzorców oprogramowania
      • Rozwlekły złożony kod
      • Programowanie oparte na kopiowaniu i wklejaniu
      • Klucha
      • Potok lawy (ang. lava flow)
      • Dekompozycja funkcjonalna
      • Kotwica
      • Wniosek
    • Zrozumienie antywzorców architektury oprogramowania
      • Złoty młotek
      • Ciągłe starzenie się
      • Wadliwe dane wejściowe
      • Praca na polu minowym
      • Niejednoznaczny punkt widzenia
      • Poltergeist
      • Ślepy zaułek
      • Wniosek
    • Podsumowanie
    • Dalsza lektura

Odpowiedzi

  • Rozdział 1. Wprowadzenie do wzorców projektowych oprogramowania
  • Rozdział 2. Odkrywanie platformy Java pod kątem wzorców projektowych
  • Rozdział 3. Stosowanie kreacyjnych wzorców projektowych
  • Rozdział 4. Stosowanie strukturalnych wzorców projektowych
  • Rozdział 5. Operacyjne wzorce projektowe
  • Rozdział 6. Wzorce projektowe współbieżności
Kategoria: Programowanie
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-289-0773-7
Rozmiar pliku: 9,0 MB

BESTSELLERY

Kategorie: