ch
Feedback
Библиотека шарписта | C#, F#, .NET, ASP.NET

Библиотека шарписта | C#, F#, .NET, ASP.NET

前往频道在 Telegram

Все самое полезное для C#-разработчика в одном канале. Наши курсы: https://clc.to/y3LDtw По рекламе: @proglib_adv Для обратной связи: @proglibrary_feeedback_bot РКН: https://gosuslugi.ru/snet/67a5c81cdc130259d5b7fead

显示更多

📈 Telegram 频道 Библиотека шарписта | C#, F#, .NET, ASP.NET 的分析概览

频道 Библиотека шарписта | C#, F#, .NET, ASP.NET (@csharpproglib) 俄语 语言赛道中的 是活跃参与者。目前社区聚集了 21 701 名订阅者,在 技术与应用 类别中位列第 5 943,并在 俄罗斯 地区排名第 30 267

📊 受众指标与增长动态

невідомо 创建以来,项目保持高速增长,吸引了 21 701 名订阅者。

根据 29 八月, 2026 的最新数据,频道保持稳定运转。过去 30 天订阅人数变化为 -48,过去 24 小时变化为 -6,整体触达仍然可观。

  • 认证状态: 未认证
  • 互动率 (ER): 平均受众互动率为 16.72%。内容发布后 24 小时内通常能获得 7.84% 的反应,占订阅者总量。
  • 帖子覆盖: 每篇帖子平均可获得 3 628 次浏览,首日通常累积 1 702 次浏览。
  • 互动与反馈: 受众积极参与,单帖平均反应数为 23
  • 主题关注点: 内容集中在 .net, шарписта, навигация, await, string 等核心主题上。

📝 描述与内容策略

作者将该频道定位为表达主观观点的平台:
Все самое полезное для C#-разработчика в одном канале. Наши курсы: https://clc.to/y3LDtw По рекламе: @proglib_adv Для обратной связи: @proglibrary_feeedback_bot РКН: https://gosuslugi.ru/snet/67a5c81cdc130259d5b7fead

凭借高频更新(最新数据采集于 30 八月, 2026),频道始终保持新鲜度与高覆盖。分析显示受众积极互动,使其成为 技术与应用 类别中的关键影响点。

21 701
订阅者
-624 小时
-57
-4830
帖子存档
✋ Хватит плохих новостей Такое ощущение, что плохих новостей вокруг уже больше, чем уведомлений от коллег. Наткнулись на кана
Хватит плохих новостей Такое ощущение, что плохих новостей вокруг уже больше, чем уведомлений от коллег. Наткнулись на канал с позитивными новостями и это как антидот к новостному шуму и думскроллингу, где можно сознательно переключиться в режим у мира ещё есть шансы. 🤌 Бонусы для подписчиков:Скидка 40% на все курсы АкадемииРозыгрыш Apple MacBookБесплатный тест на знание математики 🐸Библиотека шарписта

📰 Последняя неделя ноября Ноябрь вот-вот закончится, а мы подводим итоги недели. — Куда катится .NET Microsoft выкатили боль
📰 Последняя неделя ноября Ноябрь вот-вот закончится, а мы подводим итоги недели. Куда катится .NET Microsoft выкатили большой лонгрид про то, как .NET в .NET 10 окончательно переезжает на Unified Build — виртуальный монорепозиторий и вертикальные сборки, чтобы быстрее и предсказуемее собирать весь продукт. — Ивент про ИИ .NET‑команда анонсировала бесплатный онлайн‑ивент .NET Day on Agentic Modernization, который пройдёт 9 декабря 2025 — Redis 8.4 Redis выкатили версию, которая одновременно ускоряет кэш, упрощает жизнь кластерам и делает Redis куда более удобным движком для AI и гибридного поиска — GitHub Copilot TestingПерестаньте ждать, пока вас найдутКарьерная «страховка» для IT‑шника 🫶 Бонусы для подписчиков:Скидка 40% на все курсы АкадемииРозыгрыш Apple MacBookБесплатный тест на знание математики 🐸Библиотека шарписта #async_news

🔥 Хочешь строить свои AI-модели, а не просто запускать чужие? Proglib.academy открывает курс «Математика для разработки AI-моделей» — программу, которая превращает понимание ML из «черного ящика» в осознанную инженерную работу. 📌 Почему без математики в AI никуда: → Чтобы пройти собеседование. Это первый фильтр: линал, матстат, оптимизация — спрашивают везде. → Чтобы понимать процесс изнутри. Инженер AI должен понимать, почему и как работает модель, а не просто жать fit(). 🎓 Что будет на курсе: → 3 практических задания на Python + финальный проект с разбором от специалистов; → программа обновлена в ноябре 2025; → за 2 месяца пройдёшь весь фундамент, нужный для работы с моделями; → преподаватели — гуру математики, методисты и исследователи из ВШЭ и индустрии. 🎁 Бонусы ноября: — 40% скидка; — получаешь курс «Школьная математика» в подарок; — короткий тест и узнать свой уровень. 🔗 Подробнее о курсе

