FLUTTER I DART 2 DLA POCZĄTKUJĄCYCH

80.10

Na stanie

Spis treści

O autorze 13

O recenzencie 15

Przedmowa 17

CZĘŚĆ I. WPROWADZENIE DO JĘZYKA DART 21

Rozdział 1. Wprowadzenie do języka Dart 23

  • Pierwsze kroki z językiem Dart 23
    • Ewolucja Darta 24
    • Jak działa Dart 25
    • Dart w praktyce 26
  • Dlaczego Flutter korzysta z języka Dart 29
    • Zwiększanie produktywności 29
    • Łatwa nauka 30
    • Dojrzałość 32
  • Podstawy języka Dart 33
    • Operatory 33
    • Przepływ sterowania i pętle 41
    • Funkcje 42
    • Struktury danych, kolekcje i typy ogólne 45
  • Wprowadzenie do OOP w języku Dart 47
    • Właściwości OOP 47
  • Podsumowanie 50
  • Dalsza lektura 50

Rozdział 2. Średnio zaawansowane programowanie w języku Dart 51

  • Klasy i konstruktory w języku Dart 52
    • Typ wyliczeniowy enum 53
    • Notacja kaskadowa 53
    • Konstruktory 54
    • Metody dostępu – pobierające i ustawiające 56
    • Pola i metody statyczne 57
    • Dziedziczenie klas 59
  • Interfejsy, klasy abstrakcyjne i domieszki 60
    • Klasy abstrakcyjne 60
    • Interfejsy 61
    • Domieszki – dodawanie zachowania do klasy 62
    • Klasy wywoływane, funkcje najwyższego poziomu i zmienne 64
  • Biblioteki i pakiety języka Dart 66
    • Importowanie i korzystanie z biblioteki 66
    • Tworzenie bibliotek Darta 70
    • Pakiety Darta 76
    • Struktury pakietów 77
    • Stagehand – generator projektów Darta 80
    • Plik pubspec 81
    • Zależności pakietów – pub 82
  • Wprowadzenie do programowania asynchronicznego z wykorzystaniem obiektów Future i Isolate 86
    • Obiekty Future 86
    • Obiekty Isolate 89
  • Wprowadzenie do testów jednostkowych w języku Dart 91
    • Pakiet test Darta 92
    • Pisanie testów jednostkowych 92
  • Podsumowanie 94

Rozdział 3. Wprowadzenie do Fluttera 95

  • Porównanie z innymi platformami do tworzenia aplikacji mobilnych 96
    • Problemy, które Flutter chce rozwiązać 96
    • Różnice między istniejącymi frameworkami 97
  • Kompilacja Fluttera (Dart) 103
    • Kompilacja w fazie rozwoju oprogramowania 103
    • Kompilacja dla wersji release 103
    • Obsługiwane platformy 103
  • Renderowanie Fluttera 104
    • Technologie webowe 104
    • Frameworki i widżety OEM 105
    • Flutter – renderowanie samodzielnie 106
  • Wprowadzenie do widżetów 106
    • Kompatybilność 107
    • Niezmienność 107
    • Wszystko jest widżetem 107
  • Hello Flutter 109
    • Plik pubspec 111
    • Uruchomienie wygenerowanego projektu 113
  • Podsumowanie 115

CZĘŚĆ II. INTERFEJS UŻYTKOWNIKA FLUTTERA – WSZYSTKO JEST WIDŻETEM 117

Rozdział 4. Widżety: tworzenie layoutów Fluttera 119

  • Widżety stanowe i bezstanowe 119
    • Widżety bezstanowe 120
    • Widżety stanowe 121
    • Reprezentowanie widżetów stanowych i bezstanowych za pomocą kodu 121
    • Widżety dziedziczone 126
    • Właściwość key widżetu 127
  • Widżety wbudowane 128
    • Widżety podstawowe 128
  • Wprowadzenie do wbudowanych widżetów layoutu 133
    • Kontenery 133
    • Stylizacja i pozycjonowanie 134
    • Inne widżety (gesty, animacje i transformacje) 134
  • Tworzenie interfejsu użytkownika za pomocą widżetów (aplikacja do zarządzania przysługami) 135
    • Ekrany aplikacji 135
    • Ekran główny aplikacji 136
    • Ekran prośby o przysługę 144
  • Tworzenie niestandardowych widżetów 147
  • Podsumowanie 149

Rozdział 5. Obsługa danych wejściowych i gestów użytkownika 151

  • Obsługa gestów użytkownika 151
    • Wskaźniki 152
    • Gesty 152
    • Gesty w widżetach Material Design 157
  • Widżety danych wejściowych 157
    • FormField i TextField 158
    • Form 160
  • Walidacja danych wejściowych (Form) 162
    • Walidacja danych użytkownika 162
  • Niestandardowa obsługa danych wejściowych i FormField 163
    • Tworzenie niestandardowej obsługi danych wejściowych 163
    • Przykład niestandardowego widżetu danych wejściowych 163
  • Łączymy wszystko razem 167
    • Ekran przysług 167
    • Ekran prośby o przysługę 173
  • Podsumowanie 175

