Tôi đã làm việc tại cùng một công ty phần mềm trong hơn mười năm. Kết quả là, tôi đã triển khai một cơ sở mã lớn bằng các ngôn ngữ lập trình hướng đối tượng khác nhau. Tôi là một lập trình viên mới bắt đầu khi tôi bắt đầu sự nghiệp và tôi không biết nhiều về các nguyên tắc thiết kế lớp và giao diện tốt. Tôi muốn nghĩ rằng các kỹ năng thiết kế của tôi đã được cải thiện theo thời gian, nhưng bây giờ tôi gặp phải nhiều khó khăn hơn trong việc cải thiện mã trước đây vì những lo ngại về khả năng tương thích ngược. Mã của tôi được sử dụng bởi một số lượng lớn khách hàng như một phần của các sản phẩm mà công ty tôi bán.
Câu hỏi của tôi là: khi nào nên ngừng cố gắng giữ khả năng tương thích ngược của các giao diện cũ và cắn viên đạn để ủng hộ thực hiện một thiết kế hoàn toàn mới?
Tôi nghĩ rằng có một điểm mà việc giữ khả năng tương thích ngược trở thành một gánh nặng lớn đến nỗi những thay đổi hữu ích đối với các giao diện trở nên không thể. Có ai có kinh nghiệm tương tự, ai có thể cung cấp một số thông tin phản hồi?
I think there comes a point where keeping backward compatibility becomes such a big burden that useful changes to interfaces become impossible.
- Và tôi nghĩ rằng bạn đã trả lời câu hỏi của riêng bạn ở đó ...