.net core

  • Хабрахабр

    System.Threading.Channels — высокопроизводительный производитель-потребитель и асинхронность без аллокаций и стэк дайва

    И снова здравствуй. Какое-то время назад я писал о другом малоизвестном инструменте для любителей высокой производительности — System.IO.Pipelines. По своей сути, рассматриваемый System.Threading.Channels (в дальнейшем «каналы») построен по похожим принципам, что и Пайплайны, решает ту же задачу — Производитель-Потребитель. Однако имеет в разы более простое апи, которое изящно вольется в любого рода enterprise-код. При этом использует асинхронность без аллокаций и…

    Подробнее »
  • Хабрахабр

    [Из песочницы] Как ‌С#-разработчик у JavaScript плохому учился

    Недавно мне на глаза попалась одна статья на Хабре. В ней сравниваются C# и JavaScript. На мой взгляд, сравнивать их — всё равно что сравнивать луну и солнце, которые, если верить классику, не враждуют на небе. Эта статья напомнила мне о другой публикации. В ней речь идёт о сценариях неожиданного и неочевидного поведения JavaScript, а C# не упоминается от слова…

    Подробнее »
  • Хабрахабр

    Джон Скит о .NET в 2020-м: «Моё главное нарекание — версионирование»

    Представлять Джона Скита особо не требуется: самый известный пользователь Stack Overflow (с кармой более миллиона), автор книги «C# in Depth», создатель библиотеки Noda Time и вообще человек, про которого шутят «даже Джон Скит не смог бы распарсить HTML регулярками». В 2017-м Джон выступил у нас на DotNext. Тогда мы опубликовали на Хабре большое интервью с ним о состоянии дел в…

    Подробнее »
  • Хабрахабр

    Повышаем надёжность HttpClient’а в .NET Core или как ошибиться в 3 строках кода 4 раза

    За несколько недель до 14 февраля системе Dodo IS немного поплохело под нагрузкой. Одной из причин стало то, что в backend’ах мобильного приложения и сайта не совсем корректно работали политики поверх HttpClient’а (Retry, Circuit Breaker, Timeout). В этой статье я хочу поделиться с вами потенциальными проблемами, которые могут возникнуть при неправильном использовании таких политик. Политики HttpClient’а и надёжность запросов Для…

    Подробнее »
  • Хабрахабр

    [Из песочницы] Новые возможности интерфейсов в C# 8

    Для начала посмотрим на определение интерфейса у Эндрю Троелсена и Филиппа Джепикса: «Интерфейс представляет собой всего лишь именованный набор абстрактных членов. Абстрактные методы являются чистым протоколом, поскольку они не предоставляют свои стандартные реализации. Специфичные члены, определяемые интерфейсом, зависят от того, какое точно поведение он моделирует. Другими словами, интерфейс выражает поведение, которое заданный класс или структура может избрать для поддержки». И…

    Подробнее »
  • Хабрахабр

    [Из песочницы] Новые возможности интерфейсов в C# 8

    Для начала посмотрим на определение интерфейса у Эндрю Троелсена и Филиппа Джепикса: «Интерфейс представляет собой всего лишь именованный набор абстрактных членов. Абстрактные методы являются чистым протоколом, поскольку они не предоставляют свои стандартные реализации. Специфичные члены, определяемые интерфейсом, зависят от того, какое точно поведение он моделирует. Другими словами, интерфейс выражает поведение, которое заданный класс или структура может избрать для поддержки». И…

    Подробнее »
  • Хабрахабр

    [Перевод] Как JIT инлайнит наш C# код (эвристики)

    Инлайнинг — одна из самых важных оптимизаций в компиляторах. Она не только убирает оверхед от вызова, но и открывает много возможностей для других оптимизаций, например, constant folding, dead code elimination и т.д. Более того, иногда инлайнинг приводит к уменьшению размера вызывающей ф-ции! Я опросил несколько человек на предмет знают ли они по каким правилам инлайнятся ф-ции в C# и большинство…

    Подробнее »
  • Хабрахабр

    [Перевод] Как JIT инлайнит наш C# код (эвристики)

    Инлайнинг — одна из самых важных оптимизаций в компиляторах. Она не только убирает оверхед от вызова, но и открывает много возможностей для других оптимизаций, например, constant folding, dead code elimination и т.д. Более того, иногда инлайнинг приводит к уменьшению размера вызывающей ф-ции! Я опросил несколько человек на предмет знают ли они по каким правилам инлайнятся ф-ции в C# и большинство…

    Подробнее »
  • Хабрахабр

    IdentityServer4. Основные понятия. OpenID Connect, OAuth 2.0 и JWT

    Этим постом я хочу открыть ветку статей посвященную IdentityServer4. Начнем мы с основных понятий. Самым перспективным на текущий момент протоколом аутентификации является OpenID Connect, а протоколом авторизации (предоставления доступа) является OAuth 2.0. IdentityServer4 реализует эти два протокола. Он оптимизирован для решения типичных проблем безопасности. OpenID Connect — это протокол и стандарт аутентификации, он не дает доступ к ресурсам (Web API),…

    Подробнее »
  • Хабрахабр

    IdentityServer4. Основные понятия. OpenID Connect, OAuth 2.0 и JWT

    Этим постом я хочу открыть ветку статей посвященную IdentityServer4. Начнем мы с основных понятий. Самым перспективным на текущий момент протоколом аутентификации является OpenID Connect, а протоколом авторизации (предоставления доступа) является OAuth 2.0. IdentityServer4 реализует эти два протокола. Он оптимизирован для решения типичных проблем безопасности. OpenID Connect — это протокол и стандарт аутентификации, он не дает доступ к ресурсам (Web API),…

    Подробнее »


Кнопка «Наверх»
Закрыть