I have written a protocol that gets used by one of my company's applications. We've come to a point where the protocol needs to undergo some significant changes to support further development, but we require that the new implementation be backwards compatible. I would like to know the best approach to achieving this without a lot of heartache for client code.
I've come up with a few ideas already:
- Copying the old object verbatim into a legacy dll and calling it as needed
- Generate a new object that inherits from the old one, where the new object's methods override the old as needed
I'm more or less trying to find a way that makes the most sense. Any suggestion are appreciated.