Facebook - konwersja
Pobierz fragment

Java. Techniki zaawansowane. Wydanie X - ebook

Wydawnictwo:
Tłumacz:
Data wydania:
28 września 2017
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.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, EPUB
Format EPUB
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najpopularniejszych formatów e-booków na świecie. Niezwykle wygodny i przyjazny czytelnikom - w przeciwieństwie do formatu PDF umożliwia skalowanie czcionki, dzięki czemu możliwe jest dopasowanie jej wielkości do kroju i rozmiarów ekranu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, MOBI
Format MOBI
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najczęściej wybieranych formatów wśród czytelników e-booków. Możesz go odczytać na czytniku Kindle oraz na smartfonach i tabletach po zainstalowaniu specjalnej aplikacji. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
(3w1)
Multiformat
E-booki sprzedawane w księgarni Virtualo.pl dostępne są w opcji multiformatu - kupujesz treść, nie format. Po dodaniu e-booka do koszyka i dokonaniu płatności, e-book pojawi się na Twoim koncie w Mojej Bibliotece we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu przy okładce. Uwaga: audiobooki nie są objęte opcją multiformatu.
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.
czytaj
na czytniku
Czytanie na e-czytniku z ekranem e-ink jest bardzo wygodne i nie męczy wzroku. Pliki przystosowane do odczytywania na czytnikach to przede wszystkim EPUB (ten format możesz odczytać m.in. na czytnikach PocketBook) i MOBI (ten fromat możesz odczytać m.in. na czytnikach Kindle).
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 smartfonie
Aby odczytywać e-booki na swoim smartfonie 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. iBooks 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
149,00

Java. Techniki zaawansowane. Wydanie X - ebook

Java jest dojrzałym i bezpiecznym językiem programowania, który pozwala na tworzenie kodu działającego niezależnie od platformy. Jest przy tym cały czas konsekwentnie rozwijany przez firmę Oracle. Java w wersji SE 8 stała się innowacyjnym, nowoczesnym narzędziem o imponujących możliwościach. Aby w pełni wykorzystać szanse, które niesie Java SE 8, i tworzyć kod o wysokiej jakości, niezbędne jest pogłębione zrozumienie tego języka i konieczna jest gruntowna znajomość jego bibliotek.

Książka ta jest kolejnym, gruntownie zaktualizowanym i przeorganizowanym wydaniem czołowego podręcznika dla poważnych programistów Javy, którzy chcą skorzystać z nowych możliwości języka. W tym drugim z dwóch tomów książki opisano zagadnienia zaawansowane, takie jak API strumieni, biblioteki do obsługi daty, czasu i kalendarzy, zaawansowane zastosowania biblioteki Swing czy zagadnienia związane z bezpieczeństwem. Przedstawiono również najlepsze praktyki programowania aplikacji. Co ważne, prezentacja zagadnień umożliwia ich łatwe zrozumienie i praktyczne zastosowanie.

Najważniejsze zagadnienia ujęte w książce:

  • biblioteka strumieni Javy 8 oraz strumienie wejścia-wyjścia
  • tworzenie aplikacji sieciowych pracujących z użyciem protokołu HTTP
  • interfejs JDBC i programowa obsługa baz danych
  • interfejs programowy bezpieczeństwa i wykorzystanie algorytmów szyfrowania
  • interfejs programowy Java 2D

Java. Dojrzałe rozwiązania, profesjonalna jakość aplikacji!

Spis treści

Przedmowa (11)

Podziękowania (15)

Rozdział 1. Biblioteka strumieni Java SE 8 (17)

  • 1.1. Od iteracji do operacji na strumieniach (18)
  • 1.2. Tworzenie strumieni (20)
  • 1.3. Metody filter, map oraz flatMap (24)
  • 1.4. Pobieranie podstrumieni i łączenie strumieni (25)
  • 1.5. Inne przekształcenia strumieni (26)
  • 1.6. Proste operacje redukcji (27)
  • 1.7. Typ Optional (29)
    • 1.7.1. Sposoby posługiwania się wartościami Optional (29)
    • 1.7.2. Jak nie należy używać wartości opcjonalnych (31)
    • 1.7.3. Tworzenie obiektów typu Optional (31)
    • 1.7.4. Łączenie funkcji zwracających wartości opcjonalne przy użyciu flatMap (32)
  • 1.8. Gromadzenie wyników (34)
  • 1.9. Gromadzenie wyników w mapach (39)
  • 1.10. Grupowanie i podział (43)
  • 1.11. Kolektory przetwarzające (44)
  • 1.12. Operacje redukcji (48)
  • 1.13. Strumienie danych typów prostych (50)
  • 1.14. Strumienie równoległe (55)

