Я працюю в одній і тій же програмній компанії більше десяти років. Як результат, я реалізував велику базу коду, використовуючи різні об'єктно-орієнтовані мови програмування. Я був початківцем програмістом, коли вперше розпочав свою кар’єру, і не знав багато про хороший інтерфейс та принципи дизайну класів. Мені хотілося б подумати, що мої дизайнерські навички з часом удосконалювалися, але зараз я стикаюся з все більшими труднощами в покращенні свого попереднього коду через проблеми з сумісністю назад. Мій код використовується великою кількістю клієнтів як частина продукції, яку продає моя компанія.
Моє запитання: коли слід припинити намагатися зберегти відсталу сумісність старих інтерфейсів і перекусити кулю на користь реалізації абсолютно нового дизайну?
Я думаю, що настає момент, коли збереження відсталої сумісності стає настільки великим тягарем, що корисні зміни інтерфейсів стають неможливими. Хто-небудь відчував подібні проблеми, хто може надати відгуки?
I think there comes a point where keeping backward compatibility becomes such a big burden that useful changes to interfaces become impossible.
- І я думаю, ти там відповів на своє власне запитання ...