Facebook - konwersja
Pobierz fragment

Android. Aplikacje wielowątkowe. Techniki przetwarzania - ebook

Wydawnictwo:
Tłumacz:
Data wydania:
24 lutego 2015
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
49,00

Android. Aplikacje wielowątkowe. Techniki przetwarzania - ebook

Wykorzystaj w pełni potencjał wątków!

Jeżeli chcesz tworzyć aplikacje dostarczające użytkownikom doskonałych wrażeń, jeżeli chcesz wykonywać skomplikowane zadania szybciej lub po prostu musisz jednocześnie wykonywać różne działania — naucz się korzystać z wątków. Tworzenie programów wielowątkowych jest trudne, ale opanowanie tej sztuki pozwoli Ci osiągnąć wymierne korzyści!

Ta książka w całości poświęcona jest korzystaniu z wątków na platformie Android. Dzięki niej poznasz przeróżne sposoby asynchronicznego przetwarzania oraz ich zalety i wady. Jednak na samym początku zapoznasz się z podstawowymi informacjami dotyczącymi wielowątkowości w języku Java. Dowiesz się, w jaki sposób wątki komunikują się ze sobą i synchronizują dostęp do zasobów oraz jak nimi zarządzać. Kolejne rozdziały zawierają sporą dawkę wiedzy na temat różnych technik asynchronicznych. Zapoznanie się z ich treścią ułatwi Ci wybór techniki, która spełni Twoje wymagania, gdy sam zabierzesz się za tworzenie aplikacji wielowątkowej. Książka ta jest obowiązkową lekturą dla programistów chcących w pełni wykorzystać możliwości platformy Android.

  • Podstawy wielowątkowości w Javie i systemie Android.
  • Komunikacja wątków w obrębie procesu i pomiędzy procesami.
  • Zastosowanie strategii redukowania ryzyka powstawania wycieków pamięci.
  • Zarządzanie cyklem życia wątku podstawowego.
  • Sekwencyjne uruchamianie zadań w wątku tła za pomocą klasy HandlerThread.
  • Używanie frameworku wykonawcy Javy do kontrolowania i anulowania wątków.
  • Obsługa wykonywania zadań w tle za pomocą klas AsyncTask oraz IntentService.
  • Uzyskiwanie dostępu do dostawców treści za pomocą klasy AsyncQueryHandler.
  • Używanie ładowarek do aktualizowania interfejsu użytkownika nowymi danymi.

Przewodnik po świecie wątków platformy Android!

Spis treści

Przedmowa (11)

1. Komponenty systemu Android oraz potrzeba przetwarzania wieloprocesorowego (15)

  • Stos programowy systemu Android (15)
  • Architektura aplikacji (16)
    • Aplikacja (17)
    • Komponenty (17)
  • Wykonywanie aplikacji (19)
    • Procesy systemu Linux (19)
    • Cykl życia (20)
  • Strukturyzacja aplikacji w celu zwiększenia wydajności (23)
    • Tworzenie aplikacji responsywnych za pomocą wątków (23)
  • Podsumowanie (25)

CZĘŚĆ I. PODSTAWY (27)

2. Wielowątkowość w Javie (29)

  • Podstawy wątków (29)
    • Wykonywanie (29)
    • Aplikacja jednowątkowa (30)
    • Aplikacja wielowątkowa (31)
  • Bezpieczeństwo wątków (33)
    • Blokada wewnętrzna i monitor Javy (34)
    • Synchronizowanie dostępu do zasobów współdzielonych (35)
    • Przykład: konsument i producent (37)
  • Strategie wykonywania zadań (38)
    • Model wykonywania współbieżnego (39)
  • Podsumowanie (40)

3. Wątki w systemie Android (41)

  • Wątki aplikacji w systemie Android (41)
    • Wątki interfejsu użytkownika (41)
    • Wątki wiązania (42)
    • Wątki w tle (42)
  • Proces i wątki systemu Linux (43)
    • Szeregowanie (45)
  • Podsumowanie (48)

4. Komunikacja wątków (49)

  • Potoki (49)
    • Podstawowe zastosowanie potoków (50)
    • Przykład: przetwarzanie tekstu w wątku roboczym (51)
  • Pamięć współdzielona (53)
    • Sygnalizacja (54)
  • Interfejs BlockingQueue (55)
  • Przesyłanie komunikatów w systemie Android (56)
    • Przykład: podstawowe przesyłanie komunikatów (57)
    • Klasy stosowane w przesyłaniu komunikatów (59)
    • Komunikaty (63)
    • Looper (66)
    • Handler (67)
    • Usuwanie komunikatów z kolejki (75)
    • Obserwowanie kolejki komunikatów (76)
  • Komunikacja z wątkiem interfejsu użytkownika (79)
  • Podsumowanie (80)

5. Komunikacja między procesami (81)

  • RPC systemu Android (81)
    • Binder (82)
  • Język AIDL (83)
    • Synchroniczne wywołanie RPC (84)
    • Asynchroniczne wywołanie RPC (86)
  • Przekazywanie komunikatów za pomocą obiektu Binder (88)
    • Komunikacja jednokierunkowa (89)
    • Komunikacja dwukierunkowa (91)
  • Podsumowanie (92)

6. Zarządzanie pamięcią (93)

  • Odzyskiwanie pamięci (93)
  • Wycieki pamięci związane z wątkiem (95)
    • Wykonywanie wątku (96)
    • Komunikacja wątków (101)
  • Unikanie wycieków pamięci (103)
    • Korzystanie ze statycznych klas wewnętrznych (104)
    • Korzystanie ze słabych referencji (104)
    • Zatrzymywanie wykonywania wątku roboczego (105)
    • Zachowanie wątków roboczych (105)
    • Czyszczenie kolejki komunikatów (105)
  • Podsumowanie (106)