👨‍💻 DbContext в ASP.NET Core лучше оставлять scoped В ASP.NET Core есть негласное правило DbContext живет ровно столько, сколько живет HTTP запрос. Эту модель Microsoft прямо закладывает в документацию, ведь DbContext задуман как короткоживущий объект под одну единицу работы одну бизнес операцию и один вызов SaveChanges. Когда вы регистрируете контекст так:
builder.Services.AddDbContext<AppDb>(opt =>
    opt.UseNpgsql(connString));
контейнер DI по умолчанию регистрирует AppDb с временем жизни Scoped. Это значит новый экземпляр создается на каждый запрос и шарится только между сервисами внутри этого запроса. Если сделать DbContext Singleton вы получите общий экземпляр на все запросы сразу и это прямой путь к гонкам, утечкам и странным багам. 🤌 Бонусы для подписчиков:Скидка 40% на все курсы АкадемииРозыгрыш Apple MacBookБесплатный тест на знание математики 🐸Библиотека шарписта #sharp_view

😂 Я ставлю X. Ваш ход 🐸Библиотека шарписта #garbage_collector
😂 Я ставлю X. Ваш ход 🐸Библиотека шарписта #garbage_collector

💻 Поддержка паттерна discard в use! в F# 10 Раньше в use! вычислительных выражениях нельзя было указать _ для игнорирования результата, что заставляло создавать ненужные имена переменных, например, __ или _ignored. Теперь можно прямо написать:
use! _ = acquireResourceAsync()
Это обозначает, что ресурс используется только для управления временем жизни, и его значение не будет задействовано в коде. 🤌 Бонусы для подписчиков:Скидка 40% на все курсы АкадемииРозыгрыш Apple MacBookБесплатный тест на знание математики 🐸Библиотека шарписта #sharp_view

💳 Как выбить зарплату побольше Собрали для вас в карточках 5 стратегий для торгов на собеседовании. Есть ещё несколько, кото
+5
💳 Как выбить зарплату побольше Собрали для вас в карточках 5 стратегий для торгов на собеседовании. Есть ещё несколько, которые подробно описаны в статье. 🤌 Бонусы для подписчиков:Скидка 40% на все курсы АкадемииРозыгрыш Apple MacBookБесплатный тест на знание математики 🐸Библиотека шарписта

⚡️ Batch-обработка с помощью Chunk Если нужно обработать коллекцию по частям — например, выгрузить данные пакетами, есть решение: метод Chunk. Он создаёт из исходного списка последовательность подсписков одинакового размера. Пример:
foreach (var batch in items.Chunk(100))
{
    await SaveBatch(batch);
}
} Chunk тут удобен тем, что не требует писать циклы с индексами и сложную логику по разбиению. Просто задайте размер пакета, и метод сделает всё за вас. 🔹 Практический интенсив «Архитектуры и шаблоны проектирования» 🔹 Получить консультацию менеджера 🔹 Сайт Академии 🔹 Сайт Proglib 🐸Библиотека шарписта #sharp_view

💡 Tail-call оптимизация в вычислительных выражениях F# 10 В F# 10 появилась важная возможность оптимизировать использование вычислительных выражений с помощью поддержки tail-call оптимизации для ключевых вызовов return!, yield! и do!. Теперь компилятор распознаёт, когда эти вызовы находятся в хвостовой позиции, и, если реализация билдера поддерживает специальные методы ReturnFromFinal, YieldFromFinal и им подобные, он применяет оптимизацию tail call. Это позволяет выполнять вызовы без дополнительного роста стека. 🔹 Основы IT для непрограммистов 🔹 Получить консультацию менеджера 🔹 Сайт Академии 🔹 Сайт Proglib 🐸 Библиотека шарписта #sharp_view

Коллекции .NET: взгляд изнутри Как устроены стандартные коллекции в .NET и почему понимание их внутренней логики помогает пис
Коллекции .NET: взгляд изнутри Как устроены стандартные коллекции в .NET и почему понимание их внутренней логики помогает писать более производительный код? На открытом вебинаре курса OTUS «C# Developer. Advanced» Антон Герасименко покажет, что происходит «под капотом» List, Dictionary и других структур данных. 🗓 4 декабря, 20:00 Коллекции .NET: взгляд изнутри: — разберём устройство стандартных коллекций — заглянем в исходный код и объясним, почему они работают именно так — обсудим, когда стоит реализовать собственную структуру данных Вебинар будет полезен разработчикам уровня Junior и выше, которые хотят глубже понимать, как устроены базовые механизмы .NET и как использовать их эффективнее. 👉 Зарегистрируйтесь: https://clc.to/8-oWYg Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

💼 Карьерная «страховка» для IT‑шника Рынок IT сильно изменился за последние годы. После бурного роста начались крупные сокра
💼 Карьерная «страховка» для IT‑шника Рынок IT сильно изменился за последние годы. После бурного роста начались крупные сокращения и оптимизация команд. Сегодня никто не может быть уверен в стабильности работы — даже опытные разработчики сталкиваются с риском внезапного увольнения. Поэтому важно задуматься о своей карьерной страховке — простых шагах и инструментах, которые помогут защитить себя и сохранить финансовую устойчивость в любой ситуации. ➡️ Собрать свою страховку 🔸 ML для старта в Data Science 🔸 Получить консультацию менеджера 🔸 Сайт Академии 🔸 Сайт Proglib 🐸Библиотека шарписта

👨‍💻 Обработка ошибок в .NET minimal API При разработке API важно правильно и понятно передавать клиентам информацию о возникших ошибках. Одним из удобных способов сделать это в .NET minimal API является использование встроенного метода Results.Problem. Он возвращает объект с подробностями ошибки в стандарте ProblemDetails, что упрощает клиентам обработку ответа. Пример:
app.MapGet("/users/{id}", async (string id, IUserRepo repo) =>
{
    if (!Guid.TryParse(id, out var guid))
        return Results.Problem("Invalid id", statusCode: 400);

    var user = await repo.Find(guid);
    return user is null ? Results.NotFound() : Results.Ok(user);
});
В этом коде при неверном формате id возвращается ProblemDetails с кодом 400, если пользователь не найден — 404, иначе 200 с данными. 🐸Библиотека шарписта #sharp_view

🤩 Типизированные вычислительные выражения в F# 10 без скобок В F# 10 упростили синтаксис для аннотирования типов в вычислительных выражениях. Теперь можно добавлять типы в let!, use! и and! без необходимости использовать дополнительные скобки вокруг идентификаторов. ньше для указания типа в вычислительном выражении приходилось писать так:
let! (x: int) = fetchValue()
Сейчас можно написать короче:
let! x: int = fetchValue()
Если вы часто работаете с async, task или другими вычислениями, это изменение вы оцените. 🔹 Алгоритмы и структуры данных 🔹 Получить консультацию менеджера 🔹 Сайт Академии 🔹 Сайт Proglib 🐸Библиотека шарписта #sharp_view

🔥 На рынке сейчас математика — снова король: AI растёт быстрее, чем вузы успевают обновлять программы. Мы же перестраиваем к
🔥 На рынке сейчас математика — снова король: AI растёт быстрее, чем вузы успевают обновлять программы. Мы же перестраиваем курс под индустрию мгновенно. Хочешь наконец разобраться в математике для DS, а не гуглить «что такое градиент» перед собесом? Новый курс «Математика для разработки AI-моделей» — это 8 недель плотной подготовки, свежая программа и только актуальные темы, которые реально нужны в ML. Что в курсе: → линал, производные, градиенты, вероятности, статистика; → практика на Python и 3 большие ДЗ; → живые вебинары + разбор ваших вопросов; → финальный мини-проект, который можно положить в портфолио; → доступ к материалам и чат с экспертами. Для старта нужны только школьная математика и базовый Python. 🎁 Бонусы ноября: — скидка 40% до 30 ноября; — «Базовая математика» в подарок при оплате; → бесплатный тест уровня математики. 👉 Записывайся на курс

🤝 Перестаньте ждать, пока вас найдут Обычный сценарий поиска работы в ИТ до сих пор у многих сводится к загрузке резюме на н
🤝 Перестаньте ждать, пока вас найдут Обычный сценарий поиска работы в ИТ до сих пор у многих сводится к загрузке резюме на несколько площадок и ожиданию, пока система кого то заинтересует. При этом автоматические правила, внутренние фильтры и массовая обработка откликов оставляют кандидата без ответа. Альтернатива в том, чтобы не ограничиваться джоббордами и целенаправленно выходить на людей, которые управляют инженерными командами. Общение с CTO, тимлидами и фаундерами превращает поиск работы в прямой профессиональный разговор, а не попытку пройти через набор формальных стадий. ➡️ Действуйте, ищите, откликайтесь 🔸 Практический интенсив «Архитектуры и шаблоны проектирования» 🔸 Получить консультацию менеджера 🔸 Сайт Академии 🔸 Сайт Proglib 🐸 Библиотека шарписта

⭐️ Логирование исключений с помощью фильтров Фильтры исключений позволяют выполнить код при срабатывании catch, но при этом не перехватывать исключение. Пример:
try 
{
    await work();
}
catch (Exception ex) when (Log(ex))
{
    // этот блок не выполняется, так как Log возвращает false
}

static bool Log(Exception ex)
{
    // логируем исключение
    return false;
}
Метод Log вызывается один раз при исключении, логирует его и возвращает false, чтобы исключение продолжило всплывать дальше без перехвата. 🔹 Алгоритмы и структуры данных 🔹 Получить консультацию менеджера 🔹 Сайт Академии 🔹 Сайт Proglib 🐸Библиотека шарписта #sharp_view

🛠 Структурные опциональные параметры в F# 10 В F# 10 появилась возможность использовать структурный тип ValueOption<'T> для опциональных параметров. Это позволяет избежать выделения памяти в куче. Теперь, применяя атрибут [<Struct>], можно указать компилятору использовать ValueOption<'T> — структуру, которая хранится на стеке и не требует дополнительных аллокаций. Раньше:
type X() =
    static member M(?x: string) =
        match x with
        | Some v -> printfn "Some %s" v
        | None -> printfn "None"
Теперь с F# 10:
type X() =
    static member M([<Struct>] ?x: string) =
        match x with
        | ValueSome v -> printfn "ValueSome %s" v
        | ValueNone -> printfn "ValueNone"
Такой код работает быстрее в случаях, когда параметр отсутствует, и уменьшает давление на сборщик. 🔹 Экспресс-курс «Математика для Data Science» 🔹 Получить консультацию менеджера 🔹 Сайт Академии 🔹 Сайт Proglib 🐸Библиотека шарписта #sharp_view

Не кодь — вайбкодь. Бесплатно 🚀 Сбер представил бесплатный агентный режим GigaCode — нового цифровой разработчика, который б
Не кодь — вайбкодь. Бесплатно 🚀 Сбер представил бесплатный агентный режим GigaCode — нового цифровой разработчика, который берет на себя рутину, чтобы вы могли сосредоточиться на крутых задачах! Что умеет GigaCode в агентном режиме? ⏩Сам находит и открывает нужные файлы ⏩Вносит изменения в код, запускает тесты, собирает проекты и оформляет коммиты в Git ⏩Работает в вашей любимой среде: JetBrains IDE, GigaIDE Desktop, а скоро еще и в VS Code Плюс, в GigaCode появилась новая модель автодополнения кода — GigaCode Inline 4.0. Она мгновенно предлагает нужные фрагменты кода для Python, Java, JavaScript и других языков. Подсказки стали еще точнее, а работа с контекстом — еще лучше. 🖱 Хотите ускорить разработку? Обновленный GigaCode уже доступен на GitVerse. Начать вайбкодить — по ссылке

🤨 Как искусственный интеллект помогает писать тесты Создание качественных модульных тестов — важный, но утомительный и затра
🤨 Как искусственный интеллект помогает писать тесты Создание качественных модульных тестов — важный, но утомительный и затратный процесс. GitHub Copilot Testing для .NET упрощает эту задачу, автоматически генерируя, собирая и выполняя тесты прямо в вашем рабочем процессе. Как начать использовать 1. Установите последнюю версию Visual Studio 2026 Insiders и получите лицензию GitHub Copilot 2. Включите функцию GitHub Copilot Testing через настройки (Tools > Options > GitHub > Copilot > Testing 3. Откройте проект или решение на C# и убедитесь, что оно успешно собирается 4. В чате Copilot напишите команду @Test #target, где #target — имя метода, класса, файла, проекта, решения или #changes для git diff 5. Copilot автоматически проанализирует код, создаст проект с тестами (если его нет), сгенерирует, соберёт и выполнит тесты. Результаты отображаются в Test Explorer и в окне чата, где вы увидите статистику по числу тестов, изменениям в покрытии кода и рекомендации по устранению «тестируемых» пробелов. 🔹 Специалист по ИИ 🔹 Получить консультацию менеджера 🔹 Сайт Академии 🔹 Сайт Proglib 🐸 Библиотека шарписта #sharp_view

✏️ Сокращаем код Collection expressions — удобный синтаксис для создания и инициализации коллекций и массивов с помощью квадратных скобок и элементов, разделённых запятыми. Можно использовать spread-элементы (..) для вставки содержимого других коллекций внутрь новой. Пример:
int[] odds = [1, 3, 5, 7];

string[] vowels = ["a", "e", "i", "o", "u"];
string[] consonants = ["b", "c", "d", "f"];
string[] alphabet = [..vowels, ..consonants, "y"];
С помощью выражений коллекций можно легко создавать массивы, списки, Span и другие коллекторные типы. Появились они в C# 12. 🔹 Экспресс-курс «Математика для Data Science» 🔹 Получить консультацию менеджера 🔹 Сайт Академии 🔹 Сайт Proglib 🐸Библиотека шарписта #sharp_view