Saya telah bekerja di perusahaan perangkat lunak yang sama selama lebih dari sepuluh tahun. Sebagai hasilnya, saya telah mengimplementasikan basis kode besar menggunakan berbagai bahasa pemrograman berorientasi objek. Saya adalah seorang programmer pemula ketika saya pertama kali memulai karir saya dan saya tidak tahu banyak tentang antarmuka yang baik dan prinsip-prinsip desain kelas. Saya ingin berpikir bahwa keterampilan desain saya telah meningkat dari waktu ke waktu, tetapi sekarang saya menghadapi lebih banyak kesulitan dalam meningkatkan kode saya sebelumnya karena masalah kompatibilitas ke belakang. Kode saya digunakan oleh sejumlah besar pelanggan sebagai bagian dari produk yang dijual perusahaan saya.
Pertanyaan saya adalah: kapan harus berhenti mencoba untuk menjaga kompatibilitas antarmuka lama dan menggigit peluru dalam mendukung penerapan desain baru?
Saya pikir ada titik di mana menjaga kompatibilitas menjadi beban besar sehingga perubahan yang berguna untuk antarmuka menjadi tidak mungkin. Adakah yang mengalami masalah serupa, yang dapat memberikan umpan balik?
I think there comes a point where keeping backward compatibility becomes such a big burden that useful changes to interfaces become impossible.
- Dan saya pikir Anda menjawab pertanyaan Anda sendiri di sana ...