C# Development | YeaHub
743 subscribers
304 photos
33 videos
1 file
537 links
Теория, подготовка к интервью и курсы для C# разработчиков

YeaHub — это платформа для IT-специалистов, объединяющая обучение, карьерный рост, развитие и сообщество единомышленников.

Платформа: https://yeahub.ru

Для связи: @ruslan_kuyanets
Download Telegram
#Собес
🤔 Что такое кортеж (Tuple) в С#?

Кортеж - это структура данных, которая позволяет хранить несколько значений различных типов в одном объекте. Он был введен в .NET Framework 4.0 и поддерживает от 1 до 8 элементов.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
#видео
😊 Создайте трекер расходов с помощью Asp.Net Core MVC

Рассматриваются создание контроллеров, настройка пользовательского интерфейса (форма дизайна, заголовок страницы, хлебные крошки), работа с приборной панелью, визуализация данных с помощью сплайн-диаграммы и добавление интерактивных элементов, таких как виджет недавних транзакций и боковое меню.
📱 Cмотреть источник

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😇 FluentValidation делает валидацию ввода проще простого.

Знаете ли вы, что валидаторы поддерживают внедрение зависимостей (DI)?

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

Посмотрите фрагмент кода на фото в качестве примера.

Милан использует FluentValidation вместе с MediatR для реализации универсального конвейера валидации (middleware).
Подробно можно посмотреть здесь

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
😊 Cline + GitHub: мгновенный разбор кода

Хотите быстро разобраться, как работает библиотека с GitHub? Лови лайфхак

Просто вставляешь ссылку на репозиторий в Cline – и он объясняет, как использовать код!

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес
🤔 Что такое пространства имен (Namespaces) в С#?

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

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🤓 Нашёл топовую библиотеку для логирования!

Serilog — это лучший инструмент для структурированного логирования в .NET. Можно легко настраивать вывод в файлы, консоль, базы данных и даже в облачные сервисы.

✅ Поддержка множества синков (куда писать логи)
✅ Гибкая настройка уровней логирования
✅ Поддержка разметки шаблонов

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#полезное
🤯 ASP.NET Core 9 позволяет отключать HTTP-метрики и не записывать значения для определённых конечных точек и запросов.

Например, автоматизированные системы проверяют конечную точку Health, поэтому сбор метрик для неё не особенно полезен.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#полезное
👍 Как реализовать поток On-Behalf-Of (OBO) в ASP.NET Core с использованием Microsoft Entra ID для делегированной аутентификации.
Читать статью

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#Собес
🤔 Что такое индексаторы (Indexers) в С#?

Индексаторы в С# позволяют объектам класса быть индексируемыми, как массивы. Они позволяют использовать синтаксис массива для доступа к элементам объекта.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Copilot, дружище, твои знания по C# отстают на год, а может и два

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Media is too big
VIEW IN TELEGRAM
#полезное
🤓 Claude 3.7 Sonnet получил серьёзного конкурента

Gemini 2.5 Pro — действительно хорошая модель для кода

🟠качество кода действительно высокое
🟠контекст 1M токенов
🟠нативная мультимодальность
🟠генерация длинного кода
🟠понимание крупных кодовых баз

Чувак на видео использовал его вместе с Windsurf для создания приложения поискового агента с ИИ

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
😐 Вы можете открыть VS Code прямо в браузере из репозитория на GitHub.

Просто нажмите клавишу "." (точка)" в репозитории на GitHub. Это откроет репозиторий в веб-версии VS Code. Можно редактировать и коммитить изменения одним кликом.

Это работает даже если вы не владеете репозиторием!

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
#Собес #CSharp
🤔 Что такое запечатанные (sealed) классы в С#?

Запечатанный (sealed) класс не позволяет создавать от него производные классы. Это защищает класс от модификаций и обеспечивает его неизменяемость.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🥺 Как управлять задержкой в методе Task.Delay в тестах?

Начиная с .NET 8, вы можете передать объект TimeProvider в метод Task.Delay

TimeProvider будет интерпретировать задержку.

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

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #CSharp
🤔 Что такое делегаты в С#?

Делегат (delegate) - это тип, который хранит ссылку на метод и позволяет вызывать его динамически. Делегаты используются для обратных вызовов, событий и передачи методов в качестве параметров.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#статьи
😊 Как с помощью .NET 8 грамотно настроить ролевую авторизацию в многоуровневых приложениях

Всё это — с примерами кода и лучшими практиками, чтобы приложение было и безопасным, и масштабируемым.
Читать тут

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😊 Устали листать запутанный и огромный файл Program.cs?

Вот как сделать его чище и читабельнее

Одно из первых, что мы делаем при создании приложения — это настройка:

🟠Логирования
🟠Базы данных и ORM
🟠CORS
🟠Аутентификации
🟠DI-сервисов
🟠Привязок для API

И всё это сваливается в Program.cs — и быстро превращается в кашу.

Вот тут и приходит на помощь паттерн расширения ServiceCollection

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

Читай целый выпуск на эту тему с примерами

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🥺 EF Core Tip

При разработке можно включить EnableSensitiveDataLogging(), чтобы видеть реальные значения параметров в SQL-запросах — это помогает понять, что именно уходит в базу

Никогда не включай это в staging или production!

Функция логирует чувствительные данные (например, пароли, email, токены и т.д.), что может привести к утечке

Можешь подробней почитать здесь

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤2🔥2
#Собес #CSharp
🤔 Что такое LINQ в С#?

LINQ (Language Integrated Query) - это встроенный в С# инструмент для удобного запроса данных. Он позволяет работать с коллекциями, базами данных, XML и другими источниками с использованием SQL-подобного синтаксиса.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😎 Как проверить, что список не null и содержит элементы?

Существует несколько способов это сделать:

🟠 Классический способ
🟠 Способ с List.Count
🟠 Способ с Enumerable.Any
🟠 Способ с pattern matching

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
#полезное
😊 5 причин, почему простые extension-методы в C# чаще всего лучше AutoMapper

🟠Простота
Пишешь только то, что нужно и ничего лишнего. Extension-методы дают точное управление маппингом без лишней конфигурации

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

🟠Читаемость
Код должен рассказывать историю. Когда другой разработчик читает маппинг, extension-метод чаще всего более прозрачен

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

🟠Отладка
Можно спокойно зайти в свой маппинг-код и сразу увидеть, что и как работает. Без необходимости лезть в внутренности AutoMapper

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

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1