the wide world of google developer technologies (stlic 02-10)
Post on 19-May-2015
621 Views
Preview:
DESCRIPTION
TRANSCRIPT
Overview of GoogleDeveloper Technologies
Jason CooperDeveloper Programs Engineer
jasonacooper@google.com
February 26th, 2010St. Louis Innovation Camp
What is an API?
Application Programming Interface
Application Programming Interfaces...enable applications to interact with other applications.
Application Programming Interfaces...
enable developers to build interesting applicationsmore easily, quickly and cheaply than otherwise possible.
Application Programming Interfaces...
enable developers to "mash up" data from various sources.
Don't reinvent the wheel:leverage others' strengths
http://www.programmableweb.com
Great resource for API development
Categorized directory of APIsDirectory of mashups
70+ APIs and developer toolsfor web, mobile, and desktop apps
http://code.google.com/more
What's in it for Google?
Users can more easily import (and export!) their data.
Google application users get more features that they want.
The Web becomes more interesting and engaging for more users.
Data Liberation
http://www.dataliberation.org/
Classes of Google developer technology
Product APIs
Application platforms
Developer tools
Classes of Google developer technology
Product APIs
Application platforms
Developer tools
1. Product APIs
AJAX APIsSearchMapsEarthTranslate
Google Data APIsGoogle Apps
Google CalendarGoogle FinanceGoogle HealthGoogle Spreadsheets
YouTube
Google Data APIs (Atom + more)
Google Data APIs (Atom + more)
Data Model has 2 base types:feed: a container of data itemsentry: a single data item
APP has 4 operations:Create (POST)Retrieve (GET)Update (PUT)Delete (DELETE)
The Google Data Protocol extends AtomPub for processing queries, authentication, and batch requests.
Google Data APIs (Atom + more)
<?xml version='1.0' encoding='utf-8'?><feed> <title>Foo</title> <updated>2006-01-23T16:25:00-08:00</updated> <id>http://www.example.com/myFeed</id> <author> <name>Jo March</name> </author> <link href='/myFeed' rel='self'/> <entry> ... </entry> <entry> ... </entry></feed>
Google Data APIs: retrieving
Request:
GET /myFeed
Response:200 OK
<?xml version='1.0' encoding='utf-8'?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005' gd:etag='W/"C0QBRXcycSp7ImA9WxRVFUk."'> <title>Foo</title> <updated>2006-01-23T16:25:00-08:00</updated> <id>http://www.example.com/myFeed</id> <author> <name>Jo March</name> </author> <link href='/myFeed' rel='self'/></feed>
Google Data APIs: creating
Request:
POST /myFeed
<?xml version='1.0' encoding='utf-8'?><entry xmlns='http://www.w3.org/2005/Atom'> <author> <name>Elizabeth Bennet</name> <email>liz@gmail.com</email> </author> <title type='text'>Entry 1</title> <content type='text'> This is my entry </content></entry>
Response:201 CREATED
<?xml version='1.0' encoding='utf-8'?><entry xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005' gd:etag='"CUUEQX47eCp7ImA9WxRVEkQ."'> <id>http://www.example.com/id/1</id> <link rel='edit' href='http://example.com/myFeed/1/1/'/> <updated>2006-01-23T16:26:03-08:00</updated> <author> <name>Elizabeth Bennet</name> <email>liz@gmail.com</email> </author> <title type='text'>Entry 1</title> <content type='text'>This is my entry</content></entry>
Google Data APIs: querying
Request:
GET /myFeed?q=this
Response:200 OK
<?xml version='1.0' encoding='utf-8'?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005' gd:etag='W/"S0wCTlpIIip7ImA0X0QI"'> ... <entry gd:etag='"CUUEQX47eCp7ImA9WxRVEkQ."'> <id>http://www.example.com/id/1</id> <link rel='edit' href='http://example.com/myFeed/1/'/> <updated>2006-01-23T16:26:03-08:00</updated> <author> <name>Elizabeth Bennet</name> <email>liz@gmail.com</email> </author> <title type='text'>Entry 1</title> <content type='text'>This is my entry</content> </entry></feed>
Classes of Google developer technology
Product APIs
Application platforms
Developer tools
2. Application platforms
Web
Android
OpenSocial
Android
At the close of 2009:
18-20 devices30+ carriers in 21 countries12,000+ applications in the Android MarketNo. 2 in U.S. mobile web browsing4 platform releases and counting...
OpenSocial
Classes of Google developer technology
Product APIs
Application platforms
Developer tools
3. Developer tools
Google Web Toolkit
Closure Tools
App Engine
Classes of Google developer technology
Product APIs
Application platforms
Developer tools
70+ APIs and developer toolsfor web, mobile, and desktop apps
http://code.google.com/more
Jason CooperDeveloper Programs Engineer
jasonacooper@google.com
top related