# DI Và Inversion of Control

> Constructor injection, Inversion of Control và composition root startSharedApp trên Android và iOS.

- URL: https://dantech.academy/courses/kotlin-accelerator/engineer-builder/07-dependency-injection/lesson-01-di-basics
- Khóa học: [Mobile Action Pro](https://dantech.academy/courses/kotlin-accelerator.md)
- Module: Dependency Injection Với Koin
- Thời lượng: 25 phút
- Độ khó: intermediate
- Truy cập: Dành cho học viên
- English: https://dantech.academy/en/courses/kotlin-accelerator/engineer-builder/07-dependency-injection/lesson-01-di-basics.md

## Mục tiêu

- Viết class nhận dependency qua constructor và test nó bằng fake, không cần Koin
- Giải thích Inversion of Control: quyền tạo object chuyển về composition root
- Đọc startSharedApp và hai composition root App.onCreate, doInitApp cùng thứ tự khởi động của chúng

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

1. Mục Tiêu Bài Học
2. Phần 1: Class Tự Tạo Dependency
3. Phần 2: Constructor Injection
4. Phần 3: Inversion Of Control
5. Phần 4: Ai Dựng Graph Trong Repo
6. Phần 5: DI Không Bắt Buộc Có Framework
7. Bài Tập Thực Hành
8. Lộ Trình Đọc Code
9. Dấu Hiệu Cần Tránh
10. Tham Khảo
11. Ý Chí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: [Best Practices & Anti-Patterns](https://dantech.academy/courses/kotlin-accelerator/engineer-builder/06-clean-architecture/lesson-12-best-practices.md)
- Bài tiếp theo: [Tổng quan Koin (Multiplatform)](https://dantech.academy/courses/kotlin-accelerator/engineer-builder/07-dependency-injection/lesson-03-koin-overview.md)
