Использование расширений для обхода неинициализированных классов

Всем привет. Решил написать об одной интересной вещи, о которой я узнал на конференции DevCon в докладе Дмитрия Нестерука «Несколько трюков в C#», а именно использование расширений для обхода неинициализированных классов. Если у вас есть свободное время, обязательно посмотрите сам доклад, там затронуто еще несколько очень интересных вещей… [Ещё]

Класс Path в C# — работа с путями и именами файлов

Работая с директориями и файлами, приходится выполнять такие операции как составление пути к файлу, получение расширения файла, получение абсолютного пути к файлу и много других операций. В C# для этих и подобных операций существует класс System.IO.Path… [Ещё]

Запрет использования устаревших методов в C# — атрибут Obsolete

Когда работаешь над проектом продолжительное время, порой возникает необходимость запрета использования одних методов/классов и замене их другими. Данный переход должен быть максимально безболезненным для разработчиков и всё необходимое для этого в C# уже есть… [Ещё]

Использование NumberStyles — анализ чисел в C#

Наверняка всем неоднократно приходилось выделять числа из строк. Это довольно простая задача, если в строке записано только число, без разделителей, без указания валюты (в случае вывода стоимости), не используя экспоненциальное представление. Но порой это не так… [Ещё]

Использование UnicodeCategory в C#

Сегодня я бы хотел рассказать о категориях Unicode-символов в C#. Наверняка все использовали такие функции как char.IsLower(c), char.IsDigit(c) и подобные. Это определённо лучший способ получить информацию о символе, но мы можем получить гораздо больше информации о Unicode символах, если воспользуемся функцией char.GetUnicodeCategory(c)… [Ещё]

Использование атрибута DebuggerDisplay в C# — настройка отображаемой в отладчике информации

Отладка кода на крупных проектах занимает огромное количество времени. На дебагинг, обычно, тратится от 10 до 15 процентов времени работы над проектом, и даже если вы пишете чистый и качественный код, все равно вы будете использовать отладчик… [Ещё]

Генерация C# классов из JSON или XML

JSON и XML наиболее популярные форматы передачи данных на данный момент. Очень часто в проектах приходится работать со сторонними сервисами, которые позволяют получить необходимую информацию именно в данных форматах. Наиболее крупные сервисы могут позволить себе реализация классов под основные платформы, экономя тем самым время разработчиков, но когда их нет, приходится создавать их вручную или применить средства автоматической генерации классов… [Ещё]

Visual Studio 2013 — полезные нововведения

Visual Studio очень мощная и удобная среда разработки, с каждой новой версией в неё добавляют новые функции, которые помогают разработчикам делать их работу более продуктивно и качественно. Совсем недавно, просматривая лекции Microsoft Virtual Academy я узнал о новых возможностях, которые были добавлены в версию 2013... [Ещё]

Настраиваемые атрибуты в .NET

В .NET Framework разработчики имеют возможность определять собственные атрибуты. Атрибуты дают возможность задать информацию, которая будет применяться, практически к любой записи таблицы метаданных. Информацию об этих метаданных можно запрашивать во время выполнения программы, с целью изменения хода её выполнения... [Ещё]