Hal-hal yang didapatkan dari React

Saya kenal React pada tahun 2015. Seingat saya waktu itu React versi 15 dan belum menggunakan class untuk mendefinisikan container maupun component. Awal mula kenal dengan React berkat dari sesi webinar yang diadakan oleh CodePolitan bersama Hacktiv8 yang mengundang mas Riza Fahmi sebagai pembicara dan mendemokan React menggunakan studi kasus Tic Tac Toe (kalau tidak salah). Karena pemahaman saya seputar JavaScript dan dunianya yang fungsional maka saya memutuskan mengabaikannya.

Tahun 2018 React sudah versi 16.x dan saat ini dunia front-end sedang gencar-gencarnya serta React sudah menggunakan class untuk mendefinisikan container maupun component. Dengan pemahaman JavaScript yang saya punya akhirnya saya mencoba library ini. Saya mengambil tutorial berbayar buatan Max dari Udemy sebagai penunjang utama saya belajar React.

Lho, kok berbayar? Ngga ada yang gratis ya tutorialnya? Kita bisa saja nyari yang gratis bahkan bajakan di internet. Cuma, bagus juga kan menginvestasikan uang yang kita punya untuk membayar sebuah tutorial? Lagi pula Udemy sering mengadakan diskon di setiap kegiatan.

Setelah mempelajari tutorial dari Max ada beberapa hal yang saya dapatkan:

  • Jangan pernah belajar dan pakai Redux.

Saat ini saya masih dalam tahap belajar memahami state dan props. Apalagi banyak isu beredar kalau React membuat Context API untuk menggantikan Redux. Jadi, bukannya bagus bila tidak bergantung banyak pada pihak ketiga? Karena React adalah JavaScript dan saat membuat project menggunakan CRA (Create React App) maka JavaScript otomatis langsung gendut (bloated).

  • Gunakan React.Fragment sebagai pengganti div untuk membungkus children.

Seperti yang kita ketahui bahwa setiap node atau tag HTML tidak boleh berdiri sendiri apalagi berbanyak dalam suatu JSX. Maka dari itu banyak yang menggunakan div sebagai tag untuk membungkus kumpulan node tadi. Namun, hal tersebut tidaklah ramah lingkungan. Mengapa? Karena div juga menambahkan ekstra node ke dalam DOM. Secara implisit, biaya (cost) untuk mengakses DOM itu mahal. Silahkan baca artikelnya di sini: https://reactjs.org/docs/fragments.html

  • Siklus kehidupan komponen di React

Saat saya mencoba tutorial buatan Max, ada beberapa siklus kehidupan komponen (Component Lifecycle) sudah tidak dinyatakan aman oleh React dan saya sendiri perlu ekstra belajar untuk hal ini.

Sejauh ini belajar React cukup menyenangkan dan menambah porsi ilmu saya mengenal React dan JavaScript itu sendiri. Ada beberapa hal yang ingin saya perdalam (urutan tidak berpengaruh):

  1. State dan props
  2. Component lifecycle
  3. Server side rendering in React
  4. Accessibility in React
  5. React Context, React.Lazy, dan Suspense

Untuk kurva belajar di React lumayan menguras waktu bagi saya pribadi. Dari sini juga saya tertarik mencoba Vue karena saya bermain dengan Laravel (framework PHP) dan di Indonesia sendiri banyak developer VueJS. Saya juga tidak ingin memforsir diri untuk fokus di React dan Vue, namun saya harus mengambil sikap untuk memprioritaskan salah satunya.

Jadi, saya putuskan untuk memprioritaskan Vue mulai sekarang dan kabarnya (gosip) kalau kurva belajar di Vue tidak menguras banyak waktu serta cocok kalau lagi belajar front-end seperti yang dikatakan oleh bli Prabu Rangki. Jika ada waktu saya akan coba main di React lagi. 🤞🏼