I plan to write a new application on Facebook. Should I use FBML or IFrame as the render method?





Appreciate if you can like this page if you find it useful! - Click "Like"

Frankly speaking, that's depends.

Let's see Facebook's view on FBML first,

We don't recommend FBML for new developers. If you aren't already using FBML, you should instead implement your application within an iframe, using the JavaScript SDK and social plugins for client-side integration with Facebook services. The one exception: if you absolutely must create an application that runs as a tab in a user's Facebook profile, you will need to use FBML; tabs do not support iframes.

So, if you want to develop an application tab, you have no choice at this moment, you need to go for FBML.

Other than the above situation, it seems to us that we should go for iframe canvas application. However, from my experience, unless you are an experienced web developer or want to have sophisticated features implemented by using JavaScript, you can try to use FBML.

Besides, you can incorporate various standard Facebook UI elements such as tabs, user profile picture etc into your canvas application by using FBML. As Facebook has stated, FBML enables you to build Facebook applications that deeply integrate into a user's Facebook experience.

Besides, the choice between using FBML and IFrame also depends on your choice on the SDK to use. If you plan to use the JavaScript SDK, then Iframe is definitely the way. However, if you plan to use the PHP SDK, there would be no clear choice.

Anyway, I think it would be good for you to learn FBML. Even if you are to build you canvas application, you may still want to use XFBML (which is almost exactly the same as FBML).

That's my view on the subject. If you have any sharing, do write to me.



Find my FAQ on Facebook Development useful? Download the PDF for all the FAQs HERE!