
Bahasa pemrograman Javascript adalah salah satu fitur utama, bahkan termasuk salah satu yang utama di dalam dunia web development saat ini. Di era yang katanya 3.0 ini boleh dibilang hampir semua web developer memakai Javascript untuk membuat tampilan web mereka lebih dinamis dan interakitf.
Berbagai macam library Javascript pun bermunculan untuk mendukung hal tersebut. Dan tentu saja, yang paling fenomenal adalah jQuery, pernah dengar? jQuery sebenarnya berawal dari sebuah library sederhana yang digunakan untuk mempermudah proses selecting elemen DOM pada website. Tapi kemudian library ini berkembang hingga hampir seluruh proses manipulasi DOM dapat dilakukan dalam jQuery. Mulai dari mengubah atribut, menambahkan CSS style, melakukan AJAX request hingga yang paling keren membuat animasi.
Tak ayal, library ini menjadi populer dengan sangat cepat. Bahkan bisa dibilang lebih terkenal dari Javascript itu sendiri. Banyak web developer mengatakan mereka belajar tentang Javascript justru setelah beberapa lama menggunakan jQuery. Sampai-sampai ada jargon “too much jQuery” atau “there’s jQuery for that” yang menyindir fenomena penggunaan jQuery secara berlebihan untuk perintah-perintah sederhana yang sebenarnya bisa dilakukan di Javascript biasa.

