Khi xây dựng ứng dụng (mobile/web/desktop), mình muốn hỏi về các quy chuẩn hoặc best practice khi xử lý lỗi và hiển thị lỗi trong ứng dụng, đặc biệt trong các tình huống như:
- Khi không có dữ liệu (empty state)
- Khi gặp lỗi mạng hoặc lỗi hệ thống
- Khi người dùng không có quyền truy cập (403)
- Khi phiên đăng nhập hết hạn (401)
- Khi thao tác người dùng thất bại (gửi form, upload, …)
Một số câu hỏi cụ thể:
-
Nên hiển thị lỗi trực tiếp trong content view, hay popup/modal/snackbar? Khi nào thì dùng cái nào?
-
Các ứng dụng lớn (Google, Facebook, Slack, …) thường áp dụng những nguyên tắc gì để xử lý và hiển thị lỗi?
-
Có những mẫu giao diện (error UI patterns) nào được xem là chuẩn cho từng loại lỗi?
-
Có nên cố gắng tự động retry hoặc refresh trong một số trường hợp không?
-
Đành rằng mỗi công ty sẽ có đôi chút khác biệt, nhưng có những chuẩn chung như vậy mà cộng đồng quy ước không ?
Rất mong được chia sẻ về các nguyên tắc hay framework mà mọi người đang dùng liên quan đến vấn đề này.
Xin cảm ơn !