Basically I am wondering about having this behavior in an app where the newer versions require the content created with the older version to be (automatically) converted to the newer version format, at the cost of backwards compatibility.
Visual Studio does this for its .sln
files.
Are there any pros/cons to this practice?
I guess in the context of the app I am writing (3d content creation), I was thinking of finding potentially different ways to create things in time (faster, better, more efficient) which might only be possible to implement if the older content files are converted to the new way of creating the same thing in a seeming similar way.
So for instance, maybe v1
had a Shape
class where in v2
you realized you could do this more generically and faster by using a PolySpline
class. But in order to have the old Shapes
to be PolySplines
you would convert the old content files and everything would be compatibile with the new version.
Is this a reasonable idea?