Projektowanie, tworzenie i testowanie aplikacji mobilnych na platformie Android

Kod: android-core
Kategoria: Android
Forma: 40% wykłady / 60% warsztaty
Czas trwania: 4 dni
Grupa docelowa: developerzy
Logistyka: W siedzibie klienta lub w innym dowolnym miejscu.
Data i dokładny zakres do ustalenia podczas analizy przed-szkoleniowej.

Szkolenie zostało przygotowane z myślą o programistach Java pragnących rozpocząć pracę na platformie Java oraz rozwinąć kompetencje do poziomu biegłego.

Szkolenie zawiera szereg praktycznych rozwiązań opracowanych na podstawie doświadczeń w dojrzałych projektach.

Program szkolenia został rozszerzony o aspekty architektury, wzorców i testowania automatycznego.

Materiały wstępne

Przed szkoleniem możesz zapoznać się z serią naszych artykułów: Zaawansowane programowanie na platformie Android.

Wyróżniki szkolenia

Podczas zajęć możesz oczekiwać szczególnych akcentów położonych na poniższe aspekty:

  • Aspekty wydajności
  • Architektura i wzorce projektowe
  • Typowe pułapki oraz najlepsze praktyki

Program Szkolenia

Program jest ramą w jakiej możemy się poruszać merytorycznie - program dla konkretnego szkolenia dedykowanego ustalamy z grupą na podstawie analizy przed-szkoleniowej.

  1. Podstawy systemu Android.
    1. Historia systemu.
    2. Podstawy budowy platformy Android.
    3. Architektura systemu - podstawowe komponenty.
    4. Komunikacja pomiędzy komponentami aplikacji.
    5. Struktura projektu aplikacji.
    6. Komunikacja pomiędzy aplikacjami zainstalowanymi w systemie.
  2. Architektura aplikacji.
    1. Wzorzec Mediator.
    2. Layers.
    3. Ports and Adapters.
  3. Zasoby aplikacji androidowych.
    1. Przegląd rodzajów zasobów.
    2. Sposoby przechowywania grafiki.
    3. Odwoływanie się do zasobów.
    4. Uzależnienie zasobów od konfiguracji urządzenia.
  4. Optymalizacja aplikacji i poszukiwanie błędów z użyciem narzędzi deweloperskich.
    1. Przegląd narzędzi developerskich dostarczonych z Android SDK.
  5. Projektowanie i implementacja warstwy prezentacji aplikacji.
    1. Budowanie interfejsu użytkownika za pomocą widoków.
      1. Deklaratywne budowanie interfejsu użytkownika.
      2. Budowanie widoków z użyciem kodu w Javie.
      3. Obsługa cyklu życia widoków.
      4. Projektowanie czytelnego interfejsu użytkownika.
      5. Obsługa zdarzeń interfejsu użytkownika.
    2. Budowa ekranów interfejsu użytkownika z wykorzystaniem Activity.
      1. Implementacja Activity.
      2. Obsługa cyklu życia.
      3. Uruchamianie czynności.
      4. Projektowanie przepływu (flow) w aplikacji.
      5. Obsługa stosu Activity.
      6. Zapisywanie i odtwarzanie stanu aplikacji.
    3. Budowa interfejsów użytkownika na wiele typów urządzeń (smartphone, tablet, tv) z wykorzystaniem Fragmentów.
      1. Tworzenie i używanie Fragmentów.
      2. Obsługa cyklu życia Fragmentów.
      3. Manipulacja Fragmentami.
      4. Komunikacja pomiędzy Fragmentami a Activity.
    4. Używanie widoków opartych na adapterach w celu zaprezentowania na ekranie dużej ilości danych.
      1. ListView
      2. GridView
      3. Spinner
    5. Interakcja użytkownika z aplikacją za pomocą Menu i Akcji “podręcznych”.
      1. Tworzenie i obsługa Menu.
      2. Używanie ActionBara.
      3. Sposoby nawigacji po aplikacji z użyciem ActionBara.
    6. Informowanie użytkownika o zdarzeniach za pomocą okien dialogowych i powiadomień (Notifications)
      1. Tworzenie okien dialogowych.
      2. Komunikacja dialogów z Activity.
      3. Użycie powiadomień systemowych.
    7. Stylowanie wyglądu aplikacji.
      1. Deklaratywna definicja stylów.
      2. Rozszerzanie stylów znajdujących się na urządzeniu.
    8. Rysowanie interfejsu użytkownika oraz obsługa elementów graficznych i animacji.
      1. Sposoby rysowania interfejsu użytkownika.
      2. Tworzenie deklaratywnych zasobów graficznych.
      3. Tworzenie skalowalnych zasobów graficznych (9 patch).
      4. Wczytywanie obrazów z zewnętrznych źródeł.
      5. Tworzenie zasobów animacji.
      6. Uruchamianie i obsługa animacji.
    9. Tworzenie interfejsu do zarządzania ustawieniami użytkownika.
    10. Obsługa asynchronicznych operacji w warstwie prezentacji.
  6. Trwały zapis danych użytkownika.
    1. Użycie SharedPreferences do zapisu ustawień użytkownika.
    2. Obsługa plików w systemie Android.
    3. Zapis i odczyt danych z External i Internal Storage.
    4. Użycie bazy danych SQLite do zarządzania danymi użytkownika.
      1. Tworzenie relacyjnych baz danych.
      2. Tworzenie i wykonywanie zapytań do bazy danych i obsługa ich parametrów.
    5. Zarządzanie danymi aplikacji z użyciem Content Providera.
      1. Sposoby dostępu do danych.
      2. Obsługa nośnika danych - Cursora.
      3. Dostęp do danych publikowanych przez inne aplikacje.
      4. Tworzenie warstwy dostępu do danych.
      5. Implementacja bazy SQLite jako źródła danych.
      6. Obserwowanie zmian danych i aktualizacja interfejsu użytkownika w przypadku wystąpienia zmian.
      7. Testowanie warstwy dostępu do danych.
    6. Asynchroniczny dostęp do danych za pomocą Loaderów.
  7. Wykonywanie długotrwałych operacji w tle.
    1. Tworzenie usług (Service) wykonujących czynności w tle.
    2. Uruchamianie i zarządzanie usługami.
    3. Obsługa cyklu życia usługi.
    4. Tworzenie usług wielowątkowych.
    5. Powiadamianie użytkownika o rezultacie wykonywanych w tle operacji.
  8. Analiza obsługi procesów i wątków w systemie Android.
    1. Tworzenie aplikacji, które są płynne w użyciu dzięki odpowiedniemu zarządzaniu wątkami.
  9. Bezpieczeństwo systemu i aplikacji.
    1. Analiza modelu bezpieczeństwa Androida.
    2. Używanie pozwoleń (Permissions) w celu uzyskania dostępu do zasobów urządzenia.
    3. Ochrona dostępu do komponentów aplikacji.
    4. Definicja i używanie własnych pozwoleń.
  10. Komunikacja aplikacji z usługami zewnętrznymi.
    1. Architektura systemów rozproszonych.
    2. Łączenie się z usługami zewnętrznymi za pomocą socketów.
    3. Komunikacja z usługami zewnętrznymi z użyciem protokołu HTTP i serializacji JSON.
  11. Utrzymanie kompatybilności ze starszymi urządzeniami.
    1. Użycie biblioteki kompatybilności wstecznej support-v4.
    2. Użycie zewnętrznej biblioteki implementującej ActionBar na starszych urządzeniach - ActionBarSherlock.
  12. Publikacja aplikacji w Google Play.
    1. Proces optymalizacji aplikacji.
    2. Podpisywanie aplikacji.
    3. Umieszczanie aplikacji w sklepie Google Play.
  13. Testowanie automatyczne.
    1. Testy jednostkowe.
    2. Testy akceptacyjne.


Pobierz program w formacie PDF

Trenerzy

Poznaj ekspertów, którzy mogą poprowadzić Twoje szkolenie.

Materiały związane ze szkoleniem

Idea renesansowej pracowni - Bottegi zakłada nieustanną pracę jej członków i dzielenie się jej wynikami.

Zapytaj o szkolenie

Imię i nazwisko:
Firma:
E-mail/Nr tel:
Temat:
Wiadomość:

Jeżeli preferujesz osobisty kontakt to zawsze możesz zadzwonić.

Iwona Sobótka

Koordynatorka szkoleń