# Giữ Side Effects Bên Ngoài Reducer

> Giữ navigation, analytics, API calls và snackbar ở ngoài pure transitions.

- URL: https://dantech.academy/courses/kotlin-accelerator/engineer-builder/03-state-machine-mvvm/lesson-05-keep-side-effects-outside-reducers
- Khóa học: [Mobile Action Pro](https://dantech.academy/courses/kotlin-accelerator.md)
- Module: State Machine Và MVVM
- Thời lượng: 12 phút
- Độ khó: intermediate
- Truy cập: Dành cho học viên
- English: https://dantech.academy/en/courses/kotlin-accelerator/engineer-builder/03-state-machine-mvvm/lesson-05-keep-side-effects-outside-reducers.md

## Mục tiêu

- Giữ reducer pure bằng cách trả typed effect description
- Thực thi mỗi effect trong một adapter hẹp với một collaborator

## Nội dung bài học

1. Mục Tiêu Bài Học
2. Phần 1: Effect trong DRE Là Đặc Tả 1 Task
3. Phần 2: Đọc hàm handleBackToMenu
4. Phần 3: Khi Nào Effect, Khi Nào Async Op?
5. Lộ Trình Đọc Code
6. Bad Smells
7. Điều Cần Nhớ

## Học cùng AI agent

Toàn bộ bài học dành cho học viên của khóa. Học viên mở bài trên web và bấm nút **Markdown** để copy toàn bài, rồi dán vào Claude, ChatGPT, Cursor hoặc agent bạn đang dùng. Nhanh hơn: tạo token ở `/profile/ai-agents` và agent đọc bài trực tiếp qua MCP.

- [Đăng ký khóa học](https://dantech.academy/kotlin-accelerator/checkout)

---

- Bài trước: [Wire ViewModel Với DRE Store](https://dantech.academy/courses/kotlin-accelerator/engineer-builder/03-state-machine-mvvm/lesson-04-wire-viewmodel-with-store.md)
- Bài tiếp theo: [Use Case: Đơn Vị Nghiệp Vụ Của App](https://dantech.academy/courses/kotlin-accelerator/engineer-builder/04-clean-architecture-integration/lesson-01-read-domain-use-cases.md)
