+ All Categories
Home > Technology > Matías Paterlini: Desarrollo de aplicaciones en Facebook

Matías Paterlini: Desarrollo de aplicaciones en Facebook

Date post: 01-Sep-2014
Category:
Upload: grupo-php-argentina
View: 2,185 times
Download: 3 times
Share this document with a friend
Description:
Charla de Matías Paterlini titulada "Desarrollo de aplicaciones en Facebook" en las Primeras Charlas del Grupo PHP Argentina
Popular Tags:
19
Facebook Apps Development Introduction by Matias Paterlini Friday, March 12, 2010
Transcript
Page 1: Matías Paterlini: Desarrollo de aplicaciones en Facebook

Facebook Apps Development

Introduction

by Matias Paterlini

Friday, March 12, 2010

Page 2: Matías Paterlini: Desarrollo de aplicaciones en Facebook

me...• CTO / Co-Founder Altodot | Social Marketing

Technologies

• Former Social Media Specialist & Software Architect at Tweetboard

• Columnist at PulsoSocial.com

• Former Founder & CTO at:

• VirtualInmobiliario.com

• Cristones.com - Xristianos

Friday, March 12, 2010

Page 3: Matías Paterlini: Desarrollo de aplicaciones en Facebook

Do you PHP?

Friday, March 12, 2010

Page 4: Matías Paterlini: Desarrollo de aplicaciones en Facebook

Did you know?

• facebook holds +400 M people

• facebook built their own php compiler

• facebook created their own memcached extension

• facebook uses mysql sharded databases

• facebook built over PHP

Friday, March 12, 2010

Page 5: Matías Paterlini: Desarrollo de aplicaciones en Facebook

Facebook Platform

how does it work?

Friday, March 12, 2010

Page 6: Matías Paterlini: Desarrollo de aplicaciones en Facebook

The IFRAME wayFacebook

HTML + XFBML

Facebook Javascript API Facebook API PHP client

PHP

Friday, March 12, 2010

Page 7: Matías Paterlini: Desarrollo de aplicaciones en Facebook

The FBML wayFacebook

FBML + HTML

Facebook FBJS wrapper Facebook API PHP client

PHP

Friday, March 12, 2010

Page 8: Matías Paterlini: Desarrollo de aplicaciones en Facebook

Facebook Markup LanguageOn each Request:

• Facebook PHP makes a call to our servers asking for FBML + HTML

• Our PHP scripts generate FBML + HTML

• Facebook parses the FBML generated and:

• Throws errors (if exist)

• Replaces identities names in styles & FBJS code

• Generate HTML for the FBML controls added

Friday, March 12, 2010

Page 9: Matías Paterlini: Desarrollo de aplicaciones en Facebook

XFBML

• They require the Facebook Javascript API library to get rendered

• Some controls are the same as FBML

• Some new controls like fb:fan

Friday, March 12, 2010

Page 10: Matías Paterlini: Desarrollo de aplicaciones en Facebook

FBJS: Facebook Javascript

• It has the same syntax as Javascript.

• Different functions, style = setStyle, location = setLocation,

• New functions like: setTextValue, setInnerFBML

• Can’t use frameworks like Jquery, mootools, prototype

• It has it’s own effects functions to animate objects

Friday, March 12, 2010

Page 11: Matías Paterlini: Desarrollo de aplicaciones en Facebook

FBJS Effects

• Move or resize elements at different speeds.

• Show or hide elements animated: Blur, Fades, etc.

FBJS Listeners• You can attach functions to dom events like clicks, overs,

etc.

• This is very useful when you add dynamic content retrieved by ajax, where you’re not allowed to use onclick, onmouseover, attributes.

Friday, March 12, 2010

Page 12: Matías Paterlini: Desarrollo de aplicaciones en Facebook

Facebook Javascript API• It is a standard javascript library that connects to

Facebook REST servers to retrieve data.

• It analyzes the dome and replace xfbml tags for standard html

• It can be used on Iframe Applications or standalone sites

• It can coexist with frameworks like Jquery, mootools, prototype.

• It has a set of functions to retrieve data from users.

Friday, March 12, 2010

Page 13: Matías Paterlini: Desarrollo de aplicaciones en Facebook

Facebook PHP API Client• A standard php library that connects to facebook RESTful

servers to get data from users.

• A set of methods to send and retrieve information.

• Can execute lots of methods on a batching transaction.

• Poorly documented

• Can execute FQL queries.

Friday, March 12, 2010

Page 14: Matías Paterlini: Desarrollo de aplicaciones en Facebook

Facebook Query Language• A set of tables and a query language to consume that

data.

• You can only read those tables.

• You can only apply filters to indexed columns

• You can’t use Joins.

• You can’t use “NOT” operator

• You can use IN.

Friday, March 12, 2010

Page 15: Matías Paterlini: Desarrollo de aplicaciones en Facebook

What do I choose?FBML or IFRAME app?• Iframes have session time Issues

• FBML requires to know the controls

• FBML is more strict, you can’t make any mistake of facebook will display an awful error on screen.

• On FBML, you’re limited to the functions that FBJS offers, while working on an Iframe you’re free to use any kind of Javascript Library

• FBML apps have latency issues, if your script takes more than 12 seconds to respond, the request is dropped

Friday, March 12, 2010

Page 16: Matías Paterlini: Desarrollo de aplicaciones en Facebook

ORMs, MVC and Scalability Issues

ORMs such as propel and doctrine or MVC frameworks like Zend and Symfony can be used, but be careful, if the

ORM is not optimized you can can suffer scalability issues.

Do not bring all data (use lazy connections)

Friday, March 12, 2010

Page 17: Matías Paterlini: Desarrollo de aplicaciones en Facebook

Altodot FFWFacebook FBML Writer• A standard php library that generates FBML tags.

• Precisely documented.

• Avoids loosing time reading Facebook Wiki.

• Speeds up development

Friday, March 12, 2010

Page 18: Matías Paterlini: Desarrollo de aplicaciones en Facebook

Where do I learn?• Facebook Wiki: http://wiki.developers.facebook.com

• Altodot Blog: http://blog.altodot.com

What tools are there?• Facebook Tools:

• FBML Tester

• API methods Tester

Friday, March 12, 2010

Page 19: Matías Paterlini: Desarrollo de aplicaciones en Facebook

Thanks!

[email protected]

@paterlinimatias

blog.altodot.com

Questions?

Become a dotter: [email protected]

Friday, March 12, 2010


Recommended