Tốt hơn / cải thiện là một so sánh đa trục. Bạn có nghĩ rằng bạn có thể làm cho nó nhanh hơn, nhỏ hơn, tiết kiệm tài nguyên hơn, dễ đọc hơn, thông tin hữu ích hơn, kết quả chính xác hơn, linh hoạt hơn, tổng quát hơn, có thể chạy trên nhiều hệ thống hơn, loại bỏ sự phụ thuộc vào một sản phẩm riêng biệt?
Tại sao công ty của bạn phải trả tiền cho bạn để dành thời gian viết lại mã này, thay vì viết mã mới hoặc viết lại một số đoạn mã khác?
Bạn nên cải thiện khi có cơ hội, nhưng cơ hội có nghĩa là bạn đang làm việc với mã hoặc bạn đã xác định lý do kinh doanh để thực hiện thay đổi.
Đẩy một sự thay đổi vào sản xuất giới thiệu một cơ hội phá vỡ mọi thứ khác (thử nghiệm đơn vị và chức năng chỉ làm giảm cơ hội này, họ không loại bỏ nó) và chỉ nên được thực hiện khi lợi ích dự kiến vượt xa rủi ro.
Đó là một điểm khác để xem xét - bạn có HỢP ĐỒNG để đẩy sự thay đổi này sang sản xuất, hay đơn giản là cho ngành phát triển? Thanh cho hai kịch bản là hoàn toàn khác nhau. Nếu nó chỉ đi vào nhánh phát triển và có thể không bao giờ được đưa vào sản xuất, thì về cơ bản, cơ hội có nghĩa là bạn đang xem mã vì một số lý do và không mất thời gian để làm. Nó có thể được xem xét theo quy định nếu một push bao giờ nên xảy ra, và bỏ qua nếu nó được coi là không có cơ sở tại mà thời gian. Mặt khác, nếu nó sẽ được sản xuất ngay bây giờ, như tôi đã nói ở trên, bạn cần xem xét liệu sự thay đổi này có xứng đáng với chi phí hay không: về thời gian thực hiện cú hích và lợi ích của việc sử dụng mã mới.