Rozdział 2. Wejście i wyjście (61)

  • 2.1. Strumienie wejścia-wyjścia (61)
    • 2.1.1. Odczyt i zapis bajtów (62)
    • 2.1.2. Zoo pełne strumieni (64)
    • 2.1.3. Łączenie filtrów strumieni wejścia-wyjścia (68)
  • 2.2. Strumienie tekstowe (72)
    • 2.2.1. Zapisywanie tekstu (72)
    • 2.2.2. Wczytywanie tekstu (75)
    • 2.2.3. Zapis obiektów w formacie tekstowym (75)
    • 2.2.4. Zbiory znaków (78)
  • 2.3. Odczyt i zapis danych binarnych (81)
    • 2.3.1. Interfejsy DataInput oraz DataOutput (81)
    • 2.3.2. Strumienie plików o swobodnym dostępie (84)
    • 2.3.3. Archiwa ZIP (88)
  • 2.4. Strumienie obiektów i serializacja (91)
    • 2.4.1. Zapisywanie i wczytywanie obiektów serializowalnych (91)
    • 2.4.2. Format pliku serializacji obiektów (95)
    • 2.4.3. Modyfikowanie domyślnego mechanizmu serializacji (102)
    • 2.4.4. Serializacja singletonów i wyliczeń (104)
    • 2.4.5. Wersje (105)
    • 2.4.6. Serializacja w roli klonowania (107)
  • 2.5. Zarządzanie plikami (109)
    • 2.5.1. Ścieżki dostępu (110)
    • 2.5.2. Odczyt i zapis plików (112)
    • 2.5.3. Tworzenie plików i katalogów (114)
    • 2.5.4. Kopiowanie, przenoszenie i usuwanie plików (115)
    • 2.5.5. Informacje o plikach (117)
    • 2.5.6. Przeglądanie zawartości katalogu (118)
    • 2.5.7. Stosowanie strumieni katalogów (120)
    • 2.5.8. Systemy plików ZIP (123)
  • 2.6. Mapowanie plików w pamięci (124)
    • 2.6.1. Wydajność plików mapowanych w pamięci (124)
    • 2.6.2. Struktura bufora danych (131)
    • 2.6.3. Blokowanie plików (133)
  • 2.7. Wyrażenia regularne (135)

Rozdział 3. Język XML (149)

  • 3.1. Wprowadzenie do języka XML (150)
    • 3.1.1. Struktura dokumentu XML (152)
  • 3.2. Parsowanie dokumentów XML (155)
  • 3.3. Kontrola poprawności dokumentów XML (166)
    • 3.3.1. Definicje typów dokumentów (167)
    • 3.3.2. XML Schema (174)
    • 3.3.3. Praktyczny przykład (176)
  • 3.4. Wyszukiwanie informacji i XPath (189)
  • 3.5. Przestrzenie nazw (195)
  • 3.6. Parsery strumieniowe (198)
    • 3.6.1. Wykorzystanie parsera SAX (198)
    • 3.6.2. Wykorzystanie parsera StAX (203)
  • 3.7. Tworzenie dokumentów XML (207)
    • 3.7.1. Dokumenty bez przestrzeni nazw (207)
    • 3.7.2. Dokumenty z przestrzenią nazw (208)
    • 3.7.3. Zapisywanie dokumentu (209)
    • 3.7.4. Przykład: tworzenie pliku SVG (209)
    • 3.7.5. Tworzenie dokumentu XML za pomocą parsera StAX (213)
  • 3.8. Przekształcenia XSL (220)

Rozdział 4. Programowanie aplikacji sieciowych (231)

  • 4.1. Połączenia z serwerem (231)
    • 4.1.1. Stosowanie programu telnet (231)
    • 4.1.2. Nawiązywanie połączenia z serwerem z wykorzystaniem Javy (234)
    • 4.1.3. Limity czasu gniazd (235)
    • 4.1.4. Adresy internetowe (237)
  • 4.2. Implementacja serwerów (238)
    • 4.2.1. Gniazda serwera (239)
    • 4.2.2. Obsługa wielu klientów (241)
    • 4.2.3. Połączenia częściowo zamknięte (244)
  • 4.3. Przerywanie działania gniazd sieciowych (246)
  • 4.4. Połączenia wykorzystujące URL (252)
    • 4.4.1. URL i URI (252)
    • 4.4.2. Zastosowanie klasy URLConnection do pobierania informacji (254)
    • 4.4.3. Wysyłanie danych do formularzy (262)
  • 4.5. Wysyłanie poczty elektronicznej (270)

