Tôi thường xuyên sử dụng mã lỗi khi lỗi cần được chuyển tải tới người dùng vì chúng có thể được quốc tế hóa. Ví dụ, trong trình biên dịch, nếu có lỗi trong mã người dùng, các lỗi có thể được báo hiệu trong trình phụ trợ của trình biên dịch, trong khi giao diện người dùng có thể bản địa hóa chúng thành các chuỗi văn bản/ngôn ngữ cụ thể để người dùng sử dụng. Enums có thể tốt hơn cho mục đích này hơn là nguyên nguyên, tuy nhiên.
Tôi cũng đã sử dụng chúng trong việc tạo khung "báo cáo lỗi" cho ứng dụng. Khi các ngoại lệ được ném ra, chúng được ném với một mã lỗi, khi mà trường hợp ngoại lệ phát sinh, được gửi (với một bản ghi) đến máy chủ trung tâm. Mã đã giúp tổ chức cơ sở dữ liệu để chúng tôi có thể kiểm tra các nhật ký liên quan đến một lỗi cụ thể.
Cuối cùng, như đã đề cập trong một vài câu trả lời khác, mã lỗi rất dễ hiểu và không có khả năng ngôn ngữ với google (nghĩ mã lỗi Windows/bài viết MS KB), do đó, mã lỗi với mô tả sự cố có thể là tốt hơn cho người dùng cuối của một sản phẩm kỹ thuật.
Ý tưởng về mã lỗi rất hữu ích, nhưng IMO chúng thuộc về thành viên ngoại lệ hoặc làm tham số cho giao diện IErrorReporter hoặc thứ gì đó khác hơn là giá trị trả về của phương thức.
Nguồn
2010-05-08 02:45:54
Câu hỏi thú vị +1 –