Невероятные приключения в коде
learn.microsoft.com/en-us/archive/blogs/ruericlippert
Перевод блога Эрика Липперта
- Posts
- 256 from 9 Apr 2009 to 20 Feb 2013
- Posting
- archived, read-only
- Kind
- personal blog
- Language
- Russian
- Feed
- https://learn.microsoft.com/en-us/archive/blogs/ruericlippert/feed.xml
2013 4
2012 46
- Невычислимое
- Как убедиться, что вывод типов метода завершится?
- Доступен сентябрьский выпуск Roslyn CTP
- Статический анализ оператора «is»
- Загадка с оператором «is». Часть 2
- Загадка с оператором «is». Часть 1
- Не смешивайте out-параметры и LINQ
- Должен ли C# выдавать предупреждения на использование пустых ссылок
- Когда преобразование типов им не является?
- Лучший совет, который мне когда-либо давали
- Глупая последовательность глупа
- Эрик снова рассуждает о языке C#
- Поведение, определяемое реализацией
- Персистентность, фасады и красно-зеленые деревья в Roslyn
- Анонсируем Microsoft Roslyn June 2012 CTP
- Прошлая эффективность не гарантирует будущих результатов
- Руководство по GUID. Часть 3
- Руководство по GUID. Часть 2
- Руководство по GUID. Часть 1
- null – это не false. Часть 3
- Небольшое отступление
- null – это не false. Часть 2
- null – это не false
- Почему ограничения не выводятся автоматически?
- Почему локальные переменные в недостижимом коде полностью определены?
- Доступна бета-версия языка C# 5.0
- Решение простой задачи
- Простая задача
- Генерация случайных чисел с неравномерным распределением в C#
- Плохие метафоры
- Что такое «связывание» и что делает его поздним?
- В чем разница? Тренчкот vs пыльник
- Использование общих анонимных типов в одной сборке. Часть 2
- Использование общих анонимных типов в одной сборке. Часть 1
- Каково определяющее свойство локальной переменной?
- Любое изменение открытого интерфейса является критическим
- Такой мечтатель
- Построение теней на C#. Часть 6
- Построение теней на C#. Часть 5
- Построение теней на C#. Часть 4
- Построение теней на C#. Часть 3
- Построение теней на C#. Часть 2
- Построение теней на C#. Часть 1
- Люди, похожие на мошенников
- Так много интерфейсов, часть 2
- В чем разница между получением остатка от деления и взятия модуля?
2011 57
- Почему стек?
- Почему IL?
- Список для чтения по языку C#
- Критические изменения и именованные аргументы
- Доступна предварительная версия Roslyn
- Безумно великий
- Статьи по асинхронности
- Хранить в тайне, хранить в безопасности
- Наследование и внутреннее представление
- Что это за штука под названием «тип»? Часть 2
- Что это за штука под названием «тип»? Часть 1
- Самая смешная венгерская шутка
- Я рад и опечален, что все закончилось
- Строки, неизменяемость и персистентность
- О необычном свойстве строки
- Каким интересным свойством обладает эта строка?
- Мой приятель Нил полностью со мной согласен
- Следование шаблону
- Локальные ссылки и возврат ссылок
- Атомарность, изменчивость и неизменяемость – это разные вещи. Часть 3
- Атомарность, изменчивость и неизменяемость – это разные вещи. Часть 2
- Атомарность, изменчивость(*) и неизменяемость – это разные вещи. Часть 1
- Неизменяемость и потокобезопасность – это не одно и то же
- Сложности с необязательными параметрами. Часть 4
- Сложности с необязательными параметрами. Часть 3
- Сложности с необязательными параметрами. Часть 2
- Сложности с необязательными параметрами. Часть 1
- Возможно со Вселенной что-то не так, но, скорее всего, нет
- Плюсы и минусы неявной типизации
- Обновление Async CTP
- С днем рождения, Channel 9!
- Так много интерфейсов!
- Составные операторы присваивания. Часть 2
- Dot NET Rocks!
- Составные операторы присваивания. Часть 1
- Реализация шаблона «виртуальный метод». Часть 3
- Реализация шаблона «виртуальный метод». Часть 2
- Реализация шаблона «виртуальный метод». Часть 1
- Упаковывать или не упаковывать, вот в чем вопрос
- Ссылки и указатели. Часть 2
- Ссылки и указатели. Часть 1
- Опасность, Уил Робинсон!
- Правила и рекомендации по переопределению GetHashCode
- Никогда не говори никогда. Часть 2
- Никогда не говори никогда. Часть1
- Заглядываем в double
- Что бы сделал мистер Фейнман?
- Необязательные аргументы с обеих сторон
- Странно, но корректно
- Всё интереснее и интереснее
- Найди ошибку: плохие сравнения. Часть 4
- Найди ошибку: плохие сравнения. Часть 3
- Найди ошибку: плохие сравнения. Часть 2
- Найди ошибку: плохие сравнения. Часть 1
- Не так просто, как кажется. Часть 2
- Не так просто, как кажется
- Чудовищные взрывы
2010 84
- Почему анонимные типы являются обобщенными?
- Ищем людей в Рослин
- Все ваши базы не принадлежат вам[1]
- Большое начало, длинный хвост
- Игра битами: что означает предупреждение CS0675?
- Асинхронность в C# 5. Часть 7: исключения
- Асинхронность в C# 5. Часть 6: насколько асинхронно?
- Асинхронность в C# 5. Часть 5: слишком много задач
- Асинхронность в C# 5. Часть 4: это не магия
- Асинхронность в C# 5. Часть 3: Композиция
- Асинхронность в C# 5. Часть 2: Откуда await?
- Асинхронность в C# 5. Часть 1
- Возвращаясь к стилю передачи продолжений. Часть 5: CPS и асинхронность
- Возвращаясь к стилю передачи продолжений. Часть 4: выверни себя наизнанку
- Возвращаясь к стилю передачи продолжений. Часть 3: размышления о сопрограммах
- Возвращаясь к стилю передачи продолжений. Часть 2: пассы с логикой управления
- Возвращаясь к стилю передачи продолжения. Часть 1
- Эрик Липперт, из Microsoft?
- Разоблачение другого мифа о значимых типах
- Без перебора с возвратом. Часть 2
- Без перебора с возвратом. Часть 1
- Правда о значимых типах
- Неоднозначность необязательных скобок. Часть 3
- Неоднозначность необязательных скобок. Часть 2
- Неоднозначность необязательных скобок. Часть 1
- is это as или as это is?
- Освой самостоятельно C# за … сколько часов?
- Отображение дерева в старом стиле
- Раскраска графов. Часть 5
- Раскраска графов. Часть 4
- Раскраска графов с помощью простого поиска с возвратом. Часть 3
- Раскраска графов с помощью простого поиска с возвратом. Часть 2
- Раскраска графов с помощью простого поиска с возвратом. Часть 1
- Предупреждение
- Темная наука
- Вычисление декартового произведения с помощью LINQ
- Заметки о путешествиях
- Скрыть и найти
- Не повторяйтесь; константы уже являются статическими
- Живое выступление из Нового Орлеана
- Лучше поздно, чем никогда
- Бесконечный как звезды
- Операторы преобразования не подчиняются дистрибутивному закону
- Все существующие программы. Часть 9
- Все существующие программы. Часть 8
- Все существующие программы. Часть 7
- Все существующие программы. Часть 6
- Все существующие программы. Часть 5
- Все существующие программы. Часть 4
- Все существующие программы. Часть 3
- Все существующие программы. Часть 2
- Все существующие программы. Часть 1
- Все существующие деревья
- Все существующие двоичные деревья
- Это важно[1]!
- Игнорирование скобок
- Точность и погрешность DateTime
- Превращаем баг в фичу
- Некоторые новые возможности C# 4.0
- Базовый класс в середине иерархии
- Рыцари, жулики, Protected и Internal
- Носки, дни рождения и коллизии хэш-функций
- Не давайте классам и пространствам имен одинаковые имена. Часть 4
- Не давайте классам и пространствам имен одинаковые названия. Часть 3
- Не давайте классам и пространствам имен одинаковые названия. Часть 2
- Не давайте классам и пространствам имен одинаковые названия. Часть 1
- Перебор с повторным использованием
- Привлечение талантов
- Поаккуратнее с топором. Часть 2. А как насчет исключений?
- Поаккуратнее с топором. Часть 1: Нужно ли мне указывать таймаут?
- В чем разница между тернарным и третичным?
- Лимонный завиток
- Цепочки вызовов простых операторов присваивания не такие уж и простые
- Пишите код, который читается как спецификация
- Сколько проходов?
- Стиль отвечает семантике
- Вызовы конструкторов в произвольных местах
- Почему не выдаются предупреждения на неиспользуемые директивы using?
- В чем разница между деструктором и методом завершения?
- Аномалия инициализации
- Почему я не могу получить доступ к защищенному члену из производного класса? Часть 6
- Продолжение выполнения внешнего цикла
- Существует ли такое понятие, как чрезмерная точность?
- Двоюродный племянник
2009 65
- Это самое прекрасное время года
- Используйте правильные инструменты
- Ограничения не являются частью сигнатуры метода
- Преобразования запросов являются синтаксическими
- Четкие правила корректности вариантности
- В чем разница между ковариантностью и совместимостью по присваиванию?
- Раскрытие цели
- Всегда пишите спецификацию. Часть 2
- Всегда пишите спецификацию, часть 1
- Замыкания на переменных цикла. Часть 2
- О вреде замыканий на переменных цикла
- Простые имена не так уж просты. Часть 2.
- Простые имена не так уж просты
- Фитнесс без Фокусов
- Новые видеозаписи
- Что вы называете «потокобезопасным»?
- Безвременно как бесконечность
- Отсутствие доказательств – не доказательство отсутствия
- В чём разница между операторами «as» и «приведения»?
- Почему нет свойств расширения?
- Почему Char неявно конвертируется в ushort, но не наоборот?
- Интернирование строк и String.Empty
- Почему ковариантность массивов типов-значений несогласована?
- Почему в ref и out параметрах нет вариантности типов?
- К западу от здания
- В чём разница между частичным методом и частичным классом?
- Извините за CAPTCHA
- В чём разница между условной компиляцией и атрибутом Conditional?
- Какая разница, часть Пятая: подписи сертификатами и строгие имена
- Какая разница, часть Четвёртая: into и into
- Какая разница, часть Третья: fixed и fixed
- Блоки итераторов, часть Седьмая: Почему нет анонимных итераторов?
- Теория массового обслуживания в действии, плюс лягушки
- Четыре странности switch
- Приоритет-против-порядка возвращаются
- Не всё наследуется от object
- Какая разница, Часть вторая: область видимости, пространство деклараций, время жизни
- В чём разница, Часть первая: Обобщения – не шаблоны
- Блоки итераторов, Часть шестая: почему запрещён небезопасный код?
- Блоки итераторов, часть пятая: Активный или Пассивный
- Блоки итераторов, Часть четвёртая: Почему нет yield в блоках catch?
- Блоки итераторов, Часть третья: почему нет yield в блоке finally?
- Блоки итераторов, Часть вторая: Почему нет out- или ref- параметров?
- Блоки итераторов, Часть первая
- Color Color
- Правильный ответ – «нет»
- Void не вариантен
- Итераторы на Летних Играх
- Ммм, Карри
- Это и так скриптовый язык
- Почему в C# нет «верхнеуровневых» методов?
- Поднимайте вес ногами, а не спиной
- Облегчать жизнь
- Что делает параметр optimize?
- “Недостаточно Памяти” не относится к физической памяти
- Поразительные Приключения на русском
- Увы, Смит и Джонс
- Бажная психология
- Пятисот постов когда достигнешь ты
- Что бы делал Tufte?
- В Инфуфа веруем: диалог
- “foreach” или “ForEach”
- Null – не то же самое, что Empty
- Зарезервированные и контекстные ключевые слова
- Двойная диспетчеризация – двойное удовольствие