Chứng minh ngu ngốc liên quan đến nhiều hơn so với xác nhận đầu vào đơn giản. Tôi thậm chí sẽ không bao gồm một điều như vậy trong định nghĩa của nó.
Xác thực đầu vào là một quá trình trong đó bạn vệ sinh và xác thực dữ liệu người dùng để loại bỏ các giá trị bất hợp pháp / vô nghĩa. Điều này phải luôn luôn được thực hiện với bất kỳ thông tin nào đến từ bên ngoài chương trình của bạn để loại bỏ sự rõ ràng cũng như bảo vệ bản thân khỏi các cuộc tấn công (ví dụ như các cuộc tấn công tiêm sql).
Tôi sẽ coi việc chứng minh kẻ ngốc là một tập hợp logic để giữ cho người dùng không vô tình gây ra thiệt hại lớn cho anh ta thông qua các biện pháp hợp pháp.
Ví dụ, thực hiện rm
từ chối lệnh rm -rf /
và các biến thể đóng không liên quan gì đến xác nhận hoặc tính chính xác. Đó là một lệnh hoàn toàn hợp lệ. Thật không may, đó là một lệnh có thể và có thể xóa sạch tất cả dữ liệu của bạn khỏi tất cả các ổ đĩa trong Unix / Linux. Kẻ ngốc chứng minh điều này sẽ từ chối lệnh này và sẽ đề xuất rm -rf --i-really-mean-this /
, hoặc nếu ở chế độ tương tác, hãy gõ người dùng vào câu trả lời khẳng định sau một cảnh báo.
Bất cứ điều gì phá hoại hệ thống nên được chứng minh là ngu ngốc. Bất cứ điều gì có thể gây ra sự bối rối tiềm ẩn cũng có thể là một ứng cử viên (ví dụ: "bạn có chắc chắn muốn gửi email này mà không có tệp đính kèm mặc dù bạn đã đề cập đến một trong văn bản của mình không?", Và "bạn có chắc chắn muốn gửi email này đến toàn bộ công ty?")
Chống ngớ ngẩn là sự hợp tác giữa QA (cố gắng trở thành kẻ ngốc tốt nhất) và Phát triển (cố gắng dự đoán tất cả các kịch bản này và thiết kế xung quanh chúng).
Đối với một từ đồng nghĩa thân thiện hơn , tôi có thể đề xuất "phân tích đường dẫn mã phá hủy" hoặc "cho phép phản hồi của người dùng cho các hoạt động quan trọng". Bất cứ điều gì bạn có thể gọi nó, bạn thực sự nên bắt đầu nó càng sớm trong quá trình thiết kế càng tốt.