Самые просматриваемые за 30 дней

Просто о NET

1 Динамика спроса на вакансию "Разработчик .NET в России" за 2024–2026 годы

Рынок труда для .NET-разработчиков в России за период 2024–2026 годов претерпел кардинальную трансформацию: от острого дефицита кадров в 2024 году (1–1,5 резюме на вакансию) до экстремального рынка работодателя в первом полугодии 2026 года (19–21 резюме на вакансию).

Просто о NET

2 Тенденции и перспективы роста спроса на вакансию "Разработчик .NET в России" на 2026–2027 годы

Рынок труда для .NET-разработчиков в России прошел точку бифуркации в 2026 году: после экстремального перевеса работодателей в первом квартале (hh-индекс 19-21) началась постепенная стабилизация.

Микросервисы

3 Практические советы по созданию REST API

Самые полезные советы по созданию REST API сервисов. Несколько советов, которые были проверены временем на реальных проектах.

Микросервисы

4 RabbitMQ + Rebus: как настроить надёжную доставку сообщений между микросервисами

В этой статье про микросервисные коммуникации. Про, так называемые, best practice, то есть "лучшие практики". Другими словами, о том как настроить механизмы отправки и получения сообщений в микросервисной архитектуре.

Полезности

5 Interceptors в EntityFramework Core или EF Core Перехватчики

Перехватчики Entity Framework Core (EF Core) позволяют перехватывать, изменять и (или) подавлять операции EF Core. Сюда входят низкоуровневые операции с базой данных, такие как выполнение команды, а также операции более высокого уровня, такие как вызовы SaveChanges.

Теория и практика

6 FAQ

Серия видео роликов с вопросами и ответами на них, которые присылают подписчики youtube-канала и читатели блога, а также и подписчики boosty.to. Ответы на разные вопросы по разным темам: о принципах программирования, паттернах, правилах, законах, библиотеках, nuget-пакетах, инструментах, сборках и многое-многое другое.

Просто о NET

7 CQRS - это...

Несколько фактов о CQRS

Полезности

8 Рынок труда .NET и Java-разработчиков в России: динамика спроса, уровень зарплат и прогноз до 2027 года

Российский IT-рынок в период с 2023 по середину 2026 года прошел через две разнонаправленные фазы. В 2023 году наблюдался уверенный рост: общее количество IT-вакансий увеличилось на 20% по сравнению с 2022 годом (с 555 тыс. до 634 тыс.), а число вакансий для Java-разработчиков выросло на 24% год к году, для .NET/C# — на 10%

Просто о NET

9 C# NET: Class vs Struct или в чём различия между Классом и Структурой

Мне в последнее время очень часто встречаются программисты, которые не только используют в обычной “программной” жизни структуры (struct), но вообще, ничего не знают об этом объекте. И зачастую, для простоты своей "программной" жизни используют всегда классы (class). В этой статье я бы хотел в очередной раз остановиться на различиях между структурами и классами.

Микросервисы

10 ASP.NET MVC 3: Экспорт в Excel или что такое XMLExport?

При работе над очередным проектом, потребовалось реализовать экспорт данных в MS Excel. Решил поделиться информацией о том, как это можно сделать без особых усилий. Сборка создана согласно спецификации XML Spreadsheet Reference.

Просто о NET

11 Микросервисы: Обмен данным между микросервисами

При разработке микросервисной архитектуры, где используются множество слабо связанных между собой сервисов, потребуется реализация взаимодествие между этими самыми микросервисами.

Полезности

12 Пишем GUI на .NET для Linux

Довольно часто возникает вопрос "как можно писать приложения для Linux используя .NET". Кажется, пришло время ответить на этот вопрос. Тем более, выход MAUI лишь добавил непонятностей в эту тему.

Просто о NET

13 Мониторинг: Prometeus + Grafana

В этом видео будем выдавать метрики из ASP.NET Core приложения, которые будет собирать Prometeus, которые, в свою очередь будет отображать Grafana.

Просто о NET

14 Dependency Injection: Принцип. Паттерн. Контейнер

