Библиотека шарписта | C#, F#, .NET, ASP.NET
23.3K subscribers
2.1K photos
32 videos
85 files
4.27K links
Все самое полезное для C#-разработчика в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/b60af5a4

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5c81cdc130259d5b7fead
Download Telegram
🏗️ Зачем нужен паттерн Factory в C#?
Factory (Фабрика) — это паттерн проектирования, который упрощает создание объектов, отделяя логику их создания от основного кода.

Почему нужно использовать этот паттерн?
1️⃣ Слабое связывание — код не зависит от конкретных реализаций, работая только с интерфейсами или абстрактными классами.
2️⃣ Гибкость — легко добавлять новые типы объектов без изменения клиентского кода.
3️⃣ Чистота кода — детали создания объектов скрыты в фабрике, упрощая логику приложения.

Пример использования
Фабрика может быть полезна, например, при создании объектов для различных типов телефонов. Клиенту нужно лишь указать тип, а фабрика сама вернёт нужный объект.

📎 Для подробного кода и примеров читайте статью.
🤔👨‍💻 Что такое MapGroup в минимальных API?

MapGroup — это функция в минимальных API ASP.NET Core, позволяющая группировать связанные конечные точки под общим префиксом маршрута и общей конфигурацией. Это улучшает организацию кода, делая его более читаемым и поддерживаемым.

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

Общий middleware: можно применять middleware, такие как аутентификация или логирование, ко всем конечным точкам в группе одновременно.

Логическая организация: группировка связанных конечных точек (например, /users, /orders) помогает структурировать код по функциональным областям.

Пример использования MapGroup:


var app = builder.Build();

var usersGroup = app.MapGroup("/users");

usersGroup.MapGet("/", () => "Список пользователей");
usersGroup.MapGet("/{id}", (int id) => $"Детали пользователя с ID {id}");
usersGroup.MapPost("/", () => "Создать нового пользователя");

app.Run();

В этом примере все конечные точки, связанные с пользователями, сгруппированы под префиксом /users, что упрощает их управление и масштабирование.

Когда использовать MapGroup:

При наличии нескольких конечных точек с общим префиксом маршрута.
Когда требуется применить одинаковый middleware к группе конечных точек.
Для улучшения читаемости и организации кода в проектах с большим количеством маршрутов.
Please open Telegram to view this post
VIEW IN TELEGRAM
Привет, C# сообщество!

Мы хотели бы поближе с вами познакомиться! Будем очень признательны за ваши ответы на следующие вопросы!

(Технические шоколадки с постами, отвечайте на вопросы, не стесняйтесь!)
🙏 Спасибо вам за ответы! Мы стараемся для вас! 🤩
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️🛠️ WinGet — вместо тысячи кликов

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

Основные возможности WinGet:

Поиск приложений: команда winget search позволяет находить программы по названию или категории.
Установка приложений: с помощью команды winget install <имя_программы> можно быстро установить нужное приложение.
Обновление приложений: команда winget upgrade --all обновляет все установленные программы до актуальных версий.
Удаление приложений: для удаления используется команда winget uninstall <имя_программы>.

WinGet работает с проверенными репозиториями пакетов, что снижает риск загрузки вредоносного или нежелательного ПО. Для пользователей Windows 11 WinGet уже предустановлен, а владельцы Windows 10 могут бесплатно скачать его из Microsoft Store.
🎄 Начни 2025-й с апгрейдом навыков,
которые откроют двери в мир IT!

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

🔗 Собери свой план и начни путь в IT

Почему это выгодно?

📚 Несколько программ по цене одной — максимальная эффективность: учишься сразу тому, что действительно нужно.

💾 Бессрочный доступ — все материалы всегда под рукой, чтобы учиться в своём темпе.

💸 Знания, которые окупятся — навыки, востребованные в любой точке мира.
Какие навыки ты можешь прокачать?

💡 Математика для Data Science + Алгоритмы и структуры данных
— Подготовка к собеседованиям в FAANG и поступлению в ШАД. Решай сложные задачи, работай с данными и моделями на профессиональном уровне.

💡 Алгоритмы и структуры данных + ML
— Улучшай своё алгоритмическое мышление и изучай базовые методы машинного обучения, чтобы создавать интеллектуальные приложения.

💡 Frontend Basic + Базовые модели ML
— Построй свою первую веб-страницу и погрузись в мир ML: от нейросетей до ML-бустинга.

💡 Архитектуры и шаблоны проектирования + Математика для Data Science
— Развивай аналитическое мышление и учись проектировать устойчивые системы.

💡 Алгоритмы и структуры данных + Frontend Basic
— Получи полный набор навыков: от оптимизации алгоритмов до создания современных веб-приложений.

Не упусти шанс сделать шаг в будущее! Новый год — это время обновлений, и твоя карьера может стать одним из них.

🔗 Составь свой IT-маршрут сейчас или выбери курс по новогодней скидке