Tôi nghĩ rằng bạn đang đi đúng hướng. Không ném, bắt, cũng không ghi lại tất cả các ngoại lệ có khả năng ném có ý nghĩa nhiều. Đôi khi tính nghiêm ngặt của sản phẩm đòi hỏi mức độ cao hơn về việc làm và tài liệu ngoại lệ (ví dụ: các khía cạnh quan trọng về an toàn nhất định của hệ thống).
Chiến lược phòng thủ hơn, sử dụng các khái niệm hợp đồng để xác định các điều kiện tiên quyết (và hậu điều kiện) đối với những người gọi đặc biệt (ví dụ: bất cứ điều gì giống với một thành viên công cộng hoặc được bảo vệ) thường sẽ hiệu quả và linh hoạt hơn. Điều này không chỉ áp dụng cho việc thực hiện, mà còn cho tài liệu. Nếu các nhà phát triển biết những gì được mong đợi, họ có nhiều khả năng tuân theo các quy tắc và ít có khả năng bị nhầm lẫn hoặc sử dụng sai mã bạn đã viết.
Một số điều phổ biến cần được ghi lại bao gồm trường hợp tham số null. Thường có một hậu quả cho việc sử dụng của họ dẫn đến kết quả là điều mà thông thường không được mong đợi, nhưng được cho phép và sử dụng vì nhiều lý do, đôi khi vì sự linh hoạt. Là người tiêu dùng của một thành viên có các tham số cho phép null hoặc các giá trị phi lý, đặc biệt khác (như thời gian âm hoặc số lượng âm), tôi hy vọng sẽ thấy chúng được xác định và giải thích.
Đối với các tham số không null, với tư cách là người tiêu dùng của một thành viên công cộng hoặc được bảo vệ, tôi muốn biết rằng null không được phép. Tôi muốn biết phạm vi giá trị hợp lệ trong ngữ cảnh cụ thể là gì. Tôi muốn biết hậu quả của việc sử dụng các giá trị nằm ngoài phạm vi bình thường, nhưng nếu không thì hợp lệ trong một ngữ cảnh gọi khác (ví dụ: giá trị của loại này thường hợp lệ cho bất kỳ hoạt động nào, nhưng không phải ở đây - như tham số boolean không 'T mong đợi sai là một giá trị hợp lệ.
Đối với nền tảng, hoặc các giao diện nổi tiếng khác, tôi không nghĩ bạn phải đi đến cực đoan trong việc ghi lại nó. Tuy nhiên, vì bạn có cơ hội là nhà phát triển để thay đổi việc triển khai từ bất kỳ hướng dẫn nền tảng nào, hãy lưu ý cách thực hiện theo hướng dẫn đó có thể có giá trị.
Cụ thể đối với IDis Dùng, việc triển khai giao diện này thường cung cấp một phương pháp thay thế được ưa thích hơn quy trình xử lý rõ ràng. Trong những trường hợp này, hãy làm nổi bật phương pháp ưa thích và lưu ý rằng việc xử lý rõ ràng không được ưu tiên.