Thanh tiến trình (Progress bar) – Liệu nó có phải một cú lừa!

6 Likes

Nhưng làm sao máy tính có thể tính ra con số 4 minutes remaining? Nó lấy thời gian hoàn thành công việc đã xong nhân với tổng lượng công việc để tính tổng thời gian cần hoàn thành trong tương lai?

2 Likes

Uhm, tớ đoán cậu hỏi về mặt kỹ thuật.

Nhìn chung, số “4 minutes remaining” có thể được tính như cậu nói.
Giả sử, cậu có 1 công việc, cần thực hiện các task dưới:

  • Task 1: khối lượng 20%
  • Task 2: khối lượng 25%
  • Task 3: khối lượng 15%
  • Task 4: khối lượng 10%
  • Task 5: khối lượng 30%

Khi test, cậu nhận thấy, với 1 máy tính trung bình, công việc trên thực hiện mất 25 minutes.
Vậy nên, lúc đầu, cậu hoàn toàn có thể show “25 minutes remaining” lúc process bắt đầu chạy.

Tới khi cậu thực hiện xong task 1, cậu nhận thấy task đó mất tới 7 phút để hoàn thành => trên máy tính này, có thể sẽ mất 35 minutes để hoàn thành.
Khi đó, cậu chỉ cần show “28 minutes remaining” thay vì kế hoạch ban đầu là 20 phút còn lại.

Đó là 1 cách đơn giản để implement số phút còn lại :smile:


Bài viết này rất thú vị, nó liên quan tới UX hơn là kỹ thuật thuần túy. Việc show process bar là 1 cách áp dụng Nielsen’s visibility system status heuristic vào design UI cho người dùng.
Mọi người có thể đọc thêm các heuristic khác tại đây.

9 Likes

Bài viết chỉ đi dưới góc độ tâm lý học về trải nghiệm người dùng phải chờ lâu lâu thôi :smiley:
Cảm ơn bạn đã góp ý.

4 Likes

Với một số task nặng về tính toán và kéo dài, bạn còn có thể chạy thử một test dữ liệu nhỏ đã biết trước output.

5 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?