In which language or platform should you write your Facebook app ? JAVA, .NET, PHP, Ruby or Python ?
I got a message from one of my friends regarding doubts and questions on Facebook app development. Couple of them are :
- Which is the best platform for developing facebook apps ? Java or .Net ?
- What else do I need to know to develop fb apps other than Java or .Net ?
I develop Facebook apps using Facebook Graph Api’s. I never uses FBML as its not required (Though I may use in future). These api’s are platform independent and return the result in JSON and XML fromat. You have to call these api’s using simple GET or POST request problematically. You can try it on your browser itself. Try calling Graph api to get information about Facebook platform. Click here to call. And you just called a Facebook api without programming
.
The above is just a simple example. But a real world Facebook app requires more than that. You need to get permissions, you need to publish the post, you need to upload pictures to album etc. You have to do all these stuffs problematically using GET and POST request and parse the result returned in JSON or XML format using Graph API. But doing it like that is lengthy process and error prone. So different languages(PHP, JAVA, RUBY, .NET) and platforms have Facebook SDKs to talk to graph api’s and make this task easy for us. The Facebook SDK for some of the famous languages are as follow:
In my opinion you should go for PHP SDK and start developing your apps in that. The reasons are :
- PHP SDK is officially supported by Facebook and is regularly updated. This is very important as Facebook api’s and mechanism changes very frequently.
- The SDK is very robust.
- Most of the apps available in market are written in PHP. You can find tons of example and tutorial. If you stuck at some point you can easily get help from somebody by posting your questions in forums.
- The hosting is easily available and is cheap.
- PHP is easy to learn and is free.
I prefer developing Facebook apps in PHP. I was new to PHP when I started developing Facebook apps. It took me 5 days to learn and launch my first Facebook app and it was pretty decent.
Don’t go for JAVA. The SDK is no more supported by Facebook. You will struck in some points. And if Facebook changed something in their underlying api, you either have to wait for SDK to get updated or you have to manually put some hack which is very painful. Java hosting is very expensive. You have to invest a lot initially.
Same is the case with .NET. Its not free and the library are not supported by Facebook. I am not sure about Python.
Other than PHP, you should know HTML, Javascript, CSS and some knowledge of Web-server.
So go for PHP for developing Facebook apps.
.
I will post hello world tutorial soon including all the server and IDE setup. So you can start developing Facebook apps on a Fly. Stay tune.