C# Portal | Программирование – Telegram
C# Portal | Программирование
14.9K subscribers
965 photos
118 videos
24 files
808 links
Присоединяйтесь к нашему каналу и погрузитесь в мир для C#-разработчика

Связь: @devmangx

РКН: https://clck.ru/3FocB6
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
SQLZap это настоящая находка

sqlzap.com это веб-платформа для практики SQL-запросов прямо в браузере. По сути, интерактивный симулятор.

Отлично подходит, чтобы прокачать навыки (как LeetCode, но для SQL)

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
6
Знаешь, что означает _ (подчёркивание) в C#?

Это символ для отбрасывания

Discards — это «заглушки», которые можно использовать, когда нужно объявить переменную, но её значение не требуется.

Отбрасывание означает игнорирование значения, возвращаемого методом или присвоенного переменной.

Особенно полезно при работе с параметрами out.

Ещё _ можно использовать для:

I. Отбрасывание элементов кортежа
II. Отбрасывание возвращаемых значений
III. pattern matching с discard
IV. в выражениях switch

Для чего ещё можно использовать _ ?

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍2
Каждый раз, когда разработчики жалеют о своих архитектурных решениях, причина чаще всего не в том, что дизайн был «неправильным».

Проблема в том, что они оптимизировали под будущие сложности, которые так и не возникли.

Именно поэтому всё больше команд выбирают подход «сначала монолит» с модульной архитектурой:

• Меньше движущихся частей на старте
• Проще создавать, деплоить и поддерживать
• Более стабильная и функциональная система
• Экономично

Каждый модуль в будущем может стать отдельным микросервисом. Такой подход даёт высокую гибкость и свободу для масштабирования.

Подробнее о модульном монолите

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥6👍1
90% .NET-разработчиков управляют версиями NuGet самым сложным способом. 👊

Секрет работы с NuGet-пакетами в больших .NET-решениях это использовать Central Package Management (CPM).

Вместо того чтобы дублировать номера версий в каждом проекте, вы определяете их один раз в файле Directory.Packages.props.

После этого в проектах указывается только имя пакета — без версии.

Что это даёт
I. Единообразие по всей solution.
II. Одно место для обновления версии пакета.
III. Экономию времени при апгрейде .NET-версии.

Хватит тратить часы на поиски несовпадений версий. Управляйте пакетами централизованно и в одном месте.

P.S. Если в каком-то проекте нужна своя версия, всегда можно переопределить центральную.

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
👍133
Обновление поддержки .NET STS

Начиная с .NET 9 (текущий STS), поддержка STS-релизов увеличена с 18 месяцев до 2 лет.

Теперь STS-релизы теряют поддержку в тот же день, что и предыдущий LTS-релиз.

Это значит, что обновление до STS-релиза больше не приведёт к потере поддержки

Долгожданное улучшение для разработчиков, которым важно оставаться на актуальной версии без риска прерывания поддержки. ⌨️

https://devblogs.microsoft.com/dotnet/dotnet-sts-releases-supported-for-24-months/

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
4
This media is not supported in your browser
VIEW IN TELEGRAM
Появилось расширение, которое добавляет эффекты из Elden Ring в вашу почту, LeetCode и GitHub

Теперь пулл реквесты ощущаются как битва с боссом 🔨

Забираем с GitHub

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
😁212
У .NET-приложений больше нет оправдания быть нестабильными. Исправить это можно за пару минут.

Начиная с .NET 8, добавлять устойчивость в приложения стало гораздо проще, ведь появился обновлённый API Polly и официальные библиотеки от Microsoft для работы с отказоустойчивостью.

Polly — это библиотека для .NET, которая помогает обрабатывать временные ошибки и строить стратегии устойчивости: повторные попытки, fallback, таймауты, rate limiting и circuit breaker.

Хочешь узнать, как использовать Polly для создания resilience-пайплайнов? Вот статья со всеми деталями: Building Resilient Cloud Applications with .NET

А если ты работаешь с .NET Aspire, большая часть уже преднастроена «из коробки».

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥2
Принесли настоящий клад для изучения алгоритмов —> репозиторий awesome-algorithms

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

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12😁6👍3
Вопрос для C#

Смотрим на код (слайд 1):

- ProductStock не равен null
- Вы перебираете элементы в цикле
- Используется yield return внутри цикла

Вопрос: почему всё равно появляется предупреждение или ошибка?

Подумайте немного ⌚️

На слайде 2 — правильный ответ.

Причина в том, что yield return не останавливает выполнение цикла.

В отличие от обычного return, который сразу завершает метод, yield return просто отдаёт один элемент и приостанавливает выполнение. Цикл продолжает выполняться дальше.

Поэтому, если нужно пропустить итерацию, нужно использовать continue. Иначе выполнение продолжается, и можно столкнуться с неожиданными результатами или исключениями.

Классическая тонкость C# и знать её важно для собеседований.

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
15👍11🔥3😁2
doc_2025-09-19_09-49-11.net-developer-resources.pdf
4.3 MB
Вышел бесплатный PDF с 650+ с отобранными вручную ресурсами для прокачки C#, .NET, ASP.NET Core, EF Core и микросервисов.

