C# (C Sharp) programming
前往频道在 Telegram
По всем вопросам- @notxxx1 Реестр РКН: https://clck.ru/3Fk3kb #VRHSZ
显示更多📈 Telegram 频道 C# (C Sharp) programming 的分析概览
频道 C# (C Sharp) programming (@csharp_ci) 俄语 语言赛道中的 是活跃参与者。目前社区聚集了 18 129 名订阅者,在 技术与应用 类别中位列第 7 041,并在 俄罗斯 地区排名第 36 302 位。
📊 受众指标与增长动态
自 невідомо 创建以来,项目保持高速增长,吸引了 18 129 名订阅者。
根据 29 八月, 2026 的最新数据,频道保持稳定运转。过去 30 天订阅人数变化为 -78,过去 24 小时变化为 -7,整体触达仍然可观。
- 认证状态: 未认证
- 互动率 (ER): 平均受众互动率为 15.03%。内容发布后 24 小时内通常能获得 7.44% 的反应,占订阅者总量。
- 帖子覆盖: 每篇帖子平均可获得 2 725 次浏览,首日通常累积 1 348 次浏览。
- 互动与反馈: 受众积极参与,单帖平均反应数为 0。
- 主题关注点: 内容集中在 .net, api, логика, архитектура, string 等核心主题上。
📝 描述与内容策略
作者将该频道定位为表达主观观点的平台:
“По всем вопросам- @notxxx1
Реестр РКН: https://clck.ru/3Fk3kb
#VRHSZ”
凭借高频更新(最新数据采集于 30 八月, 2026),频道始终保持新鲜度与高覆盖。分析显示受众积极互动,使其成为 技术与应用 类别中的关键影响点。
18 129
订阅者
-724 小时
-157 天
-7830 天
帖子存档
18 130
⚡️ Microsoft выпустила Visual Studio 2026 - крупнейшее обновление IDE за последние годы.
🔹 300+ новых функций и почти 5000 исправлений ошибок
🔹 Интеграция с GitHub Copilot стала глубже: теперь он помогает в анализе, рефакторинге и генерации кода
🔹 Редизайн интерфейса — 11 новых цветовых тем, улучшенная навигация и читаемость
🔹 Производительность выросла: количество зависаний интерфейса снизилось на 50 %
🔹 Более 4000 расширений от Visual Studio 2022 полностью совместимы с новой версией
Самое время обновиться - новая версия ощутимо быстрее и умнее.
https://visualstudio.microsoft.com/downloads/
18 130
+2
🖥 Если вы создаёте новое приложение на .NET и используете минимальные API, вот понятный и согласованный пост без разделителей.
Минимальные API проще, чем контроллеры: меньше шаблонного кода, быстрее старт, короче путь от запроса к логике. Они органично ложатся на архитектуру вертикальных срезов, где каждая фича - самостоятельный модуль с собственным API, моделями и обработчиком.
Каждый endpoint можно оформлять как отдельную фичу. В одном файле находятся запрос, ответ, обработчик и маршрут — всё компактно и по делу. Такой подход улучшает читаемость и делает зависимости между фичами минимальными.
Пример:
public static class CreateProduct
{
public record Request(string Name, decimal Price);
public record Response(int Id, string Name, decimal Price);
public class Endpoint : IEndpoint
{
public void MapEndpoint(IEndpointRouteBuilder app)
{
app.MapPost("products", Handler).WithTags("Products");
}
public static IResult Handler(Request request, AppDbContext context)
{
var product = new Product { Name = request.Name, Price = request.Price };
context.Products.Add(product);
context.SaveChanges();
return Results.Ok(new Response(product.Id, product.Name, product.Price));
}
}
}
У минимальных API действительно меньше встроенных возможностей, чем у контроллеров, но это решается через middleware, фильтры или библиотеки вроде FastEndpoints, где одну фичу можно определить в одном файле с аккуратным разделением логики.
Подход помогает масштабировать код без усложнения архитектуры: новые фичи добавляются как новые независимые вертикальные срезы, без изменения существующих модулей.
https://milanjovanovic.tech/blog/vertical-slice-architecture-is-easier-than-you-think18 130
Основы обобщений (Generics) в C#: классы, интерфейсы, методы и делегаты
Generics — это фундамент гибкого и переиспользуемого кода в C#. На открытом вебинаре курса OTUS C# Developer. Professional Павел Нилов объяснит, как работают обобщения, зачем они нужны и как с их помощью писать код, который не боится масштабирования.
📌 18 ноября, 20:00
Основы обобщений (Generics) в C#
— классы, интерфейсы, методы и делегаты
— ковариантность, контравариантность и ограничения
— эффективное использование List и Dictionary
— примеры и разбор типичных ошибок
Вебинар бесплатный и подойдёт начинающим .NET-разработчикам, студентам и джунам, готовящимся к собеседованиям, а также тем, кто хочет систематизировать знания по Generics.
👉 Регистрируйтесь: https://otus.pw/QTK7/?erid=2W5zFHAbjFE
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
18 130
𝟵𝟬% API на самом деле НЕ RESTful — и почти всегда по одной причине 👇
По модели зрелости Ричардсона REST имеет 4 уровня:
• 0 — просто один эндпоинт, всё через XML/JSON
• 1 — ресурсы с разными URI
• 2 — корректное использование HTTP-методов
• 3 — HATEOAS, когда сам API подсказывает клиенту, какие действия доступны дальше
Проблема в том, что большинство сервисов останавливаются на уровне 2 — то есть формально используют GET/POST/PUT/DELETE, но не дают клиенту навигации через гипермедиа.
Почему почти никто не добавляет HATEOAS:
1. Нужно больше кода
2. Вырастают ответы
3. Нет жёсткого стандарта, как это оформлять
4. Клиент усложняется
5. Кажется оверинжинирингом
Но что происходит без него?
1. Клиент и сервер становятся жёстко связаны
2. Бизнес-логика дублируется на клиенте
3. API плохо открывается и не подсказывает, как по нему ходить
HATEOAS — не обязательный компонент, но именно он делает API настоящим REST, а не просто HTTP поверх JSON.
Здесь разбор, когда это действительно важно и когда нет.
18 130
Хочешь разобраться с event-driven архитектурой?
Начни с самого простого - событийных уведомлений. В DDD это делается через domain events.
Как это работает:
- В доменной модели есть агрегаты - они отвечают за целостность внутри своих границ.
- Если нужно инициировать действие вне агрегата, он не вызывает его напрямую, а публикует domain event.
- Другие агрегаты подписываются на эти события и реагируют, когда нужно.
Получается слабое связывание: один объект просто сообщает «что произошло», а не «что делать дальше».
Агрегат поднял событие — другие обработали. Чисто, понятно, без прямых зависимостей.
Так строятся системы, которые легко расширять и поддерживать, не превращая код в паутину вызовов.
Event-driven начинается не с Kafka и очередей, а с простого: правильно разделять границы и общаться через события.
Подробнее
18 130
Невидимые утечки: как находить и обезвреживать сложнейшие утечки памяти в .NET
Даже опытные разработчики не всегда замечают, как события, таймеры и делегаты создают невидимые утечки, удерживая объекты в памяти. На открытом вебинаре курса OTUS C# Developer. Professional Елена Сычева покажет, как такие ошибки возникают и как их находить.
📌 12 ноября, 20:00
Невидимые утечки в .NET
— диагностика скрытых утечек памяти
— разбор работы GC и дампов памяти
— анализ событий, таймеров и делегатов
— реальные примеры из продакшн-кейсов
Вебинар бесплатный и будет полезен .NET-разработчикам уровня Middle и выше, работающим с долгоживущими приложениями и микросервисами.
👉 Регистрируйтесь: https://otus.pw/SkLR/?erid=2W5zFJw5xMW
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
18 130
+2
🔥 EF Core 10 принес нормальные JOIN'ы в LINQ
Больше не нужно вспоминать, как извращаться с GroupJoin + DefaultIfEmpty, чтобы сделать обычный LEFT JOIN.
Теперь есть прямые методы:
✅ LeftJoin
✅ RightJoin
И они делают ровно то, что ты пишешь:
«Оставь все из левой таблицы и подтяни правые записи, если есть совпадения».
Плюсы
- Читаемость выше
- Код короче и очевиднее
- Транслируется в тот же SQL, что и раньше, но без боли
Примерно так LINQ наконец становится ближе к привычному SQL-пониманию разработчика: пишешь join — получаешь join, без магии и обходных путей.
Подробнее про LeftJoin и RightJoin в EF Core 10
#dotnet #efcore #csharp #linq #backend #devtools
18 130
+2
🔥 EF Core 10 принес нормальные JOIN'ы в LINQ
Больше не нужно вспоминать, как извращаться с GroupJoin + DefaultIfEmpty, чтобы сделать обычный LEFT JOIN.
Теперь есть прямые методы:
✅ LeftJoin
✅ RightJoin
И они делают ровно то, что ты пишешь:
«Оставь все из левой таблицы и подтяни правые записи, если есть совпадения».
Плюсы
- Читаемость выше
- Код короче и очевиднее
- Транслируется в тот же SQL, что и раньше, но без боли
Примерно так LINQ наконец становится ближе к привычному SQL-пониманию разработчика: пишешь join — получаешь join, без магии и обходных путей.
Подробнее про LeftJoin и RightJoin в EF Core 10
#dotnet #efcore #csharp #linq #backend #devtools
18 130
На Stepik вышел курс - Linux: полный апгрейд твоих скиллов
Хочешь реально понимать, что происходит под капотом твоей системы, а не просто кликать по GUI?
Без глубокого знания базы ты не инженер - ты просто пользователь.
🔹 В курсе ты:
- Освоишь bash, grep, sed, awk - инструменты, которыми живут админы.
- Разберёшь права, процессы, сеть, файловую систему и научишься чинить всё, что падает.
- Настроишь SSH, firewall, systemd, crontab, демоны и автозапуск.
- Научишься анализировать логи, следить за нагрузкой, и не паниковать при 100% CPU.
💡 Формат: пошаговое объяснение базы и разбор важных практик по работе с Linux.
🎯 После курса ты: будешь чувствовать Linux как родную среду и забудешь, что такое “permission denied”.
🚀 Сейчас действуют скидка целых - 30%, не упусти реальный шанс прокачаться.
👉 Пройти курс на Stepik
18 130
⚡️ Что выведет код?
using System;
namespace MyApplication {
class Program {
static void Main(string[] args) {
int a = 10, b = 20;
Console.WriteLine("{0}+{1}", a, b);
}
}
}
- Объясните, почему вывод именно такой.
- Измените одну строку так, чтобы программа печатала сумму чисел в виде 10+20=30.
1) Ответ
Программа выведет:
10+20
2) Почему так
- В Console.WriteLine("{0}+{1}", a, b); используется композитное форматирование (аналог string.Format).
- Подстановки {0} и {1} заменяются на значения соответствующих аргументов — a и b.
- Знак + находится внутри строкового литерала, значит это просто символ, а не операция сложения.
- Поэтому получается «подставь a, затем символ +, затем b» → 10+20.
Частая ошибка: думать, что + выполнит сложение. Нет — внутри кавычек это обычный текст.18 130
Как вы организуете свои Vertical Slices?
Есть два подхода, и оба встречаются в живых проектах:
1) Один файл → статический класс + вложенные типы
- Request / Response внутри
- Handler внутри
- Validator внутри
- Endpoint там же
- максимум локальности и контекста
- удобно читать как "одна фича – один файл"
2) Каждый тип в отдельном файле
- Request.cs
- Response.cs
- Handler.cs
- Validator.cs
- Endpoint.cs
- привычно для больших команд
- проще искать по имени файла
- лучше работает при очень длинных обработчиках
По сути:
- маленькие обработчики → один файл с вложенными типами
- большие и долгоживущие фичи → отдельные файлы + папка
Главный принцип Vertical Slice — держать фичу целостной.
Не заставлять прыгать по всему solution ради одной команды.
А вы как делаете: всё в одном файле или дробите?```
18 130
Не пропустите! 06 ноября в 20:00 пройдет бесплатный урок курса “Unity Game Developer. Professional” по теме “ECS: Секретное оружие топовых разработчиков.” Запись: https://otus.pw/c4Lq/
Устал от медленных и запутанных игровых механик? ECS изменит твое представление о разработке игр!
Что вы узнаете:
- Основы ECS — разберем ключевые принципы работы на примере LeoEcsLite
- Сравнение подходов — проведем детальный анализ ООП vs ECS
- Преимущества ECS — узнаем, почему крупные студии выбирают именно эту архитектуру
- Практические кейсы — рассмотрим реальные примеры оптимизации геймплея
- Производительность — разберем, как ECS помогает достичь максимальной эффективности
Записывайтесь на вебинар и получите спец. предложение на обучение:
https://otus.pw/c4Lq/
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ", ИНН: 9705100963
18 130
⚡️ Хорошая архитектура ничего не стоит, если её легко сломать.
Есть три способа заставить команду придерживаться дизайна:
- компилятор и статический анализ
- архитектурные тесты
- код-ревью
Компилятор - лучший друг. Он мгновенно ловит ошибки и не даст собрать проект, если что-то нарушено.
Но как использовать это для защиты архитектуры?
В .NET можно скрывать типы через
internal и разделять код на проекты, чтобы изолировать модули.
Проблема - при масштабировании проектов становится слишком много.
Статический анализ полезен, но писать свои Roslyn-правила - удовольствие на любителя.
Поэтому я делаю ставку на архитектурные тесты.
Они позволяют задать правила в виде автотестов и контролировать зависимости между модулями, особенно в модульном монолите: каждый модуль видит только публичный API других модулей.
Ну и код-ревью - финальный фильтр. Кто-то должен глазами подтвердить, что всё ок.
Что выбрать?
Я больше всего полагаюсь на компилятор и архитектурные тесты - это помогает ловить проблемы максимально рано.
Хотите больше? Посмотрите пример использования архитектурных тестов и подход shift left.18 130
Last Call: не пропусти Wink AI Challenge — первый в России ИИ-хакатон в киноиндустрии. Создай своё решение, которое ускорит производство фильмов и сериалов. Призовой фонд — 1 125 000 рублей.
Регистрация открыта до 4 ноября: https://cnrlink.com/winkaichallengecsharp
Приглашаем ML-инженеров, backend- и frontend-разработчиков, DevOps, MLOps и мультимедиа-инженеров.
Главные причины присоединиться:
🔸 Работа с настоящими сценариями и материалами, анализ текстов, извлечение сущностей, генерация структуры съёмок.
🔸 Практика применения NLP, NER и мультимодальных данных в задачах кинопроизводства.
🔸 Разработка ИИ-сервиса, который оценят и будут использовать продюсеры популярных российских фильмов и сериалов.
🔸 Реальный кейс в портфолио, созданный специально для крупнейшего онлайн-кинотеатра.
🔸Финалисты отправятся в Москву — Wink оплатит билеты и проживание.
Успей зарегистрироваться на первый в России хакатон по применению ИИ в кинопроизводстве: https://cnrlink.com/winkaichallengecsharp
18 130
🔐 Что такое RBAC (Role-Based Access Control)
RBAC - это модель контроля доступа на основе ролей. Она помогает управлять авторизацией в приложениях просто и масштабируемо.
Как работает RBAC:
- Ролям назначаются определённые разрешения (permissions);
- Пользователям присваиваются роли, и через них - разрешения;
- Разрешения определяют, что пользователь может или не может делать.
📌 Преимущество RBAC в том, что можно централизованно управлять правами доступа.
Но часто роли оказываются слишком «грубыми» — не хватает точности для отдельных политик безопасности.
Здесь на помощь приходят permissions — разрешения на конкретные действия.
Если нужно дать доступ другой роли, достаточно просто добавить разрешение к роли, не переписывая всю систему авторизации.
💡 Простая концепция, но невероятно мощная в управлении доступом.
Подробнее
18 130
Интенсив по Unity: создай и монетизируй свою инди-игру
Присоединяйся к 2-месячному интенсиву по Unity, во время которого ты с нуля создашь культовую игру «2048», научишься кастомизировать проект с помощью нейросети и работать с алгоритмами.
Кому подойдёт интенсив:
🡶 Планируешь усилить портфолио крутым проектом, чтобы попасть на стажировку в геймдев студии;
🡶 Думаешь о монетизации собственных знаний уже сейчас
🡶 Хочешь научиться работать с нейросетями, чтобы добавить игре свой стиль;
Только на этом потоке онлайн-лекции проходят лично с создателями интенсива — опытными геймдев-разработчиками.
▪️старт 3 ноября
▪️длительность: 2 месяца
▪️стоимость за весь курс 35 000 руб.
Переходи на сайт и оставляй заявку, чтобы всего через 2 месяца начать зарабатывать на собственной инди-игре
erid: 2W5zFHXTbda18 130
Ubuntu Unity остался без разработчиков и новых релизов
Проект Ubuntu Unity не может сформировать новый релиз 25.10 из-за отсутствия разработчиков, способных исправить критические проблемы с работой пользовательского окружения Unity, возникающие при использовании пакетной базы Ubuntu 25.10. Пользователям Ubuntu Unity не рекомендуется обновлять свои системы до ветки 25.10 или пытаться установить пакеты с Unity поверх других редакций Ubuntu 25.10, так как это может нарушить работоспособность системы.
https://opennet.ru/64125/
