Baigiamasis atsiskaitymas ir kur toliau
Baigiamasis atsiskaitymas — pademonstruok pilną Pica ir aprašyk, ką pastatei.
Ką pateikti:
- Veikianti programėlė (video arba nuotraukų seka). Pilnas srautas: QR → prisijungimas → meniu → krepšelis → apmokėjimas (Stripe testas) → užsakymų istorija. Su veikiančiu Go backendu.
- Atsparumo įrodymas: meniu offline (talpykla), klaidos būsena be backendo, tuščios būsenos.
- Bent vienas iššūkis iš 3 žingsnio (A, B ar C) — įgyvendintas ir parodytas.
- Pasirašytas leidimas (12 pamoka):
app-release.apk/.aabir įrodymas, kad release versija veikia tikrame įrenginyje. - Architektūros aprašas (½–1 psl.): išsirink vieną operaciją (pvz., „pateikti užsakymą") ir aprašyk jos kelionę per sluoksnius — nuo mygtuko paspaudimo (
Event) iki serverio atsakymo irUiStatepokyčio. Įvardink, kurAuthInterceptorprisega žetoną ir kurTableSessionduoda staliuką.
Vertinimo kriterijai:
| Sritis | Ko tikimasi |
|---|---|
| Pilnas srautas | Visi 8 žingsniai veikia end-to-end |
| Būsenos | Loading/Success/Empty/Error kiekviename ekrane |
| Architektūra | Aiškios sluoksnių kryptys, Koin DI, MVI |
| Plėtinys | Bent vienas iššūkis, tuo pačiu šablonu |
| Leidimas | Pasirašyta, R8, veikia release versijoje |
Kur toliau — sąžininga nuoroda.
Pica pastatyta MVVM + repozitorija + Koin DI. Tai tinkamo dydžio sprendimas, ir tu dabar moki jį iki galo. Kitas žingsnis, kai programėlė ar komanda augs (12 pamokos nuoroda): use-case (interactor) sluoksnis — „Clean Architecture". Įterpiamas tarp ViewModel ir repozitorijos, kai verslo taisyklės ima kauptis ViewModel'iuose. Pica jo nereikia — bet dabar žinai, kas tai ir kada to griebtis.
Taip pat lieka natūralūs plėtiniai: Google prisijungimas (8b — tas pats žetonų kontraktas), push pranešimai apie užsakymo būseną, administratoriaus ekranas.
Sveikinimai. Nuo tuščio Compose ekrano iki pasirašytos, apmokamos, offline veikiančios programėlės su tikru backendu — pastatei tai, ką realiai naudoja restoranai. Tai ir yra visas kelias: UI → būsena → duomenys → tinklas → gamyba.