Ah, sudah cukup lama saya tidak menulis artikel.
Hampir 5 bulan saya tidak menulis artikel di blog ini. Bukannya malas, tapi banyak sekali proyek yang sedang saya tangani.
Belum lagi soal urusan SEO yang cukup menyita waktu.
Ngomong-ngomong soal SEO, sudah tahu belum kalau Google melakukan update algoritmanya yang sangat berdampak pada ranking SEO di bulan februari lalu?
Kalau belum tahu, coba sana cari tahu.
Soalnya, banyak situs saya yang terkena dampak dari update itu dan benar-benar bikin saya pusing.
Oke, kita hentikan bahas soal SEO, kali ini saya hanya ingin membahas tentang ReactJS.
Kalau malas tahu soal library javascript yang satu ini maka boleh baca sampai habis. Hanya saja, saya tidak akan menulis kode-kode reactjs disini.
Hanya memperkenalkan saja, bagi yang belum kenal.
Alasan saya membahas ini adalah karena saya sedang mempelajarinya untuk meningkatkan performa dari banyak proyek codeigniter saya.
Oke, mari kita bahas.
Apa itu ReactJS?
Bagi para programmer tentu tahu bahwa facebook itu menggunakan PHP sebagai backend-nya.
Dan…
…PHP itu sulit memproses data secara realtime.
Baca juga: Bagaimana Cara Belajar PHP yang Paling Cepat dan Efisien.
Karena facebook mulai sangat booming saat itu dengan penggunanya yang bertambah secara cepat setiap harinya, maka mereka mulai mencari alternatif.
Alternatif yang bagus untuk meningkatkan performa dan pengalaman pengguna facebook.
Untuk memecahkan masalah ini, internal facebook membuat bolt.js.
Tak berapa lama, mereka mendapat masalah dan kemudian membuat library baru yang terinspirasi dari bolt dan XHP.
Sejak digunakan di instagram, reactjs menjadi sangat populer.
Kemudian, tahun 2013, tepatnya bulan mei, facebook membuat reactjs menjadi “open-source”.
Ini meningkatkan potensi dari react js ini sendiri agar berkembang secara cepat.
Lihat saja skema berikut ini, terlihat kepopulerannya naik sangat tajam dalam waktu yang singkat.
Image Courtesy: GitHub Stars History(timqian.com)
Kelebihan dari React JS
Library yang satu ini mampu membuat banyak hal menjadi nyata.
Mulai dari:
- Meningkatkan performa web yang telah ada.
- Mampu membangun UI yang lebih indah dan cepat.
- Bisa digunakan untuk membuat aplikasi mobile dengan cepat.
- Dukungan dari NPM turut meningkatkan fleksibilitas dari react
- Support penulisan gaya JSX yang sangat mudah dan populer.
- Mau cepat membangun sesuatu? gunakan saja Gatsby!
Wait…
…kalau Anda bingung dengan JSX, dan Gatsby, maka saya akan menjelaskannya disini.
JSX adalah singkatan dari Javascript XML/HTML.
Fungsinya adalah sebagai pengganti dari kode HTML yang terkadang sangat “jorok” dan banyak tanda kutip-dua-nya.
Sebagai contoh, ini adalah kode javascript untuk output html dari sebuah element.
var name = "areablogger.com"; var element = "<h1>Hello, " + name + "</h1>"; document.getElementById("demo").innerHTML = element;
Kalau menggunakan JSX react:
const name = "areablogger.com"; const element = <h1>Hello, {name}</h1> ReactDOM.render( element, document.getElementById("root") );
Masih banyak lagi kelebihan dari react yang mana malas saya bahas semuanya.
Intinya kalau mau buat UI (front-end) yang bagus dan cepat, sebaiknya gunakanlah react js atau vue js.
Anda bebas memilih sih.
Mau pakai jquery saja juga gak masalah. Hanya saja, banyak developer yang bilang, era jquery sudah lewat.
Hahaha… ada-ada aja.
Gatsby?
Oh iya, gatsby yang saya maksud adalah BUKAN ini ya:
Tapi yang satu ini:
Jadi, gatsby adalah “framework” yang dibuat dengan React, Webpack, dsb untuk mempermudah Anda membuat sebuah web berbasis file statis ataupun aplikasi. Untuk mengenal lebih jauh, coba klik situs utama gatsby js ini.
Pokoknya serba bisa dah!
Anda bahkan tidak memerlukan database untuk membuat sebuah situs yang bagus, cukup gatsby!
Pertanyaannya: bagaimana react js meningkatkan performa codeigniter?
Well, saya harus menjawab hal ini.
Pertama, kalau Anda membuat aplikasi dengan codeigniter, maka output html-nya darimana?
Dari view kan?
Semakin banyak halaman yang Anda buat, maka semakin banyak pula file view yang Anda
Coba bayangkan kalau…
…Anda tidak perlu membuat file-file view tersebut.
Hanya perlu membuat satu aplikasi / UI menggunakan library ini dan kemudian, memanggil setiap data menggunakan API dari situs codeigniter Anda.
Mana yang bakal lebih cepat?
Tentu saja yang menggunakan UI JS ini. Soalnya, semua file yang diperlukan untuk memuat halaman hanya perlu di “load” sekali, kemudian data-data di minta dari melalui API yang terintegrasi.
Beban webserver untuk memproses kode PHP akan berkurang!
Anda akan jarang lagi :
echo $namavariabel; echo '<h1>' . $title . '<h1>';
Di setiap controller, tinggal outputkan saja setiap hasil akhir pemrosesan:
echo json_encode($namavariabel);
Lain kali saya bahas lagi lebih banyak tentang react dan gatsby, soalnya sudah malas nulis nih.