I'm writing an application that stores a project's C++ API representation. For example, I have tables like Class, Function, FunctionParameter, DerivedClass, BaseClass, and so on.
Every once in a while, the users will have to re-import the new API, since it changes a bit everyday while the code is in development. The first import in the database (coming from XML files) is easy to do since I don't have to any verification. When the user re-imports the code, there will be a page displaying the changes and conflicts between the API versions, and the user is responsible to decide which action to take against each conflict. For example, there could be a 'Rename', 'Add', or 'Delete' action for a class if it is in some sort of conflict.
I thought about having tables in the same database that contains the new API, and the application could compare, for example, my table Class against my table Class_New, that would contain the new API.
My question is, is it a good idea to have all these transition tables?
I also thought about having an additional column in every table that tells if it's a line that needs some checking or not, but I'm afraid that it is going to leave some dirty data in my database.
Aucun commentaire:
Enregistrer un commentaire