Rozdział 5. Programowanie baz danych: JDBC (275)

  • 5.1. Architektura JDBC (276)
    • 5.1.1. Typy sterowników JDBC (276)
    • 5.1.2. Typowe zastosowania JDBC (278)
  • 5.2. Język SQL (278)
  • 5.3. Instalacja JDBC (284)
    • 5.3.1. Adresy URL baz danych (284)
    • 5.3.2. Pliki JAR zawierające sterownik (285)
    • 5.3.3. Uruchamianie bazy danych (285)
    • 5.3.4. Rejestracja klasy sterownika (286)
    • 5.3.5. Nawiązywanie połączenia z bazą danych (287)
  • 5.4. Stosowanie poleceń SQL (289)
    • 5.4.1. Wykonywanie poleceń SQL (290)
    • 5.4.2. Zarządzanie połączeniami, poleceniami i zbiorami wyników (293)
    • 5.4.3. Analiza wyjątków SQL (294)
    • 5.4.4. Wypełnianie bazy danych (296)
  • 5.5. Wykonywanie zapytań (300)
    • 5.5.1. Polecenia przygotowane (300)
    • 5.5.2. Odczyt i zapis dużych obiektów (306)
    • 5.5.3. Sekwencje sterujące (308)
    • 5.5.4. Zapytania o wielu zbiorach wyników (309)
    • 5.5.5. Pobieranie wartości kluczy wygenerowanych automatycznie (310)
  • 5.6. Przewijalne i aktualizowalne zbiory wyników zapytań (311)
    • 5.6.1. Przewijalne zbiory wyników (311)
    • 5.6.2. Aktualizowalne zbiory rekordów (313)
  • 5.7. Zbiory rekordów (318)
    • 5.7.1. Tworzenie zbiorów rekordów (318)
    • 5.7.2. Buforowane zbiory rekordów (319)
  • 5.8. Metadane (322)
  • 5.9. Transakcje (331)
    • 5.9.1. Programowanie transakcji w JDBC (332)
    • 5.9.2. Punkty kontrolne (332)
    • 5.9.3. Aktualizacje wsadowe (333)
  • 5.10. Zaawansowane typy języka SQL (335)
  • 5.11. Zaawansowane zarządzanie połączeniami (336)

Rozdział 6. API dat i czasu (339)

  • 6.1. Oś czasu (340)
  • 6.2. Daty lokalne (343)
  • 6.3. Modyfikatory dat (346)
  • 6.4. Czas lokalny (347)
  • 6.5. Czas strefowy (348)
  • 6.6. Formatowanie i parsowanie (352)
  • 6.7. Współdziałanie ze starym kodem (356)

Rozdział 7. Internacjonalizacja (359)

  • 7.1. Lokalizatory (360)
  • 7.2. Formaty liczb (365)
  • 7.3. Waluty (370)
  • 7.4. Data i czas (372)
  • 7.5. Porządek alfabetyczny i normalizacja (378)
  • 7.6. Formatowanie komunikatów (385)
    • 7.6.1. Formatowanie liczb i dat (385)
    • 7.6.2. Formatowanie z wariantami (387)
  • 7.7. Wczytywanie i wyświetlanie tekstów (389)
    • 7.7.1. Pliki tekstowe (389)
    • 7.7.2. Znaki końca wiersza (389)
    • 7.7.3. Konsola (390)
    • 7.7.4. Pliki dzienników (391)
    • 7.7.5. BOM - znacznik kolejności bajtów UTF-8 (391)
    • 7.7.6. Kodowanie plików źródłowych (392)
  • 7.8. Komplety zasobów (392)
    • 7.8.1. Wyszukiwanie kompletów zasobów (393)
    • 7.8.2. Pliki właściwości (394)
    • 7.8.3. Klasy kompletów zasobów (395)
  • 7.9. Kompletny przykład (397)