Довольно запутанно на первый взгляд выглядит эта троица: Принцип. Паттерн. Контейнер. Если с контейнером более или менее всё понятно, то остальные термины требуют объяснения.

Полезности

15 REST Client для Visual Studio Code

Очень полезное расширения для вашего Visual Studio Code

Микросервисы

16 ASP.NET MVC: История одного проекта "Всё ради данных" (часть 2)

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

My Frameworks

17 Шаблоны для микросервисной архитектуре NET10

Шаблоны для разных типов приложений доступны на NET10: WebAPI, ASP.NET RazorPages и другие

Просто о NET

18 Автоматическая история изменений сущности в EntityFrameworkCore 5

В этой серии видео роликов покажу как можно усовершенствовать принципы показанные в статье. Это пятое видео, где продолжим начнем реализацию возможности отобрать на UI сохраненные в прошлом видео изменения сущности.

Микросервисы

19 ASP.NET MVC: Читаем настройки сайта из своей секции файла конфигурации web.config

Много раз приходилось сохранять настройки сайта в файле конфигурации. Раздел appSettings предоставляет возможность хранить настройки по принципу "ключ" = "значение" (Dictionary). Я же хочу показать как можно создать свою секцию в файле конфигурации, как читать из нее данные значения.

Просто о NET

20 CSharp: свойство или публичное поле

Очень встречаю разные подходы по написанию кода, например использование публичных полей вместо свойств. В этой статье приведу доводы в пользу использования свойств, а не публичных полей.

Микросервисы

21 ASP.NET MVC: Как сделать PagedList

При разработке одного из проектов (ASP.NET MVC) потребовалось реализовать постраничное отображение данных. Так как решений в интернете много, не могу не показать еще и своё решение в этой статье. А в дальнейшем планируется "завернуть" этот пример в пакет для NuGet, чтобы можно было в одно мгновение установить PagedList в проект MVC.

My Frameworks

22 Микросервисы: шаблон на базе платформы ASP.NET Core

Пример построения инфраструктуры на базе ASP.NET Core. Видео на тему микросервисной архитектуры. Пример реализации. С примерами.

Просто о NET

23 Автоматическая история изменений сущности в EntityFrameworkCore 3

В этой серии видео роликов покажу как можно усовершенствовать принципы показанные в статье. Это третье видео, где продолжим создавать сущности и специальный классы - Interceptors.

WPF, MVVM, Silverlight

24 Как растянуть ListBoxItem на всю длину ListBox? WPF (Silverlight)

В статье покажу как растянуть содержимое ListBoxItem на всю длину ListBox. Данный код работает и для Windows Presentation Foundation (WPF) и для Silverlight.

Теория и практика

25 FAQ по программированию 50

В этом видео orchestration, gRPC, Redis, PostgreSQL, Web API, csharp, docker и многое другое.

Просто о NET

26 Dependency Container своими руками

А вы никогда не задумывались как работает Dependency Container?

Просто о NET

27 Dependency Injection pattern: три способа реализации в Silverlight

Существует огромное множество различных паттернов (шаблонов) дизайна и программирования. Порой разобраться в них с первого раза не так просто, как может показаться на первый взгляд. И тем более, при этом учитывать, что почти все из существующих паттернов могут быть реализованы несколькими способами. В этой статье будет показано три варианта Dependency Injection.

Просто о NET

28 API: Routing. Теория.

ключевые моменты: #csharp #Routing #theory #ООП #маршрутизация #программирование #теория #api #routes #restfull_api

Микросервисы

29 OperationResult: Ответ сервера всегда понятен пользователю

В этой статье речь пойдет о том, как пользователю сказать о том, что его запрос является некорректным и при этом не выбрасывать исключения или любого другого непонятно кода состояния HTTP запроса.

Полезности

30 OpenIddict + Active Directory

Новый nuget-пакет, который позволяет кроссплатформенно обращаться к Active Directory для аутентификации пользователей через LDAP.

Аналитика 1994 записей о посещении страницы просмотра записи блога.

Что-то пошло не по сценарию и завершилось ошибкой. Перезагрузить страницу (F5) 🗙

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please reload the page.