Rozdział 6. Motyw i styl 177

  • Widżety motywu 177
    • Widżet Theme 178
    • Tworzenie motywu w praktyce 180
    • Klasa Platform 182
  • Material Design 183
    • Widżet MaterialApp 184
    • Widżet Scaffold 186
    • Motyw niestandardowy 187
  • iOS Cupertino 189
    • CupertinoApp 189
    • Cupertino w praktyce 190
  • Korzystanie z niestandardowych czcionek 191
    • Importowanie czcionek do projektu Fluttera 191
    • Zastępowanie domyślnej czcionki w aplikacji 193
  • Dynamiczne style z MediaQuery i LayoutBuilder 193
    • LayoutBuilder 194
    • MediaQuery 196
    • Dodatkowe klasy responsywne 199
  • Podsumowanie 199

Rozdział 7. Routing: nawigacja między ekranami 201

  • Omówienie widżetu Navigator 201
    • Navigator 202
    • Overlay 202
    • Route 203
    • MaterialPageRoute i CupertinoPageRoute 203
    • Przykład 203
    • WidgetsApp 207
  • Trasy nazwane (named routes) 208
    • Obsługa tras nazwanych 208
    • Pobieranie wyników z Route 210
  • Przejścia między ekranami 212
    • PageRouteBuilder 212
  • Animacje Hero 214
    • Widżet hero 214
    • Implementacja przejść Hero 215
  • Podsumowanie 221

CZĘŚĆ III. TWORZENIE PROFESJONALNYCH APLIKACJI 223

Rozdział 8. Wtyczki Firebase 225

  • Omówienie Firebase 225
    • Konfigurowanie Firebase 226
    • Łączenie aplikacji Fluttera z Firebase 229
  • Uwierzytelnianie Firebase 233
    • Włączanie usług uwierzytelniania w Firebase 233
    • Ekran uwierzytelniania 235
    • Logowanie za pomocą Firebase 236
  • Baza danych NoSQL z Cloud Firestore 241
    • Włączanie Cloud Firestore w Firebase 241
    • Cloud Firestore i Flutter 243
    • Ładowanie przysług z Firestore 243
    • Aktualizowanie przysług w Firebase 246
    • Zapis przysługi w Firebase 246
  • Cloud Storage z Firebase Storage 248
    • Wprowadzenie do Firebase Storage 248
    • Dodawanie zależności Flutter Storage 249
    • Przesyłanie plików do Firebase 249
  • Reklamy z Firebase AdMob 252
    • Konto AdMob 252
    • Tworzenie konta AdMob 253
    • AdMob we Flutterze 255
    • Wyświetlanie reklam we Flutterze 258
  • Uczenie maszynowe z wykorzystaniem Firebase ML 260
    • Dodanie zestawu uczenia maszynowego do Fluttera 260
    • Korzystanie z detektora etykiet we Flutterze 261
  • Podsumowanie 263

Rozdział 9. Tworzenie własnej wtyczki Fluttera 265

  • Tworzenie projektu pakietu/wtyczki 265
    • Pakiety Fluttera a pakiety Dart 266
    • Rozpoczynanie projektu pakietu Dart 266
    • Uruchamianie pakietu wtyczek Fluttera 268
  • Struktura projektu wtyczki 268
    • MethodChannel 269
    • Wdrożenie wtyczki Androida 270
    • Implementacja wtyczki iOS 271
    • API Darta 272
    • Przykład pakietu wtyczek 272
    • Korzystanie z wtyczki 273
  • Dodanie dokumentacji do pakietu 274
    • Pliki dokumentacji 274
    • Dokumentacja biblioteki 274
    • Generowanie dokumentacji 275
  • Publikowanie pakietu 275
  • Zalecenia dotyczące tworzenia projektu wtyczki 276
  • Podsumowanie 276

Rozdział 10. Dostęp do funkcji urządzenia z aplikacji Fluttera 279

  • Uruchomienie adresu URL z aplikacji 279
    • Wyświetlanie linku 280
    • Uruchomienie adresu URL 282
  • Zarządzanie uprawnieniami aplikacji 284
    • Zarządzanie uprawnieniami we Flutterze 284
  • Importowanie kontaktu z telefonu 285
    • Importowanie kontaktu za pomocą contact_picker 286
    • Uprawnienia do kontaktu za pomocą permission_handler 288
  • Integracja aparatu w telefonie 289
    • Robienie zdjęć za pomocą image_picker 290
    • Uprawnienia do aparatu za pomocą permission_handler 291
  • Podsumowanie 292

