вторник, 31 января 2012 г.

Полезные расширения для работы с папками

Несмотря на стремительное развитие облачных технологий, простому программисту .NET никуда не деться от работы с файловой системой. Благодаря классам из пространства имен System.IO, работа с файлами и папками довольно проста и прозрачна. Но, все таки, некоторые простые (и довольно востребованные) операции требуют заметного количества манипуляций. Предлагаю вашему вниманию несколько методов-расширений для класса DirectoryInfo, которые слегка дополнят возможности по работе с папками.

пятница, 20 января 2012 г.

Расширения для класса FrameworkElement

Разработчики WPF (и Silverlight) меня поймут. Microsoft создала мощную технологию для создания пользовательского интерфейса декларативным образом. Но, к сожалению, не все можно реализовать декларативно. Приходится иногда и код месить. И вот тут ожидает неприятный сюрприз. Концептуально понятная иерархия интерфейсных элементов оказывается недоступной напрямую, а чтобы достучаться до неё приходится обращаться к классу VisualTreeHelper. Это, бесспорно, очень нужный и полезный класс, но использование методов типа GetChildrenCount() и GetChild() в эпоху LINQ несколько раздражает.

суббота, 14 января 2012 г.

Что такое искусство программирования?

imageНекоторое время назад я прочитал на хабре статью “Искусство программирования?”. Эта статья спровоцировала большую дискуссию в хабра-сообществе. У меня нет большого желания участвовать в дискуссии, но на определенные мысли эта статья меня натолкнула. Так является ли программирование видом искусства?

понедельник, 9 января 2012 г.

Командная разработка

imageНекоторое время назад мне посчастливилось побывать на концерте академического хора МГУ. Слушая их великолепное выступление, я невольно обратил внимание на поразительную схожесть хорового пения и командной разработки.

воскресенье, 18 декабря 2011 г.

Упрощаем обработку исключений

Я начинаю серию постов, посвященных разнообразным методам-расширениям, которые немного упрощают жизнь простого разработчика, выполняя рутинную работу. Сегодня я хочу рассказать о расширениях для класса Exception.

пятница, 9 декабря 2011 г.

Использование конвертеров значений в привязках данных WPF

Связывание данных (Data Binding) в WPF – очень мощный (правда, не всегда удобный) механизм. А возможность использование конвертеров дает возможность связывать интерфейс с данными почти любого вида. Несмотря на кажущуюся простоту явления, возможности, открываемые конвертерами, поистине безграничны.

среда, 7 декабря 2011 г.

Дополнительные материалы по использованию слабых ссылок

C#
В декабрьском номере журнала MS Developer вышла статья про использование слабых ссылок для уведомлений об изменений. Для тех кому интересен этот материал предлагаю ознакомиться с исходными кодами классов коллекций, которые упоминаются в статье.