Tutti noi conosciamo l’importanza dei files di codice sorgente. Abbiamo per questo il source control. Ma…non c’è solo questo. Infatti un’altra serie di oggetti fondamentali spesso sono ignorati: i file PDB (Program Database).
Innanzitutto, cosa sono. Sono dei file al cui interno sono specificati (per un .pdb .NET) i nomi dei file di codice sorgente ed I nomi delle variabili. Questi file sono i simboli del nostro codice sorgente, rendendo possibile operazioni come il debug.
Come fa Visual Studio a capire quali simboli sono legati alla versione attuale del nostro codice sorgente? All’interno del PDB è memorizzato un GUID che identifica ogni versione.
Non sono file da distribuire, ma da tenere a disposizione per ogni evenienza di debug e non solo (ad esempio, IntelliTrace si basa pesantemente sui PDB).
Cosa serve per mantenere i PDB disponibili? Un Symbol Server, ossia un server (con una share di rete sostanzialmente) dove copiare i file una volta terminata la compilazione. Team Build permette di copiare direttamente i file PDB “da qualche parte” già con il Process Template di default, per cui siamo a posto
Ne approfitto per segnalare un *fantastico* articolo di Ed Blankenship (Visual Studio ALM MVP) che ci spiega come creare un Symbol Server e come impostare il supporto al SS da Visual Studio 2010.