В сборнике собраны официальная документация, туториалы, лучшие блоги и видео, а также экспертные советы от .NET Technical Lead и Microsoft MVP с 11+ лет опыта.

Это не просто очередной PDF, а полный учебный гид для разработчиков, который поможет быстро прокачать знания и навыки.

За это и лайка не жалко 🫡

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
14👍12😁2
This media is not supported in your browser
VIEW IN TELEGRAM
После сильного падения трафика StackOverflow наконец-то совершил камбэк ❤️

Он запустил собственного ИИ-агента — stackoverflow.ai. Он отвечает только на основе проверенных ответов сообщества, подбирая прямые цитаты из них.

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥334👍2
Нужна ли сервисная дискавери и зачем

В микросервисной архитектуре часто встает вопрос: как сервисы находят друг друга и надежно общаются

Хардкодить IP и порты — прямой путь к проблемам. Если сервис переезжает или запускается новый экземпляр, весь стек может сломаться

Сервисная дискавери позволяет обращаться к внешним сервисам по логическим именам, а не по физическим адресам и портам

Для этого обычно нужен сервисный реестр — централизованное место, где сервисы регистрируют себя. Клиенты обращаются к реестру, чтобы получить актуальный физический адрес сервиса

Рабочий процесс выглядит так

1. Сервис регистрируется в сервисном реестре
2. Клиент обращается к реестру, чтобы узнать физический адрес сервиса
3. Клиент отправляет запрос на этот физический адрес

В .NET это можно реализовать через Consul. Вот подробный туториал

Consul — популярное решение для распределенных систем

Есть более легковесное решение от Aspire, но там физические адреса задаются через конфигурацию приложения, поэтому оно менее надежное и гибкое

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍2
Аутентификация подтверждает, кто вы. Авторизация решает, что вам разрешено делать.

В этом курсе вы научитесь создавать ASP.NET-приложения, которые умеют выдавать JWT, регистрировать и логинить пользователей, управлять ролями и многое другое. ☀️

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍5
This media is not supported in your browser
VIEW IN TELEGRAM
Принесли ещё одну огромную подборку бесплатных API.

Внутри 1511 штук на любой вкус: игры, погода, финансы, здоровье и многое другое.

Забираем тут - publicapis.io 🍔

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍2
Visual Studio 2026 показывает результаты условных операторов (if) прямо в коде во время отладки.

Скоро будет доступно ⌨️

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
40🔥11👏3🕊3
Динамическая сортировка в EF Core

Пример кода, показывающий, как динамически сортировать данные в EF Core по имени колонки.

Исходный проект: SortByColumnNameApp на GitHub

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
🥴8👍5👎2🔥21
LLM в .NET проще, чем кажется

Создавать AI-приложения на .NET теперь легко. Примеры применения:

- чат-приложения
- суммаризация текста
- категоризация
- распознавание изображений
- семантический поиск

LLM можно запускать локально или через облачное API. Отличный способ не отставать в практическом использовании AI. 🙂

Подробнее: тык

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍6
Устаревший подход к работе с null в C# выглядит так:

• Возвращать null из методов и надеяться на лучшее
• Вставлять десятки проверок if (x != null) повсюду
• Полагаться на то, что разработчики «просто знают», что может быть nullable

И всё это ради чего?

Хрупкий код, скрытые баги и NullReferenceException

Новый путь такой:

• Возвращать пустые значения вместо null (Enumerable.Empty<T>(), string.Empty, [] и т.д.)
• Использовать nullable reference types C# для ловли проблем на этапе компиляции
• Заменять проверки на null паттерном Null Object и оператором null-conditional (?.)

Как начать:

• Включите nullable reference types в вашем .csproj
• Замените возвращаемые null безопасными значениями по умолчанию
• Рефакторьте повторяющиеся проверки null в безопасные обёртки или поведение по умолчанию

Писать безопасный, устойчивый к падениям C# код тяжело.

Но искать NullReferenceException в продакшене в 100 раз сложнее.

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
13👎4👍2
Любите ретро-игры и открытый код? На OS Game Clones собрали десятки открытых клонов классических игр. 😎

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

Всё в свободном доступе и с возможностью модификации.

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
9🔥4🥰2👍1
Слышали про Refit?

Если нет, позвольте представить.

Refit это типобезопасная библиотека для работы с REST в C#, которая упрощает потребление API.

Вы начинаете с определения API в виде интерфейса с методами и атрибутами, а Refit берет на себя всю "тяжелую работу".

Почему стоит рассмотреть его использование?

- Автоматическая сериализация и десериализация
- Поддержка HTTP-методов
- Строго типизированное определение API

Больше всего мне нравится обертка ApiResponse<T>, которая обрабатывает как содержимое, так и метаданные.

Она также обеспечивает единообразную структуру ответа для ваших сервисов.

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

Тем не менее, это не универсальное решение, используйте с умом. 🍺

👉 @KodBlog
Please open Telegram to view this post
VIEW IN TELEGRAM
👍84