ANG PANGUNAHING IDEYA
Piliin ang channel na nagpapadali sa gawain ng user. Ang pagkakaroon ng listing ng app-store ay hindi, sa sarili nitong dahilan, para bumuo ng app.
Magsimula sa likas na katangian ng pagbisita
Ang isang taong nakatuklas sa iyong mga serbisyo ay nangangailangan ng mabilis na ruta mula sa isang link o search engine, isang malinaw na mensahe at isang hakbang sa pakikipag-ugnayan. Ang isang empleyado na namamahala sa mga transaksyon ay nangangailangan ng mga estado, pag-filter at mga pahintulot. Parehong maaaring magmukhang mga page ng browser, ngunit magkaiba ang kanilang mga modelo ng data at pagsubok. Ang desisyon ay hindi lamang tungkol sa hitsura sa isang telepono.
Ano ang idinaragdag ng PWA?
Ang PWA ay isang diskarte sa isang karanasan sa web na maaaring gumamit ng mga kakayahan tulad ng pag-install at ilang offline na gawi, depende sa pagpapatupad, browser at platform. Ito ay hindi isang wika at hindi awtomatikong nagbibigay ng bawat native na kakayahan ng platform. Subukan ang mga kinakailangang feature sa aktwal na mga device, lalo na ang mga notification, storage, pag-synchronize at gawi sa background, sa halip na ipagpalagay ang magkaparehong suporta.
Ang paggamit ng offline ay isang desisyon sa data
Ang pagpapakita ng naka-cache na pahina ay mas simple kaysa sa pag-edit ng isang tala at pag-synchronize nito nang ligtas. Ano ang maaaring basahin o baguhin offline? Ano ang mangyayari kapag na-edit ng dalawang tao ang parehong record? Kailan mag-e-expire ang lokal na data, at paano ito pinoprotektahan sa isang nakabahaging device? Ang mga tanong na ito ay nauuna sa pagpili ng Flutter o PWA; hindi sumasagot sa kanila ang isang "suportadong offline" na label.
Halimbawa: nagbu-book ng serbisyo kumpara sa field work
Ang isang booking na naabot mula sa isang link ay maaaring magsimula bilang isang tumutugon na karanasan sa web. Ang isang manggagawa na nag-scan ng mga barcode, kumukuha ng mga larawan at kumukumpleto ng mga form sa mahinang saklaw ay nangangailangan ng praktikal na pagsubok sa pag-access at pag-synchronize ng device. Maaaring manatili ang pangangasiwa ng opisina sa browser habang nagdaragdag ng field channel. Ang isang bagong channel ay hindi kailangang magpahiwatig ng muling pagsulat sa buong system kapag malinaw ang mga hangganan ng data at awtorisasyon.
Ang isang channel ay nagkakahalaga ng higit sa paunang pagtatayo nito
Kasama sa pagpapanatili ang mga update sa browser o operating system, mga pahintulot, pag-sign-in at mga release ng store kung saan may kaugnayan. Tukuyin ang mga target na gumagamit at ang taong responsable sa pag-update ng bawat channel. Huwag pumili ng native dahil lang sa parang mas propesyonal ito, o tanggihan ito dahil mas mura ang pagbabahagi ng code. Hatulan ang mga aktwal na gawain, mga hadlang at karanasan ng user.
EDUKASYONAL NA HALIMBAWA / MASUSURI NA MGA HAKBANG
Acceptance matrix: gawain, channel at device
Isang halimbawang pang-edukasyon para sa pagpili ng mga channel para sa booking ng serbisyo at field work. Ang bawat hilera ay nag-uugnay ng isang gawain sa isang kandidato at isang pamantayan sa pagtanggap; ang isang kakayahan ay nananatiling hindi na-verify hanggang sa masuri sa mga target na device at browser.
- Magbasa ng serbisyo mula sa isang link — kandidato: isang tumutugon na website. Tanggapin kapag ang impormasyon at contact ay maabot nang walang pag-sign in at manatiling malinaw sa mobile at keyboard navigation.
- Mag-book at subaybayan ang isang appointment — kandidato: isang web application. Tanggapin kapag nagbu-book at pinapahintulutan ang mga pag-edit at hindi na makuha ng ibang user ang mga detalye nito, kabilang ang sa pamamagitan ng direktang kahilingan sa server.
- Magbukas ng naka-install na karanasan — kandidato: isang PWA kung saan naaangkop. Tanggapin pagkatapos ng pagsubok sa pag-install, paglunsad at mga link sa bawat target na kapaligiran, na may magagamit na landas ng browser kapag hindi available ang pag-install.
- Kumuha ng larawan ng pagbisita — kandidato: web o mobile, batay sa pagsubok. Tanggapin kapag humiling ng pahintulot ayon sa konteksto, pinapanatili ng pagtanggi o pagkansela ang draft, at ang muling pagsubok ay hindi mawawala ang data.
- Magtala ng pagbisita offline — kandidato: isang karanasan sa lokal na imbakan at pag-synchronize. Tanggapin kapag ang pagsasara at muling pagbubukas ay nagpapanatili ng draft at ang muling pagkonekta ay nagsi-synchronize ng isang tala nang walang duplikasyon.
- Abisuhan ang isang user — kandidato: isang na-verify na channel ng notification. Tanggapin pagkatapos ng pagsubok ng mga pagbibigay ng pahintulot, pagtanggi at pag-uugali sa background sa mga totoong device, na may status na available sa loob ng produkto kung may napalampas na notification.
Ihambing kung gaano ito angkop, hindi kung gaano kasikat.
Website
Angkop: Pagtuklas ng serbisyo, pagbabasa at pakikipag-ugnayan.
Isaalang-alang: Hindi awtomatikong kasama ang mga account o custom na daloy ng trabaho.
Web app / PWA
Angkop: Mga gawaing naabot ng isang link, na may mga karagdagang kakayahan sa web kung saan na-verify.
Isaalang-alang: Dapat na masuri ang mga limitasyon sa platform at offline laban sa aktwal na gawain.
Mobile app
Angkop: Nakatuon sa device, umuulit o partikular na paggamit sa pamamahagi.
Isaalang-alang: Pamamahagi, pagpapanatili at pagsubok para sa bawat target na platform.
Ito ay suporta sa desisyon, hindi isang alok ng serbisyo o isang garantiya sa pagganap. Ang iyong huling pagpipilian ay depende sa iyong mga kinakailangan at ang mga bersyon na pinili sa pagpapatupad.
Mga opisyal na mapagkukunan para sa karagdagang pagbabasa
web.dev — Matuto ng PWAbubukas sa isang bagong windowApple — Swiftbubukas sa isang bagong windowAndroid — Kotlinbubukas sa isang bagong windowweb.dev — PWA capability detection at mga pagkakaiba sa platformbubukas sa isang bagong windowInilalarawan ng mga mapagkukunan ang mga katangian ng teknolohiya. Ang mga sitwasyon at trade-off ay patnubay sa konteksto, hindi mga resulta ng benchmark.