Rozdział 8. Skrypty, kompilacja i adnotacje (413)

  • 8.1. Skrypty na platformie Java (413)
    • 8.1.1. Wybór silnika skryptów (414)
    • 8.1.2. Wykonywanie skryptów i wiązania zmiennych (415)
    • 8.1.3. Przekierowanie wejścia i wyjścia (417)
    • 8.1.4. Wywoływanie funkcji i metod skryptów (418)
    • 8.1.5. Kompilacja skryptu (420)
    • 8.1.6. Przykład: skrypty i graficzny interfejs użytkownika (420)
  • 8.2. Interfejs kompilatora (425)
    • 8.2.1. Kompilacja w najprostszy sposób (426)
    • 8.2.2. Stosowanie zadań kompilacji (426)
    • 8.2.3. Przykład: dynamiczne tworzenie kodu w języku Java (432)
  • 8.3. Stosowanie adnotacji (436)
    • 8.3.1. Wprowadzenie do stosowania adnotacji (437)
    • 8.3.2. Przykład: adnotacje obsługi zdarzeń (438)
  • 8.4. Składnia adnotacji (443)
    • 8.4.1. Interfejsy adnotacji (443)
    • 8.4.2. Adnotacje (445)
    • 8.4.3. Adnotacje deklaracji (446)
    • 8.4.4. Adnotacje zastosowań typów (447)
    • 8.4.5. Adnotacje i this (449)
  • 8.5. Adnotacje standardowe (450)
    • 8.5.1. Adnotacje kompilacji (451)
    • 8.5.2. Adnotacje zarządzania zasobami (451)
    • 8.5.3. Metaadnotacje (452)
  • 8.6. Przetwarzanie adnotacji w kodzie źródłowym (455)
    • 8.6.1. Procesory adnotacji (455)
    • 8.6.2. Interfejs programowy modelu języka (455)
    • 8.6.3. Stosowanie adnotacji do generacji kodu źródłowego (456)
  • 8.7. Inżynieria kodu bajtowego (459)
    • 8.7.1. Modyfikowanie plików klasowych (459)
    • 8.7.2. Modyfikacja kodu bajtowego podczas ładowania (464)

Rozdział 9. Bezpieczeństwo (467)

  • 9.1. Ładowanie klas (468)
    • 9.1.1. Proces wczytywania plików klas (468)
    • 9.1.2. Hierarchia klas ładowania (469)
    • 9.1.3. Zastosowanie procedur ładujących w roli przestrzeni nazw (471)
    • 9.1.4. Implementacja własnej procedury ładującej (473)
    • 9.1.5. Weryfikacja kodu maszyny wirtualnej (478)
  • 9.2. Menedżery bezpieczeństwa i pozwolenia (483)
    • 9.2.1. Sprawdzanie uprawnień (483)
    • 9.2.2. Bezpieczeństwo na platformie Java (484)
    • 9.2.3. Pliki polityki bezpieczeństwa (487)
    • 9.2.4. Tworzenie własnych klas pozwoleń (495)
    • 9.2.5. Implementacja klasy pozwoleń (496)
  • 9.3. Uwierzytelnianie użytkowników (502)
    • 9.3.1. Framework JAAS (502)
    • 9.3.2. Moduły JAAS (507)
  • 9.4. Podpis cyfrowy (516)
    • 9.4.1. Skróty wiadomości (517)
    • 9.4.2. Podpisywanie wiadomości (520)
    • 9.4.3. Weryfikacja podpisu (522)
    • 9.4.4. Problem uwierzytelniania (524)
    • 9.4.5. Podpisywanie certyfikatów (526)
    • 9.4.6. Żądania certyfikatu (527)
    • 9.4.7. Podpisywanie kodu (528)
  • 9.5. Szyfrowanie (534)
    • 9.5.1. Szyfrowanie symetryczne (534)
    • 9.5.2. Generowanie klucza (536)
    • 9.5.3. Strumienie szyfrujące (541)
    • 9.5.4. Szyfrowanie kluczem publicznym (542)

Rozdział 10. Zaawansowane możliwości pakietu Swing (547)

  • 10.1. Listy (547)
    • 10.1.1. Komponent JList (548)
    • 10.1.2. Modele list (553)
    • 10.1.3. Wstawianie i usuwanie (558)
    • 10.1.4. Odrysowywanie zawartości listy (559)
  • 10.2. Tabele (563)
    • 10.2.1. Najprostsze tabele (563)
    • 10.2.2. Modele tabel (568)
    • 10.2.3. Wiersze i kolumny (571)
    • 10.2.4. Rysowanie i edycja komórek (586)
  • 10.3. Drzewa (598)
    • 10.3.1. Najprostsze drzewa (599)
    • 10.3.2. Modyfikacje drzew i ścieżek drzew (606)
    • 10.3.3. Przeglądanie węzłów (613)
    • 10.3.4. Rysowanie węzłów (615)
    • 10.3.5. Nasłuchiwanie zdarzeń w drzewach (618)
    • 10.3.6. Własne modele drzew (625)
  • 10.4. Komponenty tekstowe (633)
    • 10.4.1. Śledzenie zmian zawartości komponentów tekstowych (634)
    • 10.4.2. Sformatowane pola wejściowe (637)
    • 10.4.3. Komponent JSpinner (653)
    • 10.4.4. Prezentacja HTML za pomocą JEditorPane (661)
  • 10.5. Wskaźniki postępu (667)
    • 10.5.1. Paski postępu (667)
    • 10.5.2. Monitory postępu (670)
    • 10.5.3. Monitorowanie postępu strumieni wejścia (673)
  • 10.6. Organizatory komponentów i dekoratory (678)
    • 10.6.1. Panele dzielone (678)
    • 10.6.2. Panele z kartami (681)
    • 10.6.3. Panele pulpitu i ramki wewnętrzne (687)
    • 10.6.4. Warstwy (703)

