You know you have to have a great experience when you develop your Windows Phone 8 applications right? The greatest experience you can give your users is around their data. There are ways to improve your Windows Phone 8 application and Chris Woodruff will teach you how to get data quickly, save it with validation, save it locally and many, many more tricks. Come see why you should know the tricks of the trade before developing that killer Windows Phone 8 app. You will be a Data Experience expert when you leave the room after this session.
Unraveling Multimodality with Large Language Models.pdf
Connecting to Data from Windows Phone 8
1. Connecting to Data from
Windows Phone 8
Chris Woodruff
Senior Trainer
Telerik
Level: Intermediate to Advanced
2. Who I am?
Chris Woodruff
MVP, Visual C#
Trainer at Telerik
Co-host of Deep Fried Bytes Podcast
@cwoodruff / cwoodruff@live.com /
Skype: cwoodruff
3. You will learn:
• Understand the benefits of using REST web
services for your mobile apps
• Be able to use develop solutions against
OData that will give better experiences for
your users
• How to shape your data queries to give the
best performance for your mobile apps
• A glimpse into using Windows Azure Mobile
Services to also get to your data in the cloud.
5. • REST is an architectural style for
distributed hypermedia systems
• REpresentational State Transfer
• The term originated in 2000 by Roy
Fielding for his PhD thesis
• REST states that the existing protocols
and principles of the web are enough to
create robust Web Services – no SOAP
is needed
What is REST?
6. What does REST consist of?
REST is a very simple architecture:
• Application state and functionality is
divided into resources.
• Every resource is uniquely addressable
using a universal syntax for hypermedia
links
• All resources share a uniform interface for
the transfer of state between a client and a
resource
7. What does REST consist of?
Characteristics of REST
• Client–server
• Stateless
• Cacheable
• Uniform Interface
• Named Resources
• Interconnected
Resource
Representations
• Layered System
Operations of REST
• GET
• POST
• PUT
• DELETE
8. Example of REST
Query a Resource
http://www.parts-depot.com/parts/getPart?id=00345
http://www.parts-depot.com/parts/00345
http://restbucks.com/PlaceOrder?coffee={type}&size
={size}&milk={milk}&location={location}
10. Open Data Protocol (OData)
• “RESTful” Web protocol
• Designed to work with data across HTTP
• Built on existing Web standards
• Uses popular formats to return data
payloads to consumer
• Uses self-describing metadata
• Has multiple options to build
implementation based on standard
protocol
• Soon to be a full web standard
11. The Basics
• Feeds, which are Collections of
typed Entries
• OData services can expose
Service Operations
• OData services expose all these
constructs via URIs
• OData service may also expose a
Service Metadata Document
12. Full SQL like Query “Language”
HTTP Command
(Verb)
SQL
Command
GET SELECT
PUT UPDATE
POST INSERT
DELETE DELETE
14. OData Best Practices (Producer)
• Always design your OData feed will
server-side paging if your entity
collections hold large amounts of data.
• Looks at server-side validation of queries
and data updates based on the user
credentials sent through HTTP
18. OData Best Practices (Consumer)
• Use Query Projection to only bring back
the entity properties you or your app
needs.
• Think about client-side paging even if their
exists server-side paging.
• Design and implement a client-side data
caching function in your app (unless
sensitive data).
23. Contact Me
Chris “Woody” Woodruff
cwoodruff@live.com
Twitter @cwoodruff
Skype cwoodruff
http://chriswoodruff.com
http://deepfriedbytes.com
Notas do Editor
Representational State Transfer (REST) is defined as an architectural style, which means that it is not a concrete systems architecture, but instead a set of constraints that are applied when designing a systems architecture. We briefly discuss these constraints, but then focus on explaining how the Web is one such systems architecture that implements REST. In particular, the mechanisms of the Uniform Resource Identifiers (URIs), the Hypertext Transfer Protocol (HTTP), media types, and markup languages such as the Hypertext Markup Language (HTML) and the Extensible Markup Language (XML). We also introduce Atom and the Atom Publishing Protocol (AtomPub) as two established ways on how RESTful services are already provided and used on today's Web.
Client-Server: a pull-based interaction style: consuming components pull representations.Stateless: each request from client to server must contain all the information necessary to understand the request, and cannot take advantage of any stored context on the server.Cache: to improve network efficiency responses must be capable of being labeled as cacheable or non-cacheable.Uniform interface: all resources are accessed with a generic interface (e.g., HTTP GET, POST, PUT, DELETE).Named resources - the system is comprised of resources which are named using a URL.Interconnected resource representations - the representations of the resources are interconnected using URLs, thereby enabling a client to progress from one state to another.Layered components - intermediaries, such as proxy servers, cache servers, gateways, etc, can be inserted between clients and resources to support performance, security, etc.