Recently I experimented with a jQuery event calendar on our Booking System. Our previous version uses ASP.NET to build the booking chart as a whole on the server and then renders the lot to the browser. It was a bit slow and clunky, but worked.
I wanted to have a PHP version of the Room Booking System so did a quick port from the ASP.NET C# to PHP, and then I dropped the jQuery fullcalendar component on the page. I used a web service for the data which was still written in C# against a Microsoft SQLServer database.
The effects were stunning! Besides looking nicer, the speed of update was incredible – like a Windows application. Of course, this is achieved because the page runs almost entirely in the browser and calendar navigation may request just small amount of data using AJAX against the web service.
Could I write the entire application like this?
Can I just use jQuery and nothing else? Maybe – but not yet, not entirely. As impressed as I am with jQuery, I feel it’s just one of the tools in the software developer’s toolbox. I’ll use jQuery more and more but I’ll be using.NET and PHP too. Here’s how I summarise it:
- Good User Experience, close to a Windows GUI
- Impressive speed
- Coders don’t have to worry about Browser differences
- Reduces Server Load as fewer round-trips
- Widely used, good community support
- Many components already developed
- Open Source
- You probably still need a Server framework for initialisation and Session management
- You need another app to supply your data (like a web service) written in another language (like.NET, Java or PHP)
- In larger apps, slower to code than PHP or ASP.NET
- You need to understand CSS
- Can still be difficult to debug, especially if scripts interfere with each other.
- Source code is difficult to protect
- Can be a little cryptic to read