Visão Geral
Este curso explora padrões avançados de design e estratégias de arquitetura para criar aplicações React mais escaláveis, organizadas e profissionais. Você aprenderá como estruturar componentes, lidar com complexidade, criar padrões reutilizáveis e aplicar boas práticas usadas em sistemas reais de grande porte.
Conteúdo Programatico
Module 1 – Advanced Component Architecture
- Smart vs dumb components
- Container–Presenter pattern
- Domain-driven component organization
- File and folder architecture for scalability
Module 2 – Design Patterns in React
- Compound Components pattern
- Render Props pattern
- Higher Order Components (HOCs) in modern React
- Controlled vs uncontrolled components
- Provider pattern for complex state sharing
Module 3 – Hooks and Logic Reuse
- Advanced custom hooks
- Separating UI from logic
- Reusable functional patterns
- Error handling and global exceptions
Module 4 – State Architecture
- State colocation strategies
- Context segmentation
- Global vs local state boundaries
- Scalable reducer structures
- Event-driven UI patterns
Module 5 – Performance Architecture
- Component memoization strategies
- Pure components and referential stability
- Heavy computation isolation
- Avoiding unnecessary renders
- Using useMemo, useCallback and React.memo efficiently
Module 6 – UI/UX Architecture
- Designing reusable primitives
- Typography, layout and spacing systems
- Creating a style abstraction layer
- Building a Design System foundation
Module 7 – Code Organization & Maintainability
- Naming conventions
- Module boundaries
- Reusable utilities and helpers
- Avoiding code smells in React
Module 8 – Patterns for API-Driven Components
- API services architecture
- Adapter pattern for APIs
- Handling loading states consistently
- Error and empty-state design
Module 9 – Real-World Patterns
- Feature-based architecture
- Microfrontends (high-level overview)
- Mix-and-match patterns in practical projects
Module 10 – Final Project
- Building a fully architected React application applying:
- Compound Components
- Containers & Presenters
- Advanced hooks
- Segmented context
- Reusable UI patterns
- Documenting architecture decisions