Tuesday, November 07, 2006

AJAX Miracle

Pastinya anda, para pengunjung web sering dikesalkan dengan keharusan untuk menunggu proses pengunduhan (download) suatu halaman web setiap kali mengklik suatu hyperlink. Padahal, belum tentu informasi yang kita cari itu langsung dihadapkan kepada kita pada halaman yang kita tunggu tersebut. Seringkali, proses itu harus kita lewati berkali-kali sampai benar-benar mendapatkan apa yang kita cari. Hal itu dikarenakan hyperlink hanya memberitahukan alamat halaman yang dimaksud di internet menggunakan URL (Uniform Resource Locator). Itu berarti, betapapun kecilnya informasi yang dicantumkan di halaman web yang kita tuju, browser kita tetap diharuskan untuk mengunduh seluruh bagian halaman - termasuk bagian-bagian yang tidak kita inginkan seperti gambar-gambar pendukung, navigation bar website, dan sebagainya – baru menampilkannya.

AJAX – akronim dari Asynchronous Javascript And XML, adalah teknologi untuk mengatasi masalah ini. Teknologi ini memungkinkan halaman-halaman web menjadi lebih responsif dengan cara melakukan pertukaran data di belakang layar ketimbang mendownload seluruh halaman baru menggunakan HTTP Requests.

AJAX bukanlah bahasa pemrograman baru (bahkan bukan sebuah bahasa pemrograman). melainkan sebuah cara memadukan penggunaan Server-Side Script (Javascript), Client-Side Script (PHP, ASP, Phython, dsb.), HTML, HTTP Request, dan XML. Javascript digunakan untuk menciptakan trigger dalam halaman web, menjalankan serangkaian fungsi-fungsi, memasukkan data-data yang dibutuhkan ke dalam variabel-variabel, serta memanggil HTTP Request. HTTP Request ini kemudian memanggil sebuah script di server dengan membawa serta data-data yang dititipkan tadi. Server kemudian menjalankan pula serangkaian fungsi-fungsi Server-Side Script sebagai respon terhadap panggilan HTTP Request, mengakses database bila perlu, kemudian menjawabnya dengan data-data yang diminta oleh HTTP Request. XML biasanya merupakan format data yang diterima dari server, walaupun format apapun – termasuk plain text pun bisa digunakan. Kemudian Javascript kembali menjalankan fungsinya dengan melakukan perubahan pada halaman web.

Dengan penerapan AJAX, berbagai macam form yang menjadi kunci komunikasi antara pengunjung dengan server, bisa disajikan dengan lebih interaktif, responsif, cepat, dan hemat bandwith. Tugas server menjadi berkurang karena hanya mengirimkan data yang dibutuhkan.


Revolusi Aplikasi Berbasis Web

Lebih dari sekedar meningkatkan kenyamanan pengunjung, AJAX seakan menumbuhkan revolusi dalam dunia pelayanan di dunia maya. Teknologi ini memungkinkan diciptakannya suatu aplikasi berbasis web yang kaya akan fitur – yang dijalankan di atas browser tanpa harus melakukan penginstalan program tambahan. Hal ini dikarenakan AJAX berjalan di atas platform yang selama ini sudah diterima sebagai standard yang universal dan (seharusnya) dapat dijalankan di segala jenis browser.

Cukup banyak inovasi-inovasi pelayanan baru yang menerapkan AJAX. Sebut saja website penyedia layanan Instant Messeging seperti MEEBO, yang memungkinkan kita ber-Instant Messeging ria menggunakan Internet Browser, serta WRITELY dan GOFFICE yang menyediakan fasilitas Office online laiknya MS-Office, di mana kita bisa membuat file-file dokumen tanpa harus memiliki software office di komputer – lagi-lagi cukup menggunakan browser.

Layanan-layanan lain yang menerapkan AJAX di antaranya website penyedia jasa penyimpanan dan sharing foto seperti Flickr, kemudian layanan webmail yang dimiliki oleh GMail dan Yahoo. Yahoo bahkan menyediakan aplikasi yang amat kompleks untuk penggunanya dalam mengelola emailnya. Pengunjung seakan dihadapkan pada sebuah Email Client seperti MS-Outlook, bedanya lagi-lagi ini semua dijalankan di atas browser.

Kelemahan AJAX

Tentunya di samping segala kelebihannya, AJAX tetap memiliki kekurangan dibanding HTML standart. Kelemahan itu antara lain:

  1. Belum semua browser dapat mendukung aplikasi yang dibangun dengan menggunakan teknologi AJAX, terutama browser-browser keluaran lama.
  2. Hackability & Remixibility. Aplikasi yang dikirimkan ke browser pengguna dapat dengan mudahnya dibaca source codenya sehingga besar kemungkinan besar untuk ditulis ulang atau dimodifikasi penggunanya. Orang yang tidak berhak menggunakan aplikasi tersebut bisa dengan mudah mengcopy halaman web milik pengguna lain dan menggunakannya. Tidak ada perlindungan atas kekayaan intelektual penyedia aplikasi.
  3. Memakan resource komputer cukup besar. Bila aplikasi yang dibangun demikian kompleksnya, maka akan menurunkan kinerja komputer pengguna, dikarenakan aplikasi berbasis web yang menggunakan Javascript akan memakan memori yang lebih besar ketimbang aplikasi biasa sejenis. Teknologi ini memang cenderung menggeser beban ke arah pengguna ketimbang harus membebani server dan jaringan.

Monday, November 06, 2006

Bismillahirrahmanirrahiim

Dengan ucapan basmalah tadi, saya buka blog saya kali ini. Sebenarnya ini bukan kali pertamanya saya membuat blog. Namun karena berbagai sebab, blog saya sebelumnya tidak rajin saya kelola. Daripada saya lanjutkan, lebih baik saya mulai dari awal, dengan semangat yang baru pula.