CZĘŚĆ II. TECHNIKI ASYNCHRONICZNE (107)

7. Zarządzanie cyklem życia wątku podstawowego (109)

  • Podstawy (109)
    • Cykl życia (109)
    • Przerwania (110)
    • Wyjątki nieprzechwycone (112)
  • Zarządzanie wątkami (113)
    • Definiowanie i uruchamianie (113)
    • Retencja (115)
  • Podsumowanie (120)

8. Klasa HandlerThread: wysokopoziomowy mechanizm kolejkowania (121)

  • Podstawy (121)
  • Cykl życia (123)
  • Przypadki użycia (124)
    • Powtarzające się wykonywanie zadania (124)
    • Zadania powiązane (125)
    • Łańcuchowanie zadań (127)
    • Warunkowe wstawianie zadania (129)
  • Podsumowanie (130)

9. Kontrola wykonywania wątku za pomocą frameworku wykonawcy (131)

  • Interfejs Executor (131)
  • Pule wątków (133)
    • Predefiniowane pule wątków (134)
    • Niestandardowe pule wątków (135)
    • Projektowanie puli wątków (136)
    • Cykl życia (139)
    • Zamykanie puli wątków (140)
    • Przypadki użycia i pułapki pul wątków (141)
  • Zarządzanie zadaniami (143)
    • Reprezentacja zadania (143)
    • Zatwierdzanie zadań (144)
    • Odrzucanie zadań (147)
  • Klasa ExecutorCompletionService (148)
  • Podsumowanie (150)

10. Wiązanie zadania w tle z wątkiem interfejsu użytkownika za pomocą klasy AsyncTask (151)

  • Podstawy (151)
    • Tworzenie i uruchamianie (154)
    • Anulowanie (154)
    • Stany (155)
  • Implementacja klasy AsyncTask (156)
    • Przykład: pobieranie obrazów (157)
  • Wykonywanie zadania w tle (160)
    • Wykonywanie globalne dla aplikacji (161)
    • Wykonywanie zadań w różnych wersjach platformy (162)
    • Wykonywanie niestandardowe (164)
  • Alternatywy dla klasy AsyncTask (165)
    • Trywialne implementacje klasy AsyncTask (165)
    • Zadania w tle wymagające instancji Looper (166)
    • Usługa lokalna (166)
    • Korzystanie z metody execute(Runnable) (167)
  • Podsumowanie (167)

11. Usługi (169)

  • Dlaczego warto wykorzystać komponent Service do wykonywania asynchronicznego? (169)
  • Usługi lokalne, zdalne i globalne (171)
  • Tworzenie i wykonywanie (172)
  • Cykl życia (173)
  • Usługa uruchamiana (174)
    • Implementacja metody onStartCommand (175)
    • Opcje ponownego uruchamiania (176)
    • Usługa kontrolowana przez użytkownika (178)
    • Usługa kontrolowana przez zadanie (181)
  • Usługa wiązana (183)
    • Wiązanie lokalne (184)
  • Wybór techniki asynchronicznej (187)
  • Podsumowanie (188)

12. Klasa IntentService (189)

  • Podstawy (189)
  • Dobre sposoby wykorzystania klasy IntentService (190)
    • Zadania uporządkowane sekwencyjnie (191)
    • Wykonywanie asynchroniczne w komponencie BroadcastReceiver (193)
  • Porównanie klas IntentService oraz Service (196)
  • Podsumowanie (196)

13. Uzyskiwanie dostępu do klasy ContentProvider za pomocą klasy AsyncQueryHandler (197)

  • Krótkie wprowadzenie do klasy ContentProvider (197)
  • Uzasadnienie dla przetwarzania w tle klasy ContentProvider (199)
  • Korzystanie z klasy AsyncQueryHandler (200)
    • Przykład: rozszerzanie listy kontaktów (201)
    • Klasa AsyncQueryHandler (204)
    • Ograniczenia (205)
  • Podsumowanie (205)

14. Automatyczne wykonywanie w tle za pomocą ładowarek (207)

  • Framework ładowarek (208)
    • Klasa LoaderManager (209)
    • Interfejsy LoaderCallbacks (211)
    • Klasa AsyncTaskLoader (213)
  • Bezproblemowe ładowanie danych za pomocą ładowarki CursorLoader (213)
    • Korzystanie z ładowarki CursorLoader (214)
    • Przykład: lista kontaktów (214)
    • Dodawanie obsługi operacji CRUD (215)
  • Implementowanie niestandardowych ładowarek (219)
    • Cykl życia ładowarki (219)
    • Ładowanie w tle (220)
    • Zarządzanie treścią (222)
    • Dostarczanie zbuforowanych rezultatów (223)
    • Przykład: niestandardowa ładowarka plików (223)
    • Obsługa wielu ładowarek (226)
  • Podsumowanie (227)

15. Podsumowanie: wybór techniki asynchronicznej (229)

  • Zachowanie prostoty (230)
  • Zarządzanie zasobami i wątkami (230)
  • Wymiana komunikatów w celu uzyskania responsywności (231)
  • Unikanie nieoczekiwanego zakończenia zadania (231)
  • Łatwy dostęp do klasy ContentProvider (232)

A. Bibliografia (235)

Skorowidz (237)

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-246-9615-4
Rozmiar pliku: 3,4 MB

BESTSELLERY

Kategorie: