React adalah library JavaScript yang di gunakan untuk membangun antarmuka pengguna (UI) terutama untuk aplikasi web yang interaktif dan dinamis. React dikembangkan oleh Facebook dan pertama kali di rilis pada tahun 2013
Ciri Khas Dan Keunggulan React
1. Komponen (Component Based)
- Aplikasi dibangun dari komponen kecil dan independen yang dapat digunakan kembali
- Contoh <Navbar /> <Footer /> <ProductCard />
2. Virtual DOM
- React menggunakan virtual Dom untuk mempercepat kinerja dengan meminimalkan manipulasi DOM langsung
3. Deklaratif
- Kamu hanya perlu mendeskripsikan apa yang ingin kita tampilkan dan react akan menangani sisanya
Contoh jsx : <h1>Hello {user.name}! <h1 />
4. JSX (JavaScript XML)
- React menggunakan JSX yaitu sintak yang mirip dengan HTML yang di tulis didalam JavaScript, agar kode UI lebih mudah dibaca dan ditulis
5. Unidirectional Data Flow
- Data Mengalir satu arah dari parent ke child membuat logika aplikasi lebih mudah dipahami dan di-debug
Contoh Sederhana :
Mengapa Kita Harus Menggunakan React
1. Komponen Yang Dapat Digunakan Kembali
React berbasis komponen artinya kita bisa membuat satu komponen misal tombol, navbar, atau produk lalu menggunkan berulang kali di seluruh aplikasi, ini menghemat waktu dan membuat kode menjadi lebih rapih.
2. Performa Tinggi Dengan Virtual DOM
React menggunakan virtual DOM yaitu refresentasi ringan dari DOM asli, saat ada perubahan react hanya memperbaharui bagian yang berubah saja bukan seluruh halaman, ini membuat aplikasi lebih ringan dan lebih responsif.
3. Penulisan Kode Lebih Mudah Dengan JSX
React menggunakan JSX gabungan antara JavaScript dan HTML-like syntax. ini memudahkan develover membuat tampilan tanpa perlu memisahkan logika dan UI terlalu jauh.
Contoh :
4. Data Flow Yang Jelas (One-Way Data Binding
React menggunakan alur data satu arah (dari parent ke child). Ini membuat alur logika data lebih mudah dipahami dan debug jadi lebih gampang
5. Ekosistem Besar dan Komunitas Aktif
React punya ekosistem tools dan pustaka pendukung yang luas: React Router (navigasi), Redux / Zustand (state management), Axios / Fetch (API request), Next.js (framework React untuk SSR & SEO)
6. Cocok Untuk Sekala Kecil Maupun Besar
Mulai dari blog pribadi hingga dashboard admin yang kompleks, React bisa digunakan karena skalabilitasnya tinggi.