Visão Geral
Este curso aprofunda o uso do Redux Toolkit (RTK) para gerenciamento avançado de estado em aplicações React. Aqui você aprende desde a arquitetura ideal, padrões, RTK Query, boas práticas e como escalar aplicações complexas sem dor de cabeça. Tudo com foco em performance, organização e código limpo.
Conteúdo Programatico
Module 1 – Introduction to Modern Redux
- What is Redux and when to use it
- Problems Redux solves
- Redux Toolkit vs old Redux
- Overview of slices, store and reducers
Module 2 – Setting Up Redux Toolkit
- Installing Redux Toolkit and React Redux
- Creating the store
- Working with slices
- Writing reducers using Immer
- Action creators and dispatching actions
Module 3 – State Architecture with Redux
- Structuring slices for large apps
- Root reducer organization
- Normalizing data
- Avoiding deeply nested states
- Best naming and folder conventions
Module 4 – React Integration
- useSelector and useDispatch patterns
- Avoiding unnecessary re-renders
- Memoization strategies
- Using selectors and reselect
Module 5 – Async Logic with createAsyncThunk
- Handling async requests
- Loading, success and error states
- Chaining async logic
- Canceling async operations
- Error boundaries and fallback UI
Module 6 – RTK Query Fundamentals
- Queries and mutations
- Auto-caching, refetching and invalidation
- Working with tags
- Lazy queries
- File upload and advanced mutation patterns
Module 7 – Advanced RTK Query Techniques
- Cache management strategies
- Streaming and polling
- Handling auth tokens
- Pagination and infinite queries
- Integrating multiple API services
Module 8 – Middleware & Side Effects
- Custom middlewares
- Logging and analytics
- Security considerations
- Handling cross-cutting concerns
Module 9 – Large-Scale Architecture
- Feature-based folder structure
- Modular slice expansion
- Strategies for enterprise-level applications
- Maintaining clean boundaries between UI and state
Module 10 – Final Project
- Building a complete application using:
- Redux Toolkit
- RTK Query
- Feature-based architecture
- Memoized selectors
- Async flows
- Optimizing performance and documenting architecture decisions