+ All Categories
Home > Technology > Daniel Steigerwald: Jak psát mobilní webové aplikace

Daniel Steigerwald: Jak psát mobilní webové aplikace

Date post: 06-May-2015
Category:
Upload: develcz
View: 493 times
Download: 2 times
Share this document with a friend
Description:
Jak psát mobilní webové aplikace. UX, architektura, implementační detaily.
32
Jak psát mobilní webové aplikace. Daniel Steigerwald
Transcript
Page 1: Daniel Steigerwald: Jak psát mobilní webové aplikace

Jak psát mobilní webové aplikace.

Daniel Steigerwald

Page 2: Daniel Steigerwald: Jak psát mobilní webové aplikace

Kdo jsem

● software gardener● školím, píšu, přednáším● evangelizuji Google Closure, Coffeescript, Stylus, TDD● podílím se na zajímavých projektech (Proactify)

Page 3: Daniel Steigerwald: Jak psát mobilní webové aplikace

Obsah

● UX● Architektura● Implementace

Page 4: Daniel Steigerwald: Jak psát mobilní webové aplikace

UX

● lidé používají mobil všude● post pc éra● omezený výkon, rozlišení, ovládání

Page 5: Daniel Steigerwald: Jak psát mobilní webové aplikace

UX - konsekvence

● omezené možnosti přirozeně vedou k MVP● MVP - Minimal Viable Product

Oč méně fičur, o to lépe musejí fungovat.

Page 6: Daniel Steigerwald: Jak psát mobilní webové aplikace

UX

● nativní nebo webové (HTML5) apps?● je dobré znát "zone of awesome" obou

technologií

Page 7: Daniel Steigerwald: Jak psát mobilní webové aplikace

● rychlé● touch a gesta● offline z principu● eye candy● shop● přístup k HW

UX - Nativní aplikace

Page 8: Daniel Steigerwald: Jak psát mobilní webové aplikace

A webové aplikace?

Page 9: Daniel Steigerwald: Jak psát mobilní webové aplikace

Konvergují.

Page 10: Daniel Steigerwald: Jak psát mobilní webové aplikace

● stále rychlejší● touch a gesta také● offline možný a preferovaný● eye candy #css3● shop (možný)● přístup k HW (otázka času)

UX - Webové aplikace

Page 11: Daniel Steigerwald: Jak psát mobilní webové aplikace

Navíc...

Page 12: Daniel Steigerwald: Jak psát mobilní webové aplikace

Zone of awesome webových apps

● web browser je vlastně shop● instalace zadáním URL● odinstalace zavřením tabu● linkování stavu, historie● konzistentní back button● více instancí současně● žádné licenční poplatky třetí straně

Page 13: Daniel Steigerwald: Jak psát mobilní webové aplikace

Proto webové aplikace nesmí imitovat nativní.

Page 14: Daniel Steigerwald: Jak psát mobilní webové aplikace

Proto webové aplikace nesmí imitovat nativní*

● vlastní tlačítka zpět, špatně● fancy animace● imitace nativní aplikace je zlo

* pokud tedy neděláte platform specific product, pro poslední release, a máte na to moře času

Page 15: Daniel Steigerwald: Jak psát mobilní webové aplikace

● Tlustý nebo tenký klient?● Server's dead baby, Server's dead.● Catch all versus elite only strategy

Architektura

Page 16: Daniel Steigerwald: Jak psát mobilní webové aplikace

Tlustý nebo tenký klient?

Architektura

Page 17: Daniel Steigerwald: Jak psát mobilní webové aplikace

Tlustý klient● cestuje HTML

Tenký klient● cestuje JSON

Architektura

Page 18: Daniel Steigerwald: Jak psát mobilní webové aplikace

Co je na tenkém klientu dobré● rychlé na vývoj● indexovatelný web● a tím to končí

Architektura

Page 19: Daniel Steigerwald: Jak psát mobilní webové aplikace

Co je na tenkém klientu špatné● limitované UX● round tripy● těsná vazba mezi client - server

○ duplikování kódu○ náročnost pro programátory○ nutnost paralelního vývoje

Architektura

Page 20: Daniel Steigerwald: Jak psát mobilní webové aplikace

Co je na tlustém klientu dobré● future proof● rychlost● nezávyslost na serveru● offline first!

○ local storage○ database storage○ synchronizace

● UI client only

Architektura

Page 21: Daniel Steigerwald: Jak psát mobilní webové aplikace

Co je na tlustém klientu problematické● nutnost vědět jak na to

○ dev stack ftw● fragmentace● reimplementace browseru

Architektura

Page 22: Daniel Steigerwald: Jak psát mobilní webové aplikace

Reimplementace browseru?

● historie a back button● práce se scroll position● asynchronní routing● last click win● persistence formulářů (localstorage)

Architektura

Page 23: Daniel Steigerwald: Jak psát mobilní webové aplikace

Architektura

Server's dead baby, Server's dead.

"If you're thinking about the server when you'are writing a web app, you're doing it wrong. Develop as an offline app, then add server." goo.gl/foO2S

Page 24: Daniel Steigerwald: Jak psát mobilní webové aplikace

Architektura

Server reincarnation. Server je● kontrakt● storage● model

Page 25: Daniel Steigerwald: Jak psát mobilní webové aplikace

Architektura

Catch all or elite only strategy● kterou zvolit● jedna app = více UI

Page 26: Daniel Steigerwald: Jak psát mobilní webové aplikace

Implementace

● HR● JS knihovny● Pasti a pastičky

Page 27: Daniel Steigerwald: Jak psát mobilní webové aplikace

Implementace

HR

"Je těžké nabrat lidi, co umí. Snažší je nabrat lidi, co chtějí umět."

Page 28: Daniel Steigerwald: Jak psát mobilní webové aplikace

Implementace

HR - Paradox Javascriptu

Pro firmy: JS umí trochu skoro každý, programátora není nemožné sehnat.

Pro zaměstnance: Dobře JS neumí skoro nikdo, naučte se ho, a firmy vám utrhnou ruce.

Page 29: Daniel Steigerwald: Jak psát mobilní webové aplikace

Implementace

JS knihovny● jakou JS knihovnu?

○ zepto○ touch and gestures

● proč je Google Closure na mobilní development nejlepší?

Page 30: Daniel Steigerwald: Jak psát mobilní webové aplikace

AJAX○ timeout○ preload○ no connection

"Pokud neumíte udělat timeout u async operací, tak se do AJAXu vůbec nepouštějte. Čumět 5 minut na spinner nikoho nebaví. A F5 udělá bůhvíco." @spazef0rze

Implementace

Page 31: Daniel Steigerwald: Jak psát mobilní webové aplikace

Implementace

● mobile html5 boilerplate● animace a HW akcelerace● -webkit-overflow-scrolling: touch;● HTML5 form fields● .focus() does not work*● hide address bar with CSS scrollability

Page 32: Daniel Steigerwald: Jak psát mobilní webové aplikace

Děkuji za [email protected]

http://javascript-skoleni.cz


Recommended