The first thing to do is choose between FBML or IFrames
Note: From the Facebook Developer Wiki Page Choosing between an FBML or IFrame Application.
The first decision to be made when building your Facebook Application from Scratch is whether you want to configure your application to use IFrames or FBML by default.
Things to consider before choosing:
FBML
- Lets you quickly start building an application from scratch, which is good for a new Facebook developer.
- Is likely to be faster on first page loads
- Has fewer moving parts and the paradigm is closer to that of the traditional Web
- Gives you easy access to lots of Facebook elements
- Lets your application pages have nice URLs
- Has a sensible authorization mechanism
IFrames
- Are easier and faster if you have an existing application, widget, or website if the application utilizes XFBML
- Are likely to lead to a faster experience for users over the long run
- Let you use the JavaScript, HTML, and CSS that you are used to
- Are faster if you are doing a lot of AJAX in your application, since the requests don’t need to go through Facebook proxy
- Debugging regular HTML and JavaScript is easier than for FBML and FBJS given the tools available today
- Allow you to use popular JavaScript libraries like jQuery in your code, but you’d have to modify the library to use it in FBJS, and some things just might not work
In the past, FBML apps had more features than IFrame apps. But near the end of 2008, changes were made to bring IFrame applications closer to the level at which FBML applications were performing.