понедельник, 22 марта 2010 г.

Visual Studio power commands

http://code.msdn.microsoft.com/PowerCommands

My recommendations.

воскресенье, 14 марта 2010 г.

Strong principles of OOP

1 http://www.lostechies.com/blogs/sean_chambers/archive/2008/03/15/ptom-single-responsibility-principle.aspx должна быть единственная причина для изменения
2 http://www.lostechies.com/blogs/joe_ocampo/archive/2008/03/21/ptom-the-open-closed-principle.aspx модуль можно модифицировать, но нельзя изменять
3 http://lostechies.com/blogs/chad_myers/archive/2008/03/11/ptom-the-liskov-substitution-principle.aspx функция, ссылающаяся на базовый класс, должна иметь доступ к объектам производных классов.
4 http://www.lostechies.com/blogs/rhouston/archive/2008/03/14/ptom-the-interface-segregation-principle.aspx изоляция интерфейса(пример про змею и собаку(собаку можно гладить, змею - нет=> отдельный интерфейс для гладить))
5 http://www.lostechies.com/blogs/jimmy_bogard/archive/2008/03/31/ptom-the-dependency-inversion-principle.aspx (модули более высокого уровня не должны зависеть от модулей более ниизкого уровня, но должны зависеть от абстракций, которые не должны зависеть от деталей, детали не должны зависеть от абстракций)

среда, 3 марта 2010 г.

Accessing object properties.

PropertyDescriptorCollection objProperties = TypeDescriptor.GetProperties(myObj);

foreach (PropertyDescriptor property in objProperties)
{
Console.WriteLine(string.Format("{0} = {1}", property.DisplayName, property.GetValue(shape));
}