Algoritmi e strutture dati
Inauguro il 2008 segnalando la libreria DSA (Data Structures and Algorithms) scritta da Granville Barnett: si tratta di una serie di classi per .NET che implementano strutture dati (alberi, double linked list, set, ecc.) e algoritmi come vari tipi di sort, fattoriale, metodi su stringhe, ecc.
La libreria è su CodePlex, quindi gratuita e con tanto di sorgenti. Vengono usati gli extension method di C# 3.0, estendendo così anche la classe String aggiungendo metodi come Reverse, Strip, WordCount e altri. Devo dire che gli extension method sono una delle novità di C# 3.0 più interessanti, soprattutto grazie all'integrazione con IntelliSense che offre la possibilità di vedere tutti i metodi accessibili su un oggetto (con e senza Extension Methods) senza conoscere il nome della classe che li contiene realmente. Certo, bisogna almeno mettere una using...