Tôi đang mã hóa các thói quen khác nhau và tôi đang cố gắng hết sức để giữ cho nó gọn gàng và được cấu trúc lại.Cấu trúc đúng để kiểm tra lỗi bằng NSError
Phương pháp Tôi đang tạo đang bắt đầu trông giống như mã này:
-(IBAction)buttonPress:(id)sender {
// Create Document Shopping List with this document
[self doSomething:&error];
if(error) {
[NSApp presentError:&error];
return nil;
}
[self doSomethingElse:&error];
if(error) {
[NSApp presentError:&error];
return nil;
}
[self doYetSomethingElse:&error];
if(error) {
[NSApp presentError:&error];
return nil;
}
}
Tôi yêu NSError, nhưng điều này có vẻ như một cách hết sức vụng về xử lý tất cả các lỗi của tôi.
Một vài suy nghĩ tôi đã có khoảng cách khác nhau:
a) kiểm tra lỗi có thể được xây dựng thành các phương pháp doSomething, doSomethingElse vv, nhưng sau đó tôi sẽ không thể để thoát khỏi phương pháp bấm nút mà không cần làm một số loại kiểm tra về giá trị trả về, điều này sẽ dẫn tôi trở lại một cấu trúc tương tự.
b) Tôi có thể thiết lập NSError như là giá trị quan trọng được quan sát, nhưng một cái gì đó về điều này cảm thấy sai lầm sâu sắc. Tôi rất ý thức về khả năng lạm dụng với KVO, vì vậy tôi đang cố gắng làm mọi thứ mà không có nó ở bất cứ đâu.
Chắc chắn tôi đang thiếu thứ gì đó thực sự cơ bản ở đây? Có một mô hình có thể giúp tôi không? Hoặc là cấu trúc này OK?
Tôi hoàn toàn loạng choạng bởi phản hồi tuyệt vời mà tôi đã nhận được trong 10 phút qua! Thankyou tất cả rất nhiều cho câu trả lời của bạn. Rất, rất hữu ích. –