Tôi đang trong giai đoạn phát triển một ngôn ngữ lập trình mới để giải quyết một số yêu cầu kinh doanh và ngôn ngữ này được nhắm đến người dùng mới làm quen. Vì vậy, không có hỗ trợ cho việc xử lý ngoại lệ trong ngôn ngữ và tôi sẽ không mong đợi họ sử dụng nó ngay cả khi tôi đã thêm nó.
Tôi đã đạt đến điểm mà tôi phải triển khai toán tử chia và tôi tự hỏi làm thế nào để xử lý tốt nhất một phép chia bằng 0?
Tôi dường như chỉ có ba cách có thể để xử lý trường hợp này.
- Bỏ qua lỗi và tạo ra
0
kết quả. Ghi nhật ký cảnh báo nếu có thể. - Thêm
NaN
một giá trị có thể cho các số, nhưng điều đó đặt ra câu hỏi về cách xử lýNaN
các giá trị trong các lĩnh vực khác của ngôn ngữ. - Chấm dứt việc thực hiện chương trình và báo cáo cho người dùng một lỗi nghiêm trọng đã xảy ra.
Lựa chọn số 1 dường như là giải pháp hợp lý duy nhất. Tùy chọn # 3 không thực tế vì ngôn ngữ này sẽ được sử dụng để chạy logic dưới dạng cron hàng đêm.
Các lựa chọn thay thế của tôi để xử lý một phép chia cho sai số 0 là gì và những rủi ro khi đi với tùy chọn # 1.
reject "Foo"
triển khai, mà đơn giản là nó từ chối một tài liệu nếu nó chứa từ khóa Foo
. Tôi cố gắng làm cho ngôn ngữ trở nên dễ đọc bằng các thuật ngữ mà người dùng quen thuộc. Cung cấp cho người dùng ngôn ngữ lập trình riêng của họ cho phép họ thêm các quy tắc kinh doanh mà không phụ thuộc vào nhân viên kỹ thuật.