Sejarah Singkat AJAX Berkenalan Dengan AJAX Asynchronous Synchronous

1. Sejarah Singkat AJAX

Teknik komunikasi Asynchronous dengan server sendiri pertama kali dkembangkan oleh Microsoft pada tahun 1997, kemudian pertama kali XMLHttpRequest Object diperkenalkan pada IE5 1998 dan dipergunakan secara luas pada Outlook Web Access. Jesse James Garret t‟s kemudian memberikan istilah AJAX untuk teknik Asynchronous ini pada salah satu tulisannya di tahun 2005. Dan hingga saat ini telah banyak yang mengimplementasikan teknik ini dalam pengembangan web, sebagai contoh penggunaan AJAX dalam web yuitu Google+ plus, Google Map, Gmail, Yahoo, Facebook, Flickr.com, Gmai dan lain-lain.

2. Berkenalan Dengan AJAX

Sebelum dibahas panjang lebar tentang scripting dan coding, akan dibahas terlebih dahulu tentang apa yang disebut dengan AJAX, siapa sebenarnya AJAX dan bagaimana kelakuannya. AJAX bukan merupakan bahasa pemrograman baru, namun hanya sebuah istilah untuk teknik pemanfaatan Javasript dalama mengontrol class object XMLHttpRequest untuk berkomunikasi dengan server kemudian melakukan refresh atau update konten yang ada dalam halaman web tanpa melakukan reload keseluruhan halaman web seperti pada metode traditional sebelumnya, AJAX sendiri merupakan singkatan dari “Asynchronous JavaScript and XML”.

3. Asynchronous Synchronous

Bagaimana AJAX bekerja dan mengapa pemanfaatan AJAX ini membawa isitlah baru pada pengembangan web sehingga muncul istilah Web 2.0 dan ada beberapa istilah lain yang juga dapat ditemukan dengan memanfaatkan AJAX seperti Rich Internet Application RIA. Dari singkatan AJAX sebelumnya, ditemukan istilah “Asynchronous”, berikut penjelasannya dalam istilah tersebut dalam pengembangan web. Jika terdapat teknik Asynchronous maka juga terdapat Synchronous, adapun perbedaan kedua teknik tersebut dalam pengembangan website dapat digambarkan dalam model berikut: Gambar 2. 2 Model Synchronous Proses Saat user berinteraksi dengan sebuah halaman web terdapat banyak pilihan link yang dapat ditemukan dan saat link tersebut dipilih click, maka halaman web tersebut akan melakukan komunikasi dengan server melalui internet untuk meminta proses ke server send request. Selama server melakukan proses, user akan menunggu hasil proses tersebut. se rv e r re sp o n client web browser client web browser client web browser server server interaksi interaksi interaksi in te rn e t se n d r e q u e st se rv e r re sp o n se n d r e q u e st Setelah server selesai melakukan proses yang diminta, maka server akan mengembalikan hasil proses yang akan ditampilkan pada client web browser. Dalam proses synchronous ini, user melakukan permintaan proses requesti process ke server dan menunggu hingga server mengembalikan hasil proses yang diminta, umumnya hasil proses dari server merupakan sebuah halaman web baru yang ditampilkan pada web browser. Pemanfaatan teknik Asynchronous dengan JavaScript ini dalam pengembangan web lebih dikenal dengan istilah Web 2.0 baca: web two point O. Dengan teknik proses Asynchronous, sebuah aplikasi web dapat lebih kaya atau Rich Rich Internet Application. User dapat dibiarkan untuk tetap berinteraksi dengan halaman web yang ada selama proses request dilakukan dan server belum mengembalikan hasil proses yang diminta. Saat hasil proses telah selesai, pengguna hanya perlu melakukan memperbaharui update data halaman web yang telah ada, berikut gambar dari proses kerja Asynchronous tersebut: Gambar 2. 3 Model Asynchronous Proses server server client web browser se rv er r es po n interaksi in te rn et se n d r eq u es t se rv er re sp o n se n d r eq u es t User berinteraksi dengan link-link yang ada untuk meminta proses ke server, proses yang diminta akan dikirimkan secara transparan background ke server, selama server belum mengembalikan data hasil proses, user dapat tetap bekerja dengan halaman web yang ada sebelumnya. Setelah server selesai melakukan proses, hasil proses tersebut akan dikirimkan kembali kepada web browser, saat data yang dikirimkan server telah diterima oleh web browser pada user, maka data tersebut ditampilkan pada halaman web yang telah ada sebelumnya. Disinilah terlihat semua proses komunikasi dengan server dilakukan secara transparan background.

4. XMLHttpRequest Object