Rozdział 11. Zaawansowane możliwości biblioteki AWT (709)

  • 11.1. Potokowe tworzenie grafiki (710)
  • 11.2. Figury (712)
    • 11.2.1. Hierarchia klas Shape (713)
    • 11.2.2. Wykorzystanie klas obiektów graficznych (714)
  • 11.3. Pola (727)
  • 11.4. Ślad pędzla (728)
  • 11.5. Wypełnienia (735)
  • 11.6. Przekształcenia układu współrzędnych (737)
  • 11.7. Przycinanie (743)
  • 11.8. Przezroczystość i składanie obrazów (745)
  • 11.9. Wskazówki operacji graficznych (753)
  • 11.10. Czytanie i zapisywanie plików graficznych (758)
    • 11.10.1. Wykorzystanie obiektów zapisu i odczytu plików graficznych (759)
    • 11.10.2. Odczyt i zapis plików zawierających sekwencje obrazów (763)
  • 11.11. Operacje na obrazach (768)
    • 11.11.1. Dostęp do danych obrazu (769)
    • 11.11.2. Filtrowanie obrazów (775)
  • 11.12. Drukowanie (783)
    • 11.12.1. Drukowanie grafiki (784)
    • 11.12.2. Drukowanie wielu stron (792)
    • 11.12.3. Podgląd wydruku (794)
    • 11.12.4. Usługi drukowania (802)
    • 11.12.5. Usługi drukowania za pośrednictwem strumieni (806)
    • 11.12.6. Atrybuty drukowania (807)
  • 11.13. Schowek (813)
    • 11.13.1. Klasy i interfejsy umożliwiające przekazywanie danych (814)
    • 11.13.2. Przekazywanie tekstu (815)
    • 11.13.3. Interfejs Transferable i formaty danych (818)
    • 11.13.4. Przekazywanie obrazów za pomocą schowka (820)
    • 11.13.5. Wykorzystanie schowka systemowego do przekazywania obiektów Java (824)
    • 11.13.6. Zastosowanie lokalnego schowka do przekazywania referencji obiektów (827)
  • 11.14. Mechanizm "przeciągnij i upuść" (828)
    • 11.14.1. Przekazywanie danych pomiędzy komponentami Swing (829)
    • 11.14.2. Źródła przeciąganych danych (833)
    • 11.14.3. Cele upuszczanych danych (835)
  • 11.15. Integracja z macierzystą platformą (844)
    • 11.15.1. Ekran powitalny (844)
    • 11.15.2. Uruchamianie macierzystych aplikacji pulpitu (849)
    • 11.15.3. Zasobnik systemowy (853)

Rozdział 12. Metody macierzyste (859)

  • 12.1. Wywołania funkcji języka C z programów w języku Java (860)
  • 12.2. Numeryczne parametry metod i wartości zwracane (866)
  • 12.3. Łańcuchy znaków jako parametry (868)
  • 12.4. Dostęp do składowych obiektu (873)
    • 12.4.1. Dostęp do pól instancji (874)
    • 12.4.2. Dostęp do pól statycznych (877)
  • 12.5. Sygnatury (878)
  • 12.6. Wywoływanie metod języka Java (880)
    • 12.6.1. Wywoływanie metod obiektów (880)
    • 12.6.2. Wywoływanie metod statycznych (883)
    • 12.6.3. Konstruktory (884)
    • 12.6.4. Alternatywne sposoby wywoływania metod (885)
  • 12.7. Tablice (886)
  • 12.8. Obsługa błędów (890)
  • 12.9. Interfejs programowy wywołań języka Java (895)
  • 12.10. Kompletny przykład: dostęp do rejestru systemu Windows (900)
    • 12.10.1. Rejestr systemu Windows (900)
    • 12.10.2. Interfejs dostępu do rejestru na platformie Java (902)
    • 12.10.3. Implementacja dostępu do rejestru za pomocą metod macierzystych (902)

Skorowidz (917)

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-283-3480-9
Rozmiar pliku: 9,6 MB

BESTSELLERY

Kategorie: