Библиотека шарписта | C#, F#, .NET, ASP.NET – Telegram
Библиотека шарписта | C#, F#, .NET, ASP.NET
22.4K subscribers
2.51K photos
40 videos
85 files
4.76K links
Все самое полезное для C#-разработчика в одном канале.

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

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

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

РКН: https://gosuslugi.ru/snet/67a5c81cdc130259d5b7fead
Download Telegram
Forwarded from Библиотека программиста | программирование, кодинг, разработка
Летим зимовать ✈️

Когда холодает, айтишники пакуют чемоданы, а мы разыгрываем ваучер на 50 000 рублей в Островке.

Поехать к морю или остаться среди снежных пейзажей — выбирайте сами!

Чтобы участвовать, нужно оставить любую реакцию под этим постом и подписаться на каналы ниже:

😎 Типичный программист
🐸 Библиотека программиста
🟢 Ostrovok! Tech

Теперь осталось нажать на кнопку участия под этим постом и вы в игре!

Итоги подведём 12 декабря. Победителя выберем с помощью бота. Подробнее с правилами можно ознакомиться здесь.

Всем удачи!

Участников: 111
Призовых мест: 1
Дата розыгрыша: 19:00, 12.12.2025 MSK (3 дня)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1🥰1
🧑‍🎓 Как вуз влияет на карьеру

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

Но и здесь со временем решающим фактором становятся не корочки а опыт и стек.

➡️ Сколько стоит джун с дипломом и без

🔹 AI-агенты для DS-специалистов
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

🐸Библиотека шарписта
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰2
⚙️ Останавливаем некрасивый код

Использовать dotnet format в CI удобно как «стоп кран» по стилю кода. В пайплайн достаточно добавить один шаг:
- name: Format
run: dotnet tool restore && dotnet format --verify-no-changes


Зачем так делать

dotnet format читает правила из .editorconfig и проверяет что код им соответствует. Ключ --verify-no-changes сообщает утилите работать в режиме проверки без правок файлов и выйти с ненулевым кодом если что то нужно переформатировать.

В результате билд в CI падает если кто то закоммитил неотформатированный код.

🔹 Математика для разработки AI-моделей
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

🐸Библиотека шарписта

#sharp_view
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔3❤‍🔥2🥰1
🧑‍💻 Готовые LINQ-скрипты

Шарписты, которые активно пользуются LINQPad редко хранят полезные скрипты.

Нашли личный набор рабочих скриптов для LINQPad, который автор вынес в общий GitHub репозиторий.

В репозитории лежат .linq скрипты которые помогают решать рутину в .NET проектах через LINQPad вместо отдельных утилит. Это могут быть быстрые запросы к БД, небольшие проверки, конвертеры данных и прочие «разовые» задачи которые регулярно повторяются.

➡️ Репозиторий

🔹 Специалист по ИИ
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

🐸Библиотека шарписта

#sharp_view
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰3🥱3
🔄 Первое сервисное обновление .NET 10

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

Обновление помечено как non security: оно не закрывает уязвимости, а дорабатывает поведение рантайма, BCL и SDK после выхода 10.0.0.

➡️ Release notes

🐸Библиотека шарписта

#async_news
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰8👍2
🎮 Портфолио, в которое хочется играть

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

Резюме сделано в виде 3D игры, где нужно кататься на машинке по точкам интереса: проекты, места работы, соц. сети. У обычного HR'а на такое точно не хватит времени.

Челлендж от админа — попробуйте выбить страйк в левой части карты. Скидывайте скрины в комменты 👇

➡️ Выбить страйк

🐸Библиотека шарписта

#GoTalk
Please open Telegram to view this post
VIEW IN TELEGRAM
6🥰3
🧑‍💻 IDE для .NET, написанная на .NET

У нас тут интересный эксперимент из мира .NET‑инструментов — SharpIDE.

Это кроссплатформенная IDE для .NET, которую делают не на Java и не на Electron, а на самом .NET + движок Godot для UI.

Автор позиционирует её как полностью open source‑альтернативу классическим IDE с упором на расширяемость и игровой UI

➡️ Репозиторий проекта

🐸Библиотека шарписта

#sharp_view
Please open Telegram to view this post
VIEW IN TELEGRAM
😁22👍10🤩6🥰1🌚1
⚡️ Fleet В С Ё

JetBrains убивает Fleet как продукт, но не как технологию: с 22 декабря 2025 его перестанут распространять и команда переезжает в новый инструмент для «агентной разработки» — среды, где код пишут в основном AI‑агенты, а разработчик управляет задачами и ревьюит патчи.

Fleet создавали как эксперимент: лёгкая архитектура, современный UI, свобода от легаси IntelliJ-платформы, и технически он реально удался — его компоненты и UX‑решения уже раскатаны по другим IDE от JetBrains.

➡️ Оригинальный анонс

🐸Библиотека шарписта

#async_news
Please open Telegram to view this post
VIEW IN TELEGRAM
😁12👍41
🌐 Контроллеры без мусора

Пишете API, и в каждом контроллере приходится проверять if (!ModelState.IsValid) return BadRequest(). Скучно копипастить одно и то же. А если контроллеры станут реально чистыми — только маршрутизация и вызов сервиса?

[ApiController] автоматически подключает механизм валидации. Он ищет в DI IValidator<T> для ваших DTO/команд и запускает их до входа в метод контроллера.

FluentValidation делает так, что все ваши AbstractValidator<T> автоматически регистрируются как IValidator<T>.

Настройка за 5 секунд:
// Program.cs
builder.Services.AddControllers()
.AddJsonOptions(o => o.JsonSerializerOptions.PropertyNamingPolicy = JsonNamingPolicy.CamelCase);

builder.Services.AddValidatorsFromAssembly(typeof(CreateUserValidator).Assembly);


Теперь все ваши AbstractValidator<T> автоматически работают.

Вот так пишется валидатор:
public class CreateUserValidator : AbstractValidator<CreateUserCommand>
{
public CreateUserValidator()
{
RuleFor(x => x.Email).NotEmpty().EmailAddress().MaximumLength(256);
RuleFor(x => x.DisplayName).NotEmpty().MaximumLength(100);
RuleFor(x => x.Password).NotEmpty().MinimumLength(8);
}
}


Итоговый эндпоинт:
[ApiController]
[Route("users")]
public class UsersController : ControllerBase
{
[HttpPost]
public async Task<IActionResult> Create(CreateUserCommand cmd)
{
var user = await _mediator.Send(cmd);
return CreatedAtAction(nameof(Get), new { id = user.Id }, user);
}
}


Один раз настроили — наслаждаетесь чистотой контроллеров и валидацией.

🐸Библиотека шарписта

#il_люминатор
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🥰31
💼 Карьерная «страховка» для IT‑шника

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

🐸Библиотека шарписта
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰6👍1
👨‍💻 Чистые стектрейсы в .NET с помощью StackTraceHiddenAttribute

В .NET есть простой способ скрыть внутреннюю кухню и оставить только то, что важно потребителю API. Атрибут StackTraceHiddenAttribute помечает методы, которые не должны попадать в публичный стектрейс, при этом логика выполнения не меняется.

Пример:
public static class UserService
{
[StackTraceHidden]
private static void ValidateName(string name)
{
if (string.IsNullOrWhiteSpace(name))
throw new ArgumentException("Name cannot be empty");
}

public static void CreateUser(string name)
{
ValidateName(name);
Console.WriteLine("Created user " + name);
}
}


В этом примере при исключении из ValidateName в стектрейсе вы увидите только вызов UserService.CreateUser. Валидационный хелпер скрыт атрибутом, поэтому внешний разработчик не видит внутренний слой проверки.

🐸Библиотека шарписта

#sharp_view
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🥰21
🔄 WSL 2.7.0: обновление с новым ядром

Windows Subsystem for Linux это встроенный слой совместимости, который позволяет запускать Linux и его приложения напрямую без виртуальной машины.

В WSL 2.7.0 ядро обновили до ветки Linux 6.6.114. Параллельно подтянули новые версии WSLg .NET и связанных NuGet пакетов.

Список поддерживаемых дистрибутивов пополнился свежими релизами: Debian 13, Ubuntu 25.10, Fedora 43, а также Kali 2025.3 и декабрьская сборка Arch Linux.

➡️ Релиз на GitHub

🐸Библиотека шарписта

#async_news
Please open Telegram to view this post
VIEW IN TELEGRAM
7