Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Section
Column

OpenSocial gives you several approaches for developing apps, depending on your project requirements. However, most social application designs have the same structure: application data, social data, and a template are combined to provide a rendered view to the end user.

...

Column

Image Added

Section
Column

In the OpenSocial ecosystem, these components can come

...

from several places. Client-Side apps can use JavaScript to render data into a template. Social Networks can store both social and application data, and Server-Side applications can take advantage of databases and server-side frameworks to produce rendered output.

Column

Image Added

Social Design Patterns

The documentation in this wiki has been arranged in a series of tracks, grouped by the style of development they describe. Depending on what type of application you want to write, one of the following patterns should fit your needs.

Social Mashup

A social mashup is a lightweight OpenSocial application which runs inside of a social network. Because such applications do not rely on a server, they typically scale extremely well but may be limited in terms of data storage and/or processing. A social mashup is typically created using <u>HTML</u>, <u>JavaScript</u>, <u>CSS</u>, <u>OpenSocial Templates</u> HTML, JavaScript, CSS, OpenSocial Templates, and/or <u>Flash</u>.

<table style="width: 100%">

Panel

<tr>
<td>

...

!Icon-32-tutorial.png_!

Flash.

Image Added

The Social Mashup Tutorial will walk you through creating a simple application from start to finish.

Section
Column

To write your own mashup from scratch:

...

Image Added

Start by reading the Gadget Developer's Guide to learn the basics about gadgets.

...

Image Added

Define application views to render in profile or canvas pages.

...

Image Added

Learn how to request social data from the site hosting your app.

...

Image Added

Mash up other APIs in your gadget by requesting data from other sources on the web.

...

Image Added

Reduce the amount of JavaScript you need to write by adding OpenSocial Tags and Templates.

...

panel

Image Added

Get global with Localization.

Column
</td>
<td>

Image Modified

</td>

</tr>

</table>
</div>

<div style="clear:right;">

Social Application

A social application runs inside of a social network but relies on an external server for processing and rendering data. These applications can provide advanced functionality but may run into scaling problems when they become very popular. Social applications can be created using a variety of technologies, including <u>HTML</u>, <u>JavaScript</u>, <u>CSS</u>, <u>OpenSocial Templates</u>, <u>Flash</u>, <u>PHP</u>, <u>Python</u>, <u>Java</u>, <u>Perl</u>, <u>.NET</u>, or <u>Ruby</u>.

<table style="width: 100%">

Panel

<tr>
<td>

...

HTML, JavaScript, CSS, OpenSocial Templates, Flash, PHP, Python, Java, Perl, .NET, or Ruby.

Image Added

The Social Application Tutorial will walk you through creating a simple application from start to finish.

Section
Column

To write your own application from scratch:

...

Image Added

Start by reading the Gadget Developer's Guide to learn the basics about gadgets.

...

Image Added

Define application views to render in profile or canvas pages.

...

Image Added

Learn how to request social data from the site hosting your app.

...

Image Added

Interact with your own server from the application.

...

Image Added

Process data in the background by using an OpenSocial Client Library and 2-legged OAuth.

...

Image Added

Optimize caching by using the Invalidation API.

...

Image Added

Secure your application by using OAuth to validate requests from the social network.

...

panel

Image Added

Add OpenSocial Tags and Templates as shortcuts for rendering social data.

Column
</td>
<td>

Image Modified

</td>
</tr>

...

<div style="clear: right;">

Social Website / Social Mobile Application

Social websites and social mobile applications run outside of social networks but consume social data through REST or RPC APIs. Users of these apps can grant access to their data using 3-legged OAuth without needing to add an application on a social network. This design pattern grants the most flexibility - almost all languages and platforms can take advantage of this data.

<table style="width: 100%">

Panel

<tr>
<td>

...

Section
Column

Image Added

The Social Website Tutorial will walk you through creating a simple application from start to finish.

To write your own website or mobile app from scratch:

...

Image Added

Read the OpenSocial REST Developer's Guide to learn how to access social features from your server.

...

Image Added

Use an OpenSocial Client Library to speed up your development.

...

panel

Image Added

Understand the difference between 2 and 3-legged OAuth and when to use each one.

Column
</td>
<td>

Image Modified

</td>

</tr>

</table>
</div>

<div style="clear: both;">

Articles List

Here is a list of the articles available on this site, grouped by category. </div>

<table class="wikitable" width="100%" style="text-align: left">

...

Tutorials

OpenSocial Tutorial

Building a complete social gadget from start to finish.

...

...

...

...

Write a simple gift giving app using OpenSocial templates.

...

...

...

...

Write a gift giving app which relies on an external server.

...

...

...

...

Write a gift giving website which allows users to log in with OpenSocial accounts.

...

JavaScript API

...

...

Learn the basics of writing OpenSocial-based gadgets.

...

...

...

...

Fetch social data from inside a gadget.

...

...

...

...

Read and write persistent data without needing a database.

...

Gadgets

...

...

Learn the basics of writing non-social gadgets.

...

...

...

...

Reference for the gadget specification XML.

...

...

...

...

Display locale-appropriate content based on the user's country and language settings.

...

...

...

...

Render your gadget in different sections of the container.

...

<tr>

...

Remote Content

...

...

Fetch remote content.

...

...

...

...

Securely transmit OpenSocial IDs to a remote server.

...

...

...

...

Validate that information from a container has not been modified.

...

<tr>

...

Templates and OSML

OpenSocial Templates

Simplify your display code by using templates.

...

<tr>

...

Server-to-server

...

Protocols

...

...

Access social data from your server.

...

...

...

...

Use PHP, Java, Ruby, Python, and ActionScript or other languages to access social data.

...

<tr>

...

Best Practices

...

...

Follow best practices for designing social applications.

...

...

...

...

Avoid the use of the

...

alert()

...

function.

...

...

...

...

Learn how to measure the latency and performance of your app.

...

...

...

...

Reduce the latency of your app.

...

...

...

...

Learn how OpenSocial uses OAuth authorization.

...

...

...

...

Including the comparison on first-time gadget rendering performance, and the data requesting performance.

...

<tr>

...

Tools and Utilities

...

...

Experiment with social JavaScript calls inside of a social network.

...

...

...

...

Learn how to build social gadgets locally, using the OpenSocial Development

...

Environment

Gadgets i18n Tool

...

...

Automatically translate gadgets using this Windows tool.

...

...

...

...

An example social networking site based on PHP Shindig.

...

...

...

...

An example social networking site based on Java Shindig.

...

...

...

...

An Open Source Silverlight 2 Kit for the MySpace Developer Platform.

...

<tr>

...

Integrating OpenSocial with other

...

services

...

...

Build an OpenSocial application using Google App Engine.

...

...

...

...

Build a photo-sharing application on Amazon S3 and Google App Engine.

...

...

...

...

Access the Google Data APIs from a gadget, using the Google Accounts APIs for authentication.

...

...

...

...

Integrate OpenSocial and Google Friend Connect on your PHP website.

...

</table>
custom research papers
assignment writing
assignment help

...