Upload
apigee
View
6.455
Download
1
Embed Size (px)
DESCRIPTION
We Will Discuss »- Recognizing common use-cases & design patterns from an array of mobile apps- Data services and technologies that power the server side of data-driven experiences- Assembling best-of-breed technologies to implement expansion into small(er) screens
Citation preview
Mobile Apps 101Key Patterns you need to know
April 19, 2012
Ed Anuff @edanuff
Greg Brail @gbrail
Tim Anglade @timanglade
@gbrail@edanuff @timanglade
groups.google.com/group/api-craft
youtube.com/apigee
IRC Channel
#api-craft
on freenode
New!
Use Case Design Pattern
Identity Social Graph
Show what’s happening Activity Stream
Show what’s nearby Location as context
Alert me! Push notifications
Share info or state across devices Multipoint sync
Access a service remotely The untrusted client
Identity
Identity
Pattern: the Social Graph
• Renting vs. owning
• Value & Risk in both approaches
– Management concerns
– Privacy concerns
– Reliance on third party services (& availability)
• Friend, friends of friendsfriends of friends of friends…
Show what’s happening
Show what’s happening
Pattern: Activity Streams
• Personalized
• Cross-references & Faceting
• Duplication
• Technical constraints are highly driven by UX
expectations
Show what’s nearby
Show what’s nearby
Pattern: Location as context
• Variant of Activity Streams?
• Privacy Concerns, loss of resolution
• Geocoding, reverse geocoding
• Geo queries
• Vectors & Ephemeral locations
Send me an alert!
Send me an alert!
Pattern: Push Notifications
• Stuff that can’t wait
• Urgency is relative
• Event not Content
• Not meant for archive & retrieval
• Wide vs. Precise
Share info or state across devices
Source: apple.com
Share info or state across devices
The pattern: Multipoint Sync
• Used to be manual
• Not easy
• Invisibility is key
• File or KV-based
• What you have to handle vs. what you can’t handle
Share info or state across devices
Also possible with Dropbox
Nice tutorial by Nanaimo Studio:
http://www.nanaimostudio.com/blog/2011/1/20/how-to-synchronize-your-app-
data-using-dropbox-api.html
Access service from remote
Access service from remote
Pattern: the Untrusted Client
• OAuth all the way
• Flows & options can be jarring to the developer
• Flows & options can be jarring to the user
• Revocation
THANK YOUQuestions and ideas to:
@edanuff
@gbrail
@timanglade