Pelatihan ini dirancang untuk membekali peserta dengan pemahaman mendalam dan keterampilan praktis dalam mengelola state dan side effects di dalam aplikasi React secara efisien dan modern menggunakan React Hooks. Peserta akan belajar untuk meninggalkan pola kelas (class components) dan beralih sepenuhnya ke fungsi dengan Hooks, sehingga menghasilkan kode yang lebih bersih, modular, dan mudah diuji. Pelatihan akan dilaksanakan dengan pendekatan hands-on workshop yang interaktif, mencakup: Setelah menyelesaikan pelatihan ini, peserta diharapkan mampu:Ringkasan Program Pelatihan
Tujuan Pelatihan
Target Peserta
Modul-Modul Standar yang Akan Dibahas
Materi Tambahan (Opsional/Lanjutan)
Metode Pelatihan
Hasil yang Diharapkan
useEffect dan Custom Hooks.useMemo, useCallback, dan React.memo.
What you will learn?
Pendahuluan React Hooks
-
1. Mengapa Hooks Diperkenalkan?
-
2. Aturan Dasar Penggunaan Hooks
-
3. Perbandingan: Class Component vs Functional Component dengan Hooks
-
4. Persiapan Lingkungan Pengembangan
Dasar-dasar useState
-
1. Deklarasi State dengan useState
-
2. Inisialisasi State Awal
-
3. Memperbarui State: Setter Function
-
4. State dengan Tipe Data Objek dan Array
-
5. Best Practices Penggunaan useState
useEffect untuk Side Effects
-
1. Konsep Side Effects dalam React
-
2. Struktur Dasar useEffect
-
3. Dependency Array: Kosong, Berisi, dan Tanpa Array
-
4. Cleanup Function dengan useEffect
-
5. Contoh Implementasi: Data Fetching, Event Listeners, dan Subscriptions
Custom Hooks
-
1. Konsep dan Manfaat Custom Hooks
-
2. Aturan Penamaan Custom Hooks
-
3. Membuat Custom Hook Pertama
-
4. Custom Hook untuk Form Handling
-
5. Custom Hook untuk API Calls
-
6. Berbagi Logic antar Komponen dengan Custom Hooks
useReducer untuk State Kompleks
-
1. Konsep Reducer Pattern
-
2. Perbandingan useState vs useReducer
-
3. Implementasi useReducer Dasar
-
4. Complex State Management dengan useReducer
-
5. Integrasi dengan Context API
Context API dengan useContext
-
1. Masalah Prop Drilling
-
2. Membuat Context dengan createContext
-
3. Mengonsumsi Context dengan useContext
-
4. Dynamic Context Values
-
5. Optimasi Performa Context
Hooks Referensi: useRef dan useImperativeHandle
-
1. Mengakses DOM Elements dengan useRef
-
2. useRef untuk Mutable Values
-
3. Forwarding Refs dengan React.forwardRef
-
4. Customizing Ref Exposure dengan useImperativeHandle
-
5. Contoh Kasus: Fokus Input dan Animasi
Hooks Optimasi: useMemo dan useCallback
-
1. Konsep Memoization dalam React
-
2. Optimasi Perhitungan Berat dengan useMemo
-
3. Mencegah Re-creation Functions dengan useCallback
-
4. Kapan Harus Menggunakan useMemo dan useCallback
-
5. Common Pitfalls dan Best Practices
Hooks Tambahan dan Eksperimental
-
1. useLayoutEffect untuk Synchronous Updates
-
2. useDebugValue untuk Custom Hook Development
-
3. useDeferredValue untuk Optimasi Render
-
4. useTransition untuk Non-Blocking UI
-
5. useId untuk Unique Identifier Generation
Testing Komponen dengan Hooks
-
1. Strategi Testing React Hooks
-
2. Testing Custom Hooks
-
3. Mocking Hooks dalam Testing
-
4. Testing Asynchronous Effects
-
5. Best Practices Testing dengan React Testing Library
Pattern dan Best Practices Lanjutan
-
1. Compound Components dengan Hooks
-
2. State Management Patterns
-
3. Error Handling dengan Error Boundaries dan Hooks
-
4. Optimasi Performa Aplikasi Berskala Besar
-
5. Migrasi dari Class Components ke Hooks
Studi Kasus: Aplikasi Real-World
-
1. Membangun Todo App dengan Hooks Lengkap
-
2. Implementasi Authentication Flow
-
3. State Management Global dengan Context + useReducer
-
4. Integrasi dengan External APIs
-
5. Optimasi dan Deployment