RecyclerView hiển thị danh sách lớn hiệu quả bằng cách tái sử dụng view khi cuộn thay vì tạo mới cho mọi item.
Các thành phần:
- Adapter: gắn dữ liệu vào view; override onCreateViewHolder(), onBindViewHolder(), getItemCount().
- ViewHolder: giữ tham chiếu tới các view con của một item để khỏi phải findViewById lặp lại → giảm chi phí mỗi lần bind.
- LayoutManager: sắp xếp item (Linear/Grid/Staggered).
Cơ chế recycle: khi item cuộn ra khỏi màn, view của nó vào pool và được bind lại cho item mới. Dùng DiffUtil/ListAdapter để cập nhật danh sách mượt (chỉ đổi phần khác biệt).
Đây là bản View-system; ở Compose tương đương là LazyColumn/LazyRow.