# Thiết Kế State, Action, Effect Và AsyncOp

> Học vocabulary state-machine của app thông qua DRE Pattern.

- URL: https://dantech.academy/courses/kotlin-accelerator/engineer-builder/03-state-machine-mvvm/lesson-02-design-state-action-effect-asyncop
- Khóa học: [Mobile Action Pro](https://dantech.academy/courses/kotlin-accelerator.md)
- Module: State Machine Và MVVM
- Thời lượng: 10 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-02-design-state-action-effect-asyncop.md

## Mục tiêu

- Tách feature contract thành các lane State, Action, Effect, AsyncOp và UI event
- Phân biệt Effect của reducer với one-time UI event mà handler emit

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

1. Mục Tiêu Bài Học
2. Phần 1: Đọc Thử 1 Contract
3. Phần 2: 5 Lane Của Một Feature Contract
4. Phần 3: Trace Sign-In Flow Qua 5 Lane
5. Phần 4: Action Không Phải Async Operation
6. Phần 5: Effect Khác UI Event
7. Lộ Trình Đọc Code
8. Bad Smells
9. Đ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: [Vì Sao Reducer Hữu Ích?](https://dantech.academy/courses/kotlin-accelerator/engineer-builder/03-state-machine-mvvm/lesson-01-understand-why-reducers-help.md)
- Bài tiếp theo: [Đọc Reducer Thật Của Game State Machine](https://dantech.academy/courses/kotlin-accelerator/engineer-builder/03-state-machine-mvvm/lesson-03-read-game-state-machine.md)
