Tôi chỉ hỏi về các thực hành chuẩn về cú pháp xác thực đối số. Tôi đang làm việc với PHP như hiện tại, nhưng bất cứ thứ gì được coi là giải pháp thuyết bất khả tri về ngôn ngữ/nền tảng sẽ là tuyệt vời.Tiêu chuẩn xác thực đối số chức năng/phương pháp
Hiện tại, tôi biết hai cú pháp khá phổ biến. Ví dụ (sở thích của tôi):
function foo($a, $b, $c){
if(!$a){ throw new Exception(); }
if($b < 0){ throw new Exception(); }
if(!check($c)){ throw new Exception(); }
//do stuff with $a, $b, and $c
}
Và cách khác:
function foo($a, $b, $c){
if($a){
if($b >= 0){
if(check($c)){
//do stuff with $a, $b, and $c
}else{ throw new Exception(); }
}else{ throw new Exception(); }
}else{ throw new Exception(); }
}
Trong mọi trường hợp, nếu có ai biết tài liệu minh họa bất kỳ loại tiêu chuẩn, hay các hoạt động chung về vấn đề này, tôi rất sẽ đánh giá cao một tài liệu tham khảo.
Tất nhiên, sở thích cá nhân và ý kiến được chào đón nhiều hơn, nhưng lý do cho lựa chọn của bạn sẽ là tài sản.
Cảm ơn bạn Michael - Đó là phương pháp tương tự tôi thích. Bất kỳ đề xuất nào về các lớp Assertion hiện có để xác nhận/ném ngoại lệ? Tôi cho rằng một thiết kế lớp Assertion có hiệu quả, sẽ mở rộng lớp Exception hiện có, đúng không? Bất kỳ đề xuất về nơi để bắt đầu viết của riêng tôi? – Dan