Ho ereditato un progetto di oltre 10 anni che è stato tramandato da molti sviluppatori. Inutile dire che ci sono molti casi in cui esiste una proprietà di classe o oggetto che nessuno sa a cosa serve o perché esiste. Il codice base e DB scema hanno un disperato bisogno di potatura.
Ovviamente cerco codice, tabelle di database, viste e stored procedure prima ancora di prendere in considerazione la rimozione di qualcosa. Ma dopo aver esaurito tutti i controlli, ho bisogno di andare avanti in qualche modo. Non voglio seguire il percorso degli sviluppatori precedenti che hanno creato molte tabelle "_datestamp" e copie DB nel caso in cui i dati siano necessari in seguito.
C'è una pratica comune per questo?
Il mio pensiero iniziale è quello di creare una tabella DeprecatedObjects in cui avrei una struttura che abbia: ObjectName, ObjectProperty, ObjectPropertyType, ObjectPropertyValue, DeprecatedDate
L'idea è che ho un posto singolo che posso usare nel caso in cui scopro 6 mesi dopo che alcune proprietà venivano lette direttamente da uno dei miei tavoli e ora sono necessarie di nuovo. Mi dà anche un modo semplice per rimuovere oggetti e dati che sono stati deprecati per molti anni.
Questo progetto è in .NET quindi sarebbe bello se ci fosse qualche libreria che già lo fa in un modo standard.
Chiarimento
Quando parlo di "deprecating", intendo che voglio rimuovere classi e proprietà dalle definizioni dell'oggetto e dal database di backup. Ho alcuni oggetti con proprietà multiple che nessuno sa a cosa servono. Per peggiorare le cose, alcuni dei nomi sono decisamente sbagliati (e fuorvianti).
Quindi il mio obiettivo è trovare un modo pulito per iniziare a ripulire il mio grafico degli oggetti, ma ancora eseguire il backup dei dati nel caso in cui ne avessi bisogno in futuro.