Tôi đang ở một con đường rất quan trọng trong phát triển ứng dụng di động đa nền tảng của mình ngay bây giờ và thực sự có thể sử dụng một số kiến thức chuyên môn (như woah) .Xử lý lỗi .NET: thử/bắt VS sự kiện VS trả về giá trị/trạng thái trường
Để cung cấp cho một số ngữ cảnh (có thể giúp trả lời tôi hy vọng), tôi đang phát triển một ứng dụng trên thiết bị di động .NET dựa trên khung công tác MonoCross tiện dụng, sử dụng VS2010U (không phải MonoDevelop, đó là dành cho IOS) . Nền tảng nhắm mục tiêu đầu tiên là Android, sau đó lên các cổng "IOS và Windows Phone" (không thực sự nếu tôi làm đúng).
Bây giờ tôi đã có một nền tảng vững chắc, bao gồm logic nghiệp vụ, lớp truy cập dữ liệu, cơ sở dữ liệu, dịch vụ web REST, v.v. Tôi sẽ xem xét và cố gắng xử lý lỗi, nhưng tôi không chắc cách tiếp cận tốt nhất cho điều này là.
Tôi được thông báo rằng các khối try-catch có thể là các lần truy cập hiệu suất (đây là một vấn đề lớn trong trường hợp này), là
điều này có đúng không? Tôi có nên sử dụng chúng một cách tiết kiệm, hoặc chỉ tát em bất cứ nơi nào ngoại lệ có thể được ném (Tôi muốn sử dụng chúng xung quanh tất cả các cuộc gọi API SQLite của tôi, vì tôi không biết những gì heck họ đang làm một nửa thời gian) .
Đang sử dụng gọi lại sự kiện là điều xấu để xử lý lỗi? Tôi được khuyên nên sử dụng những thứ này bất cứ khi nào có thể, thay vì try-catch, vì lý do hiệu suất, nhưng tôi không muốn phá vỡ bất kỳ nguyên tắc và mô hình nào về thiết kế và kết thúc bằng mã sloppy-gauh-loppy trên khắp nơi.
Tùy chọn thứ ba, có số tiền chi phí thấp nhất, nhưng vô cùng khó chịu để xử lý với, là các trường trạng thái và giá trị trả lại.
Vì vậy, các bạn nghĩ sao? Tôi đoán tôi đang tìm kiếm một số hướng chung, và có lẽ một số gợi ý về nơi và khi nào sử dụng mỗi, và bất kỳ kỹ thuật khác tôi rất có thể bỏ ra. Xin vui lòng cho tôi biết nếu cần thêm chi tiết, vì tôi rất vui khi tặng em.
Cảm ơn bạn đã dành chút thời gian cho việc này!
ngoại lệ bắt là chậm hơn các hình thức xử lý lỗi khác, điều đó đúng.Xử lý sự kiện phụ thuộc hoàn toàn vào cách xử lý sự kiện. Giá trị trả về sẽ ít tốn kém nhất. Rất có thể là bạn có thể sử dụng bất kỳ một trong số họ mà không có vấn đề, trừ khi bạn đang xử lý hàng ngàn cuộc gọi mỗi giây. – Wug
Tôi chắc chắn sẽ ghi nhớ điều này. Rất tốt, cảm ơn! – samosaris
Bài đăng tuyệt vời để xử lý ngoại lệ trong .NET: http://www.codeproject.com/Articles/9538/Exception-Handling-Best-Practices-in-NET – samosaris