Ironis memang, tapi apa yang dilakukan jQuery memang sebuah terobosan yang sangat memudahkan hidup. Kalau Anda pernah menggunakan vanilla Javascript alias Javascript mentah tanpa embel-embel library apapun, menggunakan jQuery memang serasa di surga. Bagi yang pernah mencoba membuat request AJAX dengan metode XmlHttpRequest mentah pasti paham. Apalagi hingga beberapa tahun lalu implementasi Javascript masih belum standard di browser-browser utama. jQuery menyediakan semua fitur yang secara syntax lebih mudah dipahami dan dijamin dapat berjalan di hampir semua browser. Ditambah lagi dukungan plugin-plugin yang begitu besar (sampai-sampai terasa overwhelming) untuk fitur-fitur tambahan. Nikmat Tuhan mana lagi yang kau dustakan?
Tidak ada yang salah memang dalam menggunakan jQuery. Tapi pernahkah kita berpikir berapa persen “kekuatan” jQuery yang benar-benar kita butuhkan? Ada yang bilang jQuery itu ibarat mobil balap bermesin super kencang, dengan stiker dan paintjob berkilau di seluruh body, full dengan perangkat musik extra keras, serta dilengkapi mode 4WD untuk dipakai di jalanan off-road. Tapi kemudian mobil itu cuma kita pakai untuk berangkat ke kantor yang jaraknya tidak begitu jauh. Overkill, istilahnya.
Beberapa “gerakan” anti-jQuery pun bermunculan, salah satunya website “MicroJS” yang menyediakan library-library kecil dengan size di bawah 4 KB untuk dipakai sesuai kebutuhannya saja. Saya termasuk salah satu yang jengah dengan jQuery overuse tadi. Tapi yang menarik perhatian saya sebagai alternatif jQuery adalah library ciptaan Tuhan Google Yang Maha Tahu: Google Closure Library.
Apa itu Google Closure Library? Dasarnya library ini tidak jauh berbeda dengan jQuery, ia juga menyediakan fungsi-fungsi umum Javascript dengan syntax yang lebih mudah. Mulai dari manipulasi elemen-elemen DOM sampai fitur untuk request AJAX. Standar. Tapi yang menjadi nilai lebih Closure adalah bahwa library ini hanya bisa digunakan untuk proses development. Kalau mau digunakan untuk di level produksi, Anda harus meng-compile script buatan Anda menggunakan tools tambahan Google Closure Compiler.
Mengapa proses compile itu menjadi nilai lebih? Karena di dalam proses tersebut, hanya fungsi-fungsi Closure Library yang Anda pakai sajalah yang akan dimasukkan ke dalam hasil file akhir. Fungsi lain yang tidak dipakai akan dihiraukan oleh compiler. File hasil compile juga sudah di-minify sedemikian rupa hingga size-nya biasanya tidak akan lebih dari 40 KB. Bandingkan dengan jQuery yang 80 KB belum ditambah plugin-plugin serta script buatan Anda sendiri.
You pay what you used, istilahnya. Memang agak tricky dalam menguasai proses compiling itu sendiri. Tapi percayalah, hasilnya sebanding.
Teknik lain yang juga harus dikuasai adalah mencari solusi non-Javascript. Seperti contohnya dalam membuat animasi, dapat digunakan teknologi CSS3 yang sudah mendukung efek transisi. Jadi tugas Javascript hanya mengubah class-nya saja, proses perubahan tampilan dilakukan oleh CSS3.
Alasan lain mengapa saya jatuh cinta dengan Google Closure adalah independensinya. Tinggal meletakkan script hasil compile ke dalam “self-executing anonymous function” dijamin script akan berjalan tanpa terjadi bentrok dengan library lain.
Di kantor tempat saya bekerja saat ini, LintasMe, saya tengah membangun sebuah produk yang memungkinkan penyebaran artikel berbayar dengan mudah dari para advertiser ke publisher-publisher yang sudah bekerja sama. Salah satu trik-nya adalah dengan meminta para publisher memanggil kode Javascript yang bertugas untuk menyisipkan artikel dari pemasang iklan di tengah-tengah tampilan web mereka secara native. Di dalam kode ini terdapat satu fungsi yang menyesuaikan tampilan artikel dengan style masing-masing website, sehingga tidak ada kesan norak atau style yang bertabrakan dengan style web publisher. Nah, di sinilah tantangan untuk Closure.
Awalnya saya menggunakan jQuery untuk proses ini. Saya pikir hampir semua website publisher pasti menggunakan jQuery sehingga saya cukup memanggil fungsi-fungsinya saja. Tapi terjadi masalah, tidak semua publisher menggunakan versi jQuery yang up-to-date sehingga penggunaanya tidak bisa maksimal karena script tersebut bersifat global dipakai di semua website publisher.
Me-load paksa jQuery versi terbaru juga tidak bisa berjalan baik. Ada saja plugin di publisher yang tidak kompatibel. Ditambah lagi hal itu mengharuskan visitor men-download 2 versi jQuery yang size-nya lumayan besar. Waste of bandwidth. Oleh karena itulah, saya butuh satu library yang independen dan ber-size relatif kecil agar tidak membuang-buang bandwidth pengujung.
Dan Closure menjadi jawabannya. Fungsi yang disediakan cukup andal, meski tidak se-ekstrim jQuery yang super mudah. Hal-hal semacam selector yang menjadi keunggulan jQuery juga sudah bisa dihandle dengan CSS3 selector. Satu hal yang agak menjadi sandungan kecil adalah kompatibilitas, beberapa fungsi Closure tidak bisa berjalan di browser-browser lama, macam IE8 ke bawah. Tapi toh, workaround-nya juga tidak begitu susah. Dan lagian siapa pula yang masih pakai IE8?
—
Kesimpulan postingan ini adalah, jangan terbuai dengan kemudahan yang ditawarkan jQuery. Pelajari apa yang sebenarnya terjadi di belakang layar jQuery dan pelajarilah vanilla Javascript serta library-library lain yang tak kalah handal. Ada yang pernah menggunakan PrototypeJS? Boleh di-share pengalamannya?
BTW, penasaran dengan produk native ads LintasMe yang sedang dibuat? Tunggu tanggal mainnya yaa..
219 replies on “Javascript: Google Closure Library vs jQuery”
salam kenal gan….
mohon izin untuk ikuti blog ini gan …
semoga tambah berkah berlimpah ilmunya nihhh…
LikeLike
makasih banget infonya gan..
LikeLike
hmm ilmu baru ya okeh ane pelajari dulu gan makasih infonya 🙂
LikeLike
thanks informasinya
LikeLike
Saya sangat menyukai postingan Anda, karena menurut saya postingan Anda sangatlah berkualitas dan bisa bermanfaat
Selain itu saya menyukai ide-ide Anda dalam menyusun setiap kata dengan baik, uga di kemas dengan kata-kata yang menarik. Sehingga akan berdampak efek positif pada pembaca supaya tidak mudah Bosan untuk membacanya.
LikeLike
sangat bermanfaat gan makasi
LikeLike
Ilmunya sangat keren gan. Trimakasih sekali..
LikeLike
Selamat siang..
Informasinya sangat menarik untuk di baca, terimakasih, ditunggu aerikel2 menarik lainnya
LikeLike
terimakasih salam kenal
LikeLike
informasinya menarik sekali, Terimakasih Gan….
LikeLike
nice info terimakasih banyak ya artikelnya sangat menarik,,,
LikeLike
terimaksaih informasinya
LikeLike
Keren gan..
LikeLike
memang gan
tetapi, sisi negatifnya penggunaan javascript adalah dapat menambah beban blog dan menguras banyak kuota untuk mengaksesnya
LikeLike
jquery memang mudah dikembangkan sehingga banyak yang pake
LikeLike
meskipun gantuk tetapi saya semangat membaca artikel agan ini 🙂
LikeLike
terima kasih mas, info yg sangat menarik, saya yg termasuk penggemar berat JQuery, kayaknya harus berpikir ulang. . . 🙂
LikeLike
postingan yang sangat menarik,
kami sangat manunggu info yang lebih menarik lainnya. segera psotingan yang lebih menarik lagi yah gan
LikeLike
makasih banyak gan buat infonya yah 🙂
LikeLike
makasih min atas postingannya, mau tanya juga min,, bisa ga kita buat scrip sendiri?
LikeLike
postingan yang menarik. jadi tau lebih banyak tentang javascript. thanks
LikeLike
mantabb browww
LikeLike
maksih brow
LikeLike
informasi yang berguna sekali.
LikeLike
thanks information
nice post..
I like this website
regards
kursus seo
LikeLike
Kalo ane meningan file jquery langsung gan, soalnya ada beberapa fungsi yang kalo update di versi terbaru tidak bekerja, contoh seperti live(), skr bisa memakai on()
LikeLike
mas mau tanya, Kalo ane meningan file jquery langsung gan, soalnya ada beberapa fungsi yang kalo update di versi terbaru tidak bekerja, contoh seperti live(), skr bisa memakai on()
LikeLike
mas jquery untuk slide punya kodingannya ga yah??
saya punya web tapi agak berat karena jquery tampaknya.
LikeLike
kerennnnnnn gan
LikeLike
makasih infonya sangat bermanfaat sekali
LikeLike
jquery slide show bisa dibuat responsive gak mas? http://tipskecantikanz.blogspot.com/
LikeLike
Bisa, kalo ente bisa nyetting nya :p
LikeLike
sungguh infonya sangat bermnfaat sekali makasih infonya
LikeLike
Keren sekali informasi yang disajikan di blog ini 🙂 tingkatkan bro 🙂
LikeLike
Lebih enak pake Jquery
LikeLike
Setuju mas
LikeLike
Memang banyak sekali elemen website yang dibuat dengan javascript gan..Tapi kadang-kadang pake javascript bikin loading blog jadi lambat
LikeLike
thx gan atas info nyaa.. jangan lupa mampir, MAKANAN ENAK YANG MENCERDASKAN OTAK http://forlife-good.blogspot.com/2014/03/makan-enak-cerdas-otak.html
LikeLike
Baru tau lebih lanjut tentang javascript..thanks Gan infonya…
LikeLike
Informasinya sangat bermanfaat.
Update terus ya.. Terima kasih..
LikeLike
oke banget gan emang harus hati-hati dan diamati dulu,,,thanks
LikeLike
Jquery memang sangat di optimasi mas, apalagi sudah mendukung semua browser, bisa dikatakan jquery sebagai alat cantik untu menghias rumah.
LikeLike
Ane tetap setia dengan jQuery simple dan light 😀
Tapi jquery masih ada kekurangan, klo misalnya kita upgrade ke versi baru, kadang ada beberapa fungsi yang ga jalan..
Contoh sebelum versi 1.9 kebawah saya pakai fungsi live() skr udah g support lagi solusinya pake on() deh..
LikeLike
Google Closure Library bakal jadi pesaing berat jquery kayaknya
LikeLike
thanks infonya, jadi pengen coba google closure library
LikeLike
Saya sudah banyak pakai jquery dalam template saya. Dan pengen coba miliknya om google ini. Jquery punya saingan baru nih ! Thanks informasinya om ! Nambah wawasan buat kita semua.
LikeLike
Makasih gan informasinya menarik untuk disimak,
LikeLike
dengan jquery banyak terbantu
LikeLike
terimakasih atas infonya. 🙂 sukses teruss
LikeLike
trimakasih atas artikelnya yang berjudul ” JAVASCRIPT: GOOGLE CLOSURE LIBRARY VS JQUERY”
wusss sepertinya ini akan menjadi persaingan yang hebat 😀
LikeLike
Nice Artilce. Salam Neter
LikeLike
lagi-lagi google mengeluarkan produk pembunuh produk lain 😦 padahal jquery kan open source, kenapa gak didukung aja atau dibeli 😦 kasian jquery juka harus bersaing dengan google
LikeLike