Tôi đã phát triển phần mềm trong ba năm qua, nhưng gần đây tôi mới thức dậy rằng tôi không biết gì về các thực hành tốt. Điều này đã khiến tôi bắt đầu đọc cuốn sách Clean Code , điều này giúp cuộc sống của tôi trở nên tốt hơn, nhưng tôi đang cố gắng tìm hiểu sâu về một số cách tiếp cận tốt nhất để viết chương trình của mình.
Tôi có một chương trình Python trong đó tôi ...
- sử dụng argparse
required=True
để thực thi hai đối số, cả hai đều là tên tệp. đầu tiên là tên tệp đầu vào, thứ hai là tên tệp đầu ra - có chức năng
readFromInputFile
kiểm tra đầu tiên để xem tên tệp đầu vào đã được nhập - có chức năng
writeToOutputFile
kiểm tra đầu tiên để xem tên tệp đầu ra đã được nhập
Chương trình của tôi đủ nhỏ để tôi tin rằng việc kiểm tra # 2 và # 3 là dư thừa và cần được loại bỏ, do đó giải phóng cả hai chức năng khỏi một if
điều kiện không cần thiết . Tuy nhiên, tôi cũng đã được tin rằng "kiểm tra hai lần là ổn" và có thể là giải pháp phù hợp trong một chương trình nơi các hàm có thể được gọi từ một vị trí khác trong đó không xảy ra phân tích cú pháp đối số.
(Ngoài ra, nếu đọc hoặc ghi thất bại, tôi có một try except
chức năng trong mỗi chức năng để đưa ra một thông báo lỗi thích hợp.)
Câu hỏi của tôi là: tốt nhất là tránh tất cả các kiểm tra điều kiện dư thừa? Logic của một chương trình có nên vững chắc đến mức chỉ cần thực hiện kiểm tra một lần không? Có bất kỳ ví dụ tốt minh họa điều này hoặc ngược lại?
EDIT: Cảm ơn tất cả các câu trả lời! Tôi đã học được điều gì đó từ mỗi. Nhìn thấy rất nhiều quan điểm cho tôi hiểu rõ hơn nhiều về cách tiếp cận vấn đề này và xác định một giải pháp dựa trên yêu cầu của tôi. Cảm ơn bạn!