Nauka Javy. Wprowadzenie do tworzenia aplikacji do Zawadzkie

Twórcy Javy od początku historii tego języka śmiało wprowadzali kolejne awangardowe innowacje, a pisane w niej aplikacje miały swój udział w napędzaniu internetowego postępu. Obecnie Java jest uważana za najpopularniejszy język programowania na świecie, a miliony deweloperów wciąż tworzą za jej …

od 44,50 Najbliżej: 37 km

Liczba ofert: 1

Oferta sklepu

Opis

Twórcy Javy od początku historii tego języka śmiało wprowadzali kolejne awangardowe innowacje, a pisane w niej aplikacje miały swój udział w napędzaniu internetowego postępu. Obecnie Java jest uważana za najpopularniejszy język programowania na świecie, a miliony deweloperów wciąż tworzą za jej pomocą oprogramowanie dla niemal każdego urządzenia wyposażonego w procesor. Java jest wyjątkowo wszechstronnym narzędziem: pozwala napisać zarówno prostą aplikację mobilną, jak i złożony system internetowy. Pozostaje przy tym stosunkowo prosta w nauce - co sprawia, że jest idealnym językiem dla początkujących, którzy mają ambicję dojścia do profesjonalnego poziomu. Ta książka jest praktycznym przewodnikiem dla każdego, kto chce zdobyć doświadczenie w tworzeniu rzeczywistych aplikacji w Javie. To również znakomity kurs programowania obiektowego dla początkujących, umożliwiający gruntowne zrozumienie podstaw języka Java i jego interfejsów API. Wyczerpująco opisano tu biblioteki klas, techniki programowania oraz idiomy. Nie zabrakło zaawansowanych zagadnień, takich jak wyrażenia lambda czy serwlety. W tym przejrzanym i zaktualizowanym wydaniu ujęto zmiany wprowadzone zarówno w wersji 11 Javy, jak i w przeglądowych wersjach 12, 13 i 14. Przedstawiono więc takie nowości jak interferencja typów w typach sparametryzowanych, ulepszenia w obsłudze wyjątków czy nowe środowisko testowe jshell. W książce między innymi: przygotowanie środowiska pracy i konfiguracja przydatnych narzędzi typy, instrukcje, wyrażenia oraz obiekty w Javie obsługa wątków i pakiet współbieżności Javy błędy i wyjątki interfejs API wyrażeń regularnych tworzenie zaawansowanych aplikacji i usług sieciowych Java: niezawodny kod, aplikacja, która działa! Spis treści: Przedmowa11 1. Nowoczesny język 17 Java 17 Pochodzenie Javy 18 Okres dojrzewania 19 Maszyna wirtualna 20 Java a inne języki programowania 23 Bezpieczeństwo projektowania 26 Upraszczaj, upraszczaj i jeszcze raz upraszczaj 26 Bezpieczeństwo typów i wiązanie metod 27 Realizacja przyrostowa 28 Dynamiczne zarządzanie pamięcią 28 Obsługa błędów 29 Wątki 30 Skalowalność 30 Bezpieczeństwo implementacji 31 Weryfikator 32 Ładowarka klas 33 Zarządca bezpieczeństwa 34 Bezpieczeństwo na poziomie aplikacji i użytkownika 35 Harmonogram Javy 35 Przeszłość: Java 1.0 - Java 11 36 Teraźniejszość: Java 14 38 Przyszłość 39 Dostępność 40 2. Pierwsza aplikacja 41 Narzędzia i środowisko Javy 41 Instalowanie JDK 42 Instalowanie OpenJDK w systemie Linux 43 Instalowanie OpenJDK w systemie macOS 43 Instalowanie OpenJDK w systemie Windows 44 Konfigurowanie środowiska IntelliJ IDEA i tworzenie projektu 46 Uruchomienie projektu 50 Pobieranie przykładów kodu 51 HelloJava 51 Klasy 54 Metoda main() 55 Klasy i obiekty 56 Zmienne i typy klasowe 56 HelloComponent 57 Dziedziczenie 58 Klasa JComponent 59 Relacje i szukanie winnego 59 Pakiety i importowanie 60 Metoda paintComponent() 62 HelloJava2: drugie podejście 63 Zmienne instancyjne 64 Konstruktory 65 Zdarzenia 67 Metoda repaint() 69 Interfejsy 70 Żegnaj i ponownie witaj 71 3. Narzędzia pracy 73 Środowisko JDK 73 Maszyna wirtualna Javy 74 Uruchamianie aplikacji Javy 74 Właściwości systemowe 76 Ścieżka klas (classpath) 76 Narzędzie javap 78 Moduły 78 Kompilator Javy 78 Natychmiastowe sprawdzanie działania kodu Javy 80 Pliki JAR 85 Kompresja plików 85 Narzędzie jar 86 Narzędzie pack200 88 Czas przygotowań 89 4. Język Java 91 Kodowanie tekstu 92 Komentarze 94 Komentarze javadoc 94 Zmienne i stałe 96 Typy 98 Typy proste 99 Typy referencyjne 103 Inferencja typów 104 Przekazywanie referencji 105 Kilka słów na temat obiektów String 106 Instrukcje i wyrażenia 106 Instrukcje 107 Wyrażenia 115 Tablice 120 Typy tablicowe 121 Tworzenie i inicjowanie tablicy 121 Używanie tablic 123 Tablice anonimowe 125 Tablice wielowymiarowe 125 Typy, klasy i tablice, o rany! 127 5. Obiekty w Javie 129 Klasy 129 Deklarowanie klas i tworzenie ich instancji 131 Uzyskiwanie dostępu do pól i metod 132 Składowe statyczne 137 Metody 139 Zmienne lokalne 140 Przesłanianie 141 Metody statyczne 142 Inicjowanie zmiennych lokalnych 144 Przekazywanie argumentów i referencje 145 Klasy opakowujące dla typów prostych 146 Przeciążanie metod 148 Tworzenie obiektów 149 Konstruktory 150 Praca z konstruktorami przeciążonymi 151 Niszczenie obiektów 152 Mechanizm odzyskiwania pamięci 153 Pakiety 154 Importowanie klas 154 Pakiety niestandardowe 156 Widoczność i dostępność składowych 157 Kompilowanie pakietów 159 Zaawansowane projektowanie klas 160 Tworzenie podklas i dziedziczenie 160 Interfejsy 165 Klasy wewnętrzne 167 Anonimowe klasy wewnętrzne 168 Organizowanie zawartości i uwzględnianie występowania błędów 170 6. Obsługa błędów i rejestrowanie 173 Wyjątki 174 Klasy błędów i wyjątków 174 Obsługa wyjątków 176 Bąbelkowanie 179 Ślady stosu 180 Wyjątki sprawdzane i niesprawdzane 181 Rzucanie wyjątków 182 Kłopotliwe try 185 Klauzula finally 186 try-with-resources 186 Kwestie związane z wydajnością 188 Asercje 188 Włączanie i wyłączanie asercji 189 Używanie asercji 190 API rejestrowania 191 Przegląd 191 Poziomy rejestrowania 193 Prosty przykład 194 Właściwości konfiguracyjne rejestrowania 195 Klasa Logger 197 Wydajność 197 Wyjątki w praktyce 198 7. Kolekcje oraz typy i metody sparametryzowane 199 Kolekcje 199 Interfejs Collection 200 Typy kolekcji 201 Interfejs Map 202 Ograniczenia typów 204 Kontenery, czyli budowanie lepszej pułapki na myszy 205 Czy kontenery można naprawić? 206 Wprowadzenie do typów i metod sparametryzowanych 206 Kilka słów o typach 209 "Łyżka nie istnieje" 210 Wymazywanie 210 Typy surowe 212 Relacje typów sparametryzowanych 213 Dlaczego Listnie jest typem List? 215 Rzutowania 216 Konwertowanie między kolekcjami a tablicami 217 Iterator 217 Działanie metody sort() 218 Aplikacja: drzewa na planszy 219 Podsumowanie 220 8. Praca z tekstem i podstawowe narzędzia 223 Łańcuchy znaków - klasa String 223 Konstruowanie łańcuchów znaków 224 Tekstowe reprezentacje z różnych elementów 225 Porównywanie łańcuchów znaków 226 Wyszukiwanie 227 Podsumowanie metod klasy String 227 Różne elementy z tekstowych reprezentacji 229 Parsowanie liczb prostych 229 Tokenizacja tekstu 230 Wyrażenia regularne 232 Notacja wyrażeń regularnych 232 Interfejs API java.util.regex 238 Narzędzia matematyczne 242 Klasa java.lang.Math 243 Duże i dokładne liczby 246 Daty i godziny 248 Lokalne daty i godziny 248 Porównywanie oraz zmiana dat i godzin 249 Strefy czasowe 250 Parsowanie i formatowanie dat i godzin 251 Błędy parsowania 253 Znaczniki czasu 254 Inne przydatne narzędzia 254 9. Wątki 257 Wprowadzenie do wątków 258 Klasa Thread i interfejs Runnable 258 Sterowanie wątkami 261 "Śmierć" wątku 266 Synchronizacja 268 Szeregowanie dostępu do metod 268 Uzyskiwanie dostępu do zmiennych klasowych i instancyjnych z wielu wątków 273 Planowanie i priorytety 274 Stany wątku 275 Podział czasu 276 Priorytety 277 Oddawanie sterowania 278 Wydajność wątków 279 Koszt synchronizacji 279 Wykorzystywanie zasobów wątku 279 Narzędzia do obsługi współbieżności 280 10. Aplikacje desktopowe 283 Przyciski, suwaki oraz pola tekstowe, o rety! 284 Hierarchie komponentów 284 Architektura Model-Widok-Kontroler 284 Etykiety i przyciski 286 Komponenty tekstowe 292 Inne komponenty 299 Kontenery i układy 303 Ramki i okna 303 Klasa JPanel 305 Menedżery układu 306 Zdarzenia 314 Zdarzenia myszy 315 Zdarzenia działań 318 Zdarzenia zmian 320 Inne zdarzenia 321 Okna modalne i wyskakujące okienka 322 Okna dialogowe z komunikatami 322 Okna dialogowe z potwierdzeniem 325 Okna dialogowe z danymi wejściowymi 326 Rozważania na temat obsługi wątków 326 Klasa SwingUtilities i aktualizacje komponentów 327 Minutniki 330 Kolejne kroki 332 Menu 333 Preferencje 335 Komponenty niestandardowe oraz Java2D 335 JavaFX 335 Interfejs użytkownika i doświadczenie użytkownika 336 11. Obsługa sieci i operacje we-wy 337 Strumienie 337 Podstawowe operacje we-wy 339 Strumienie znaków 341 Klasy opakowujące dla strumieni 342 Klasa java.io.File 346 Strumienie plików 351 Klasa RandomAccessFile 353 Interfejs API plików NIO 354 Klasy FileSystem i Path 355 Operacje interfejsu plików NIO 356 Pakiet NIO 360 Asynchroniczne operacje we-wy 360 Wydajność 361 Pliki zmapowane i zablokowane 361 Kanały 361 Bufory 362 Kodery i dekodery znaków 365 FileChannel 367 Programowanie sieciowe 370 Gniazda 372 Klienty i serwery 373 Klient DateAtHost 376 Gra rozproszona 378 Więcej do odkrycia 387 12. Programowanie aplikacji internetowych 389 Adresy URL 389 Klasa URL 390 Strumień danych 391 Pobieranie zawartości jako obiektu 392 Zarządzanie połączeniami 393 Procedury obsługi w praktyce 394 Przydatne frameworki procedur obsługi 394 Komunikacja z aplikacjami internetowymi 395 Korzystanie z metody GET 395 Korzystanie z metody POST 396 Obiekt HttpURLConnection 399 SSL i bezpieczna komunikacja internetowa 400 Aplikacje internetowe Javy 400 Cykl życia serwletu 402 Serwlety 402 Serwlet HelloClient 404 Odpowiedź serwletu 405 Parametry serwletu 406 Serwlet ShowParameters 408 Zarządzanie sesjami użytkowników 409 Serwlet ShowSession 410 Kontenery serwletów 412 Konfigurowanie za pomocą pliku web.xml oraz adnotacji 413 Mapowania wzorców adresów URL 416 Wdrażanie serwletu HelloClient 416 WWW - sieć na cały świat rozległa 417 13. Rozszerzanie Javy 419 Wydania Javy 419 JCP i JSR 420 Wyrażenia lambda 420 Modernizacja kodu 421 Rozszerzanie Javy poza podstawowe funkcjonalności 426 Końcowe podsumowanie i kolejne kroki 427 A. Przykłady kodu i program IntelliJ IDEA 429 Słowniczek 443

Specyfikacja

Autor
  • Marc Loy, Patrick Niemeyer, Daniel Leuck
Wybrane wydawnictwa
  • Helion
Rok wydania
  • 2021
Format
  • PDF
  • MOBI
  • EPUB
Kategorie
  • Programowanie
Ilość stron
  • 464