Rozdział 11. Widoki platformy oraz integracja mapy 295

  • Wyświetlanie mapy 295
    • Widoki platformy 296
    • Tworzenie widżetu widoku platformy 297
    • Pierwsze kroki z wtyczką google_maps_flutter 301
  • Dodawanie znaczników do mapy 308
    • Klasa Marker 308
    • Dodawanie znaczników w widżecie GoogleMap 309
  • Dodawanie interakcji na mapie 311
    • Dynamiczne dodawanie znaczników 311
    • GoogleMapController 312
    • Pobieranie GoogleMapController 312
    • Animowanie kamery mapy do lokalizacji 312
  • Korzystanie z interfejsu API Google Places 313
    • Włączanie API Google Places 313
    • Pierwsze kroki z wtyczką google_maps_webservice 314
    • Uzyskiwanie adresu miejsca za pomocą wtyczki google_maps_webservice 314
  • Podsumowanie 316

CZĘŚĆ IV. ZAAWANSOWANY FLUTTER – ZASOBY DLA ZŁOŻONYCH APLIKACJI 319

Rozdział 12. Testowanie, debugowanie i wdrażanie 321

  • Testowanie we Flutterze – testy jednostkowe oraz widżetów 321
    • Testy widżetów 322
  • Debugowanie aplikacji Fluttera 324
    • Observatory 325
    • Dodatkowe funkcje debugowania 326
    • DevTools 327
  • Profilowanie aplikacji Fluttera 329
    • Profiler Observatory 329
    • Tryb profilowania 329
  • Sprawdzanie drzewa widżetów Fluttera 331
    • Inspektor widżetów 332
  • Przygotowywanie aplikacji do wdrożenia 333
    • Tryb wydania (release mode) 334
    • Wydawanie aplikacji na Androida 334
  • Wydawanie aplikacji na iOS 339
    • App Store Connect 339
    • Xcode 340
  • Podsumowanie 341

Rozdział 13. Poprawa komfortu użytkowania 343

  • Dostępność we Flutterze i dodawanie tłumaczeń do aplikacji 343
    • Wsparcie Fluttera dla dostępności 344
    • Internacjonalizacja Fluttera 344
    • Dodawanie lokalizacji do aplikacji Fluttera 345
  • Komunikacja między kodem natywnym a Flutterem z wykorzystaniem kanałów platformy 351
    • Kanał platformy 351
    • Kodeki wiadomości 353
  • Tworzenie procesów pracujących w tle 354
    • Funkcja Fluttera compute() 354
    • Przykład compute() 355
    • Proces pracujący w tle 356
    • Inicjalizacja obliczeń 357
  • Dodanie kodu specyficznego dla systemu Android w celu uruchomienia kodu Darta w tle 360
    • Klasa HandsOnBackgroundProcessPlugin 360
    • Klasa BackgroundProcessService 362
  • Dodanie kodu specyficznego dla systemu iOS w celu uruchomienia kodu Darta w tle 365
    • Klasa SwiftHandsOnBackgroundProcessPlugin 366
  • Podsumowanie 370

Rozdział 14. Operacje graficzne na widżetach 371

  • Transformacje widżetów za pomocą klasy Transform 371
    • Widżet Transform 372
  • Rodzaje transformacji 373
    • Obrót 373
    • Skalowanie 374
    • Translacja 375
    • Transformacje złożone 376
  • Stosowanie transformacji do widżetów 377
    • Obracanie widżetów 377
    • Skalowanie widżetów 378
    • Translowanie widżetów 378
    • Stosowanie wielu transformacji 379
  • Korzystanie z niestandardowych malarzy i elementów canvas 380
    • Klasa Canvas 380
    • Widżet CustomPaint 382
    • Obiekt CustomPainter 383
    • Praktyczny przykład 384
    • Wariant wykresu radialnego 389
  • Podsumowanie 393

Rozdział 15. Animacje 395

  • Wprowadzenie do animacji 395
    • Klasa Animation 395
  • Korzystanie z animacji 398
    • Animacja obrotu 398
    • Animacja skalowania 401
    • Animacja translacji 403
    • Wiele transformacji i niestandardowy Tween 404
  • Korzystanie z AnimatedBuilder 408
    • Klasa AnimatedBuilder 409
    • Powrót do naszej animacji 409
  • Korzystanie z AnimatedWidget 412
    • Klasa AnimatedWidget 412
    • Przepisanie animacji za pomocą AnimatedWidget 412
  • Podsumowanie 413
Autor

ISBN

978-83-283-7825-4

Liczba stron

Rok wydania

Wydawca

Opinie

Na razie nie ma opinii o produkcie.

Napisz pierwszą opinię o „FLUTTER I DART 2 DLA POCZĄTKUJĄCYCH”

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *