Rất nhiều câu trả lời khác giải quyết loại vấn đề thiết kế lớn hơn, hoặc khá trừu tượng. Nếu bạn nghĩ về những gì sẽ xảy ra trong tương lai, bạn có thể xác định một số kỹ thuật rõ ràng để giúp đỡ chứng minh mã trong tương lai .
Chủ yếu nghĩ rằng trong tương lai ai đó sẽ cố gắng thêm một tính năng vào mã hoặc sẽ cố gắng sử dụng lại mã của bạn ở một nơi khác. Họ cũng có thể cố gắng sửa một tính năng trong mã. Rõ ràng chỉ cần có mã sạch tốt là một điểm khởi đầu bắt buộc, nhưng cũng có một số kỹ thuật cụ thể có thể được thực hiện.
Lập trình phòng thủ : Thực hiện kiểm tra đầu vào vượt quá những gì ứng dụng hiện tại của bạn thực sự cần. Bất cứ khi nào bạn gọi API, hãy chắc chắn kiểm tra xem đầu vào của chúng có phải là thứ bạn mong đợi không. Trong tương lai mọi người sẽ trộn lẫn các phiên bản mã mới với nhau, vì vậy phạm vi lỗi và trả về API sẽ thay đổi so với hiện tại.
Elliminate Hành vi không xác định : Rất nhiều mã có hành vi chỉ là loại tiến hóa từ hư không. Một số kết hợp đầu vào dẫn đến đầu ra nhất định mà không ai thực sự có ý định, nhưng chỉ có như vậy xảy ra. Bây giờ chắc chắn sẽ có người dựa vào hành vi đó, nhưng không ai biết về nó vì nó không được xác định. Bất cứ ai cố gắng thay đổi hành vi trong tương lai sẽ vô tình phá vỡ mọi thứ. Sử dụng kiểm tra an toàn ngay bây giờ và cố gắng xóa / chặn tất cả các sử dụng mã không xác định.
Bộ kiểm tra tự động : Tôi chắc chắn bạn có thể tìm thấy các tập viết về nhu cầu kiểm tra đơn vị. Tuy nhiên, liên quan đến việc chứng minh trong tương lai, đây là một điểm quan trọng trong việc cho phép ai đó tái cấu trúc mã. Tái cấu trúc là điều cần thiết để duy trì mã sạch, nhưng nếu thiếu một bộ kiểm tra tốt, bạn không thể tái cấu trúc một cách an toàn.
Cách ly và phân chia : Đóng gói và mô đun hóa phù hợp là một nguyên tắc thiết kế tốt, nhưng bạn cần phải vượt qua điều đó. Bạn sẽ thường thấy rằng bạn cần sử dụng thư viện hoặc API hoặc sản phẩm có thể có tương lai đáng ngờ. Có thể do mối quan tâm về chất lượng, vấn đề cấp phép hoặc tiếp tục phát triển của các tác giả. Trong những trường hợp này cần thêm thời gian để đặt một lớp giữa bạn và mã này. Cắt API xuống chỉ những gì bạn cần để khớp nối rất thấp để cho phép thay thế dễ dàng hơn trong tương lai.