"Không có lỗi" như trong "hoàn hảo?" Như trong "được viết bởi Thiên Chúa và các thiên thần, không phải con người?" (chúng ta đang nói ở đây về logic chương trình và có thể lỗi logic phần cứng)
Tôi không thể nói một cách trung thực về ngay cả một dòng mã mà nó không có lỗi. Đó là bởi vì con người chúng ta, tốt, chúng ta không thể chứng minh không có giả thuyết tiêu cực!
Điều tốt nhất tôi có thể nói là xác suất xảy ra lỗi là một số trong khoảng từ 0 đến 1. Tôi đạt được con số đó bằng các nguyên tắc kiểm tra và phát triển phần mềm được xác định rõ hoặc không rõ ràng hoặc không hiểu rõ; bởi một số lượng các dòng phần mềm nguồn trong câu hỏi; bởi sự hiểu biết về việc ứng cử viên của tôi tốt hay kém, mutt nghèo, áp dụng những nguyên tắc đó trong việc tạo ra những dòng mã đó; và nhiều hơn nữa.
Và tôi có thể diễn đạt sự hiểu biết đó chỉ như một xác suất. Vì vậy, thuật ngữ "không có lỗi" có nghĩa là gần như không có gì.
Nếu tôi thấy quảng cáo cho một kỹ sư phần mềm sản xuất mã "không có lỗi" tôi sẽ áp dụng ngay hoặc tôi sẽ chạy ngay: công ty đã không nghĩ nhiều về cách phát triển, kiểm tra và cung cấp phần mềm của mình . Vì vậy, nó sẽ là một cơ hội tuyệt vời hoặc một cơn ác mộng bất tận.
Mặc dù vậy, trong bất kỳ phần mềm nào, tôi có thể dễ dàng - và phải - nói rằng tôi mong đợi mã không có lỗi nằm ngoài công cụ logic, lờ mờ, logic này: mã biên dịch và liên kết mà không có lỗi hoặc cảnh báo; đó là "html hợp lệ" hoặc "css hợp lệ"; JavaScript (giả sử) tạo ra không có thông báo lỗi không giải thích được hoặc lỗi trình duyệt. Phần đó tôi có thể đo trực tiếp và đánh dấu màu đen và trắng trên biểu đồ.
Phần đó dễ như ăn bánh. Bất cứ ai cũng có thể làm điều đó .
Xin chào, chúc may mắn trong tìm kiếm của bạn :-)