es
Feedback
C# (C Sharp) programming

C# (C Sharp) programming

Ir al canal en Telegram

По всем вопросам- @notxxx1 Реестр РКН: https://clck.ru/3Fk3kb #VRHSZ

Mostrar más

📈 Análisis del canal de Telegram C# (C Sharp) programming

El canal C# (C Sharp) programming (@csharp_ci) en el segmento lingüístico de Ruso es un actor destacado. Actualmente la comunidad reúne a 18 299 suscriptores, ocupando la posición 7 324 en la categoría Tecnologías y Aplicaciones y el puesto 36 848 en la región Rusia.

📊 Métricas de audiencia y dinámica

Desde su creación el невідомо, el proyecto ha mostrado un crecimiento acelerado, reuniendo a 18 299 suscriptores.

Según los últimos datos del 17 junio, 2026, el canal mantiene una actividad estable. En los últimos 30 días la variación de miembros fue de -4, y en las últimas 24 horas de 3, conservando un alto alcance.

  • Estado de verificación: No verificado
  • Tasa de interacción (ER): El promedio de interacción de la audiencia es 20.04%. Durante las primeras 24 horas tras publicar, el contenido suele obtener 7.25% de reacciones respecto al total de suscriptores.
  • Alcance de las publicaciones: Cada publicación recibe en promedio 3 669 visualizaciones. En el primer día suele acumular 1 328 visualizaciones.
  • Reacciones e interacción: La audiencia responde de forma activa: el promedio de reacciones por publicación es 0.
  • Intereses temáticos: El contenido se centra en temas clave como .net, api, логика, архитектура, string.

📝 Descripción y política de contenido

El autor describe el recurso como un espacio para expresar opiniones subjetivas:
По всем вопросам- @notxxx1 Реестр РКН: https://clck.ru/3Fk3kb #VRHSZ

Gracias a la alta frecuencia de actualizaciones (últimos datos recibidos el 18 junio, 2026), el canal mantiene la vigencia y un amplio alcance. La analítica demuestra que la audiencia interactúa activamente con el contenido, lo que lo convierte en un punto de referencia dentro de la categoría Tecnologías y Aplicaciones.

18 299
Suscriptores
+324 horas
+107 días
-430 días
Archivo de publicaciones
#ПятничныйКвиз #карательныйсишарп
#ПятничныйКвиз #карательныйсишарп

🚀 5 вещей, которые я добавляю в каждый .NET проект Если сделать это сразу - потом не будешь страдать в проде 1️⃣ .editorconf
🚀 5 вещей, которые я добавляю в каждый .NET проект Если сделать это сразу - потом не будешь страдать в проде 1️⃣ .editorconfig / .props Автоматически фиксируют стиль кода → меньше споров, больше консистентности 2️⃣ Статический анализ SonarAnalyzer и аналоги → ловят баги ещё до запуска 3️⃣ Наблюдаемость (Observability) Serilog + OpenTelemetry → логи + трейсы = понимаешь, что реально происходит 4️⃣ Docker Compose / .NET Aspire Поднимаешь всё окружение одной командой → БД, кеши, очереди 5️⃣ CI/CD с первого дня Авто-сборка и тесты → не даёшь сломанному коду попасть в main Настроил один раз → экономишь десятки часов потом 🔥 Самое сложное для большинства - Observability но именно оно спасает в проде

Как за 2 года стать разработчиком, за которого конкурируют компании? ⚡️ 8 апреля ИТМО в партнёрстве с Яндекс Практикумом пров
Как за 2 года стать разработчиком, за которого конкурируют компании? ⚡️ 8 апреля ИТМО в партнёрстве с Яндекс Практикумом проведут День открытых дверей онлайн-магистратуры «Фронтенд- и бэкенд-разработка». Поговорим про фронтенд и бэкенд, разницу между ними и уровень знаний на старте. Обсудим, какие навыки нужны для поступления, как магистратура помогает быстрее выйти на рынок — и быть на нём конкурентоспособным. Отдельно разберём сценарии для тех, кто уже работает в IT: как сменить стек, углубиться в текущий или перейти в новые направления, включая работу с ИИ.
На встрече обсудим: — какой трек выбрать и как выстроить карьеру в разработке — какую роль играет ИИ в программировании — как устроена программа и чему вы научитесь — как проходит обучение и как его совмещать с работой — как поступить: вступительные испытания и ключевые даты
Подключайтесь онлайн 8 апреля в 19:00 мск. → Зарегистрироваться на ДОД

🚀 Почему этот EF Core код тормозит? Технически - всё ок. По производительности не очень. Вот типичная ошибка: ❌ Загружаешь в
🚀 Почему этот EF Core код тормозит? Технически - всё ок. По производительности не очень. Вот типичная ошибка: ❌ Загружаешь всю сущность (все колонки) ❌ Потом фильтруешь и мапишь уже в памяти Что происходит: - лишние данные тянутся из БД - растёт нагрузка на сеть - увеличивается потребление памяти - замедляется приложение ✅ Как правильно: Используй проекцию через `.Select()` прямо в запросе: - берёшь только нужные поля - меньше данных из БД - быстрее запрос - меньше нагрузка на систему 📌 Правило простое: Не тащи всё - бери только то, что используешь Именно такие мелочи чаще всего дают x2–x10 к скорости.

☁️ Как на самом деле устроены инфраструктурные сервисы Yandex Cloud? Разработчики Yandex Cloud и Yandex Infrastructure расска
☁️ Как на самом деле устроены инфраструктурные сервисы Yandex Cloud? Разработчики Yandex Cloud и Yandex Infrastructure расскажут об этом 16 апреля на встрече для разработчиков, архитекторов и сетевых инженеров. В программе вас ждут реальные технические варианты реализации и опыт нетривиальных решений разработчиков платформы: — Инфраструктура как код для управления оповещениями: и никаких проблем — Развёртывание в ритме танго: как мы заменили оркестрацию процесса установки «хореографией» — Как мы оптимизируем вывод больших языковых моделей: кэширование, время отклика и ресурсы графических ускорителей — Как мы строили собственный сервис доставки контента и через что нам пришлось пройти? — Как мы работаем с уязвимостями на примере современных атак — Секретный доклад (онлайн трансляция не предусмотрена) Участники смогут обсудить самые “горячие” вопросы, технические варианты реализации и ошибки с разработчиками сервисов Yandex Cloud и другими участниками. Когда: 16 апреля офлайн в Москве и онлайн. Помимо экспертных докладов, офлайн участников ждут развлекательная программа, а тех, кто онлайн: инженерное соревнование в прямом эфире. Регистрируйтесь, чтобы послушать реальные истории от разработчиков, обменяться опытом и узнать, что скрыто под «капотом» инфраструктурных сервисов, а также какие планы у команды на будущее.

🚀 Динамические Claims в ASP.NET Core Хотите добавлять права пользователю прямо во время выполнения приложения? В ASP.NET Cor
🚀 Динамические Claims в ASP.NET Core Хотите добавлять права пользователю прямо во время выполнения приложения? В ASP.NET Core это можно сделать через Claims Transformation. Что это даёт: - можно подтягивать данные из базы или внешнего сервиса - добавлять их в HttpContext.User - строить гибкие политики авторизации То есть права пользователя можно расширять динамически, без изменения токена или повторной аутентификации. Пример из поста: Во время трансформации claims добавляется новый claim: CardType = "platinum" После этого можно создать policy: - пользователь должен быть аутентифицирован - у него должен быть claim CardType = platinum И использовать её в авторизации. Это особенно полезно для: - RBAC (role-based access control) - сложных систем прав - динамических разрешений из БД - feature-based доступа Например: - premium пользователь - платиновая карта - доступ к закрытому API - платные функции Claims Transformation позволяет подмешивать эти права на лету. Полная статья: https://milanjovanovic.tech/blog/master-claims-transformation-for-flexible-aspnetcore-authorization

👩‍💻 Открытый урок «Производительность кода на примере алгоритмов сортировки» 🗓 21 апреля в 20:00 МСК 🆓 На этом открытом у
👩‍💻 Открытый урок «Производительность кода на примере алгоритмов сортировки» 🗓 21 апреля в 20:00 МСК 🆓 На этом открытом уроке мы разберёмся, как скорость работы программы зависит от выбранного способа решения задачи - на понятном примере сортировки данных 🔍 Что вы узнаете на вебинаре: • Почему существует несколько способов выполнить одну и ту же задачу • Как разные подходы к сортировке данных влияют на скорость работы программы • Почему одни решения подходят для маленьких объёмов данных, а другие — для больших • Что происходит с программой, когда данных становится в 10, 100 или 1000 раз больше 🎯 Кому будет полезно: • Тем, кто только присматривается к профессии разработчика на C# • Новичкам, которые начали изучать C# и хотят понимать, как писать «быстрый» код • Всем, кто хочет разобраться, от чего зависит скорость работы приложений 🔗 Ссылка на регистрацию: https://otus.pw/GAHM/?erid=2W5zFGdMqeZ Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

Что выведет на экран этот код?
Anonymous voting

#ПятничныйКвиз
#ПятничныйКвиз

FluentValidation делает валидацию входных данных очень простой. Знаете ли вы, что валидаторы поддерживают DI (Dependency Inje
FluentValidation делает валидацию входных данных очень простой. Знаете ли вы, что валидаторы поддерживают DI (Dependency Injection)? Можно внедрять объекты настроек, настроенные через DI, и использовать их прямо внутри валидаторов. Посмотрите пример в коде ниже.

👩‍💻 Открытый урок «Как работают структуры данных C# "под капотом"» 🗓 13 апреля в 20:00 МСК 🆓 На этом открытом уроке мы пр
👩‍💻 Открытый урок «Как работают структуры данных C# "под капотом"» 🗓 13 апреля в 20:00 МСК 🆓 На этом открытом уроке мы простым и понятным языком разберём структуры данных, что происходит внутри программы, когда она хранит и обрабатывает данные. Что рассмотрим на вебинаре: ✔ Внутреннее устройство ключевых коллекций ✔ Принципы работы и алгоритмическую сложность операций ✔ Особенности реализации, влияющие на производительность Кому будет полезно: ✔ Начинающим разработчикам - чтобы углубить понимание платформы .NET и писать эффективный, надёжный код. ✔ Тем, кто готовится к техническим собеседованиям (вопросы о внутреннем устройстве коллекций и сложности операций - классика интервью). ✔ Всем, кто хочет осознанно выбирать структуры данных - избегать типичных ошибок, понимать компромиссы и узкие места. 🔗 Ссылка на регистрацию: https://otus.pw/HE4y/?erid=2W5zFJNNR7F Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

Разработчик показал, как использовать Ollama для извлечения данных из чеков прямо в .NET. Самая интересная часть оказалась не
Разработчик показал, как использовать Ollama для извлечения данных из чеков прямо в .NET. Самая интересная часть оказалась не в том, чтобы отправить изображение модели. Гораздо сложнее было получить результат, который можно реально использовать в коде. Обычный текстовый ответ мало помогает, когда нужны структурированные данные: - позиции из чека - количество - цены - итоговая сумма Поэтому вместо обычного ответа модель начали просить возвращать JSON. После этого результат можно сразу маппить в C#-объекты и использовать в приложении. И именно здесь начинается самое интересное. Большая часть работы — не код, а правильный prompt. Если модель: - округляла цену - пропускала цифру - или «придумывала» позицию приходилось уточнять инструкции. Это и есть главный сдвиг в таком подходе: раньше разработчик писал парсеры и regex, а теперь — настраивает поведение модели через prompt. Когда модель начинает возвращать структурированные данные, всё остальное снова превращается в обычный код приложения. Разбор полной реализации: https://milanjovanovic.tech/blog/how-to-extract-structured-data-from-images-using-ollama-in-dotnet #ai #ollama #dotnet #csharp

Vector Search - как это работает (и почему это важно для .NET разработчиков) Vector search ищет смысловую близость, а не прос
Vector Search - как это работает (и почему это важно для .NET разработчиков) Vector search ищет смысловую близость, а не просто точные совпадения. Он сравнивает данные - текст, изображения или аудио - используя векторные эмбеддинги в многомерном пространстве. То есть система ищет не одинаковые слова, а похожие по смыслу объекты. Почему это важно? Vector search лежит в основе многих AI-функций: - семантический поиск - рекомендательные системы - интеграции с LLM - умные ассистенты внутри приложений Добавив векторный поиск в приложение, разработчик может создавать намного более умные продукты, которые понимают смысл запросов пользователя. Это дает реальную бизнес-ценность - от поиска по документам до персонализированных рекомендаций. 📍 Полный пример реализации

🔵Ozon Tech приглашает на Community .NET Meetup 24 марта (вторник) в Москве (Лофт Casa Picassa) и онлайн. В программе три док
🔵Ozon Tech приглашает на Community .NET Meetup 24 марта (вторник) в Москве (Лофт Casa Picassa) и онлайн. В программе три доклада, много кейсов и камерная дискуссия без записи. В фокусе primitive obsession, нагрузка с Load Shedding и Escape Analysis в JIT. За подробной программой и регистрацией — сюда ⬅️

Есть более эффективный способ делать массовые обновления в EF Core. Начиная с EF Core 7 появился метод ExecuteUpdate, который
Есть более эффективный способ делать массовые обновления в EF Core. Начиная с EF Core 7 появился метод ExecuteUpdate, который позволяет обновлять записи напрямую на стороне базы данных. Вместо того чтобы загружать объекты в память, изменять их в цикле и затем вызывать SaveChanges, можно выполнить обновление одним SQL-запросом. Это значительно быстрее и снижает нагрузку на приложение, особенно при работе с большими таблицами. Однако есть важное условие: нужно заранее знать, какое поле вы обновляете и какое значение ему присваиваете, поскольку операция формируется как прямой SQL-update. Такой подход отлично подходит для массовых операций и оптимизации производительности в EF Core.

Что выведет на экран этот код?
Anonymous voting

#ПятничныйКвиз
#ПятничныйКвиз

C# records - идеальный способ создавать value objects. Почему это важно? В DDD value object должен: - быть неизменяемым (immu
C# records - идеальный способ создавать value objects. Почему это важно? В DDD value object должен: - быть неизменяемым (immutable) - сравниваться по значениям, а не по ссылке Именно это records дают из коробки. Что получаем: - неизменяемость через init - структурное сравнение (Value Equality) - короткий и чистый синтаксис - deconstruction - pattern matching Пример:

public class Booking
{
    public Address Address { get; init; }
    public DateRange Period { get; init; }
}

public record Address(
    string Street,
    string City,
    string State,
    string Country,
    string ZipCode);
Теперь два Address считаются равными, если совпадают их поля - без переопределения Equals и GetHashCode. Раньше для value object приходилось писать: • конструкторы • Equals • GetHashCode • оператор == Теперь - одна строка. Records делают value objects: • безопаснее • проще • ближе к функциональному стилю Если используете DDD в .NET - records должны быть стандартом для value objects.

Как меняется роль разработчика в 2026 году? AI стремительно меняет то, как создаются продукты и пишется код. Всё чаще обсужда
Как меняется роль разработчика в 2026 году? AI стремительно меняет то, как создаются продукты и пишется код. Всё чаще обсуждают не только новые инструменты, но и более фундаментальный вопрос: какой будет роль разработчика в ближайшие годы. 24 марта Mindbox проводит открытые дебаты, где эксперты по AI из SberDevices и Itsy обсудят, куда движутся технологии и как это влияет на работу инженеров. Что будет на встрече: — разговор о том, как на AI смотрят с двух сторон: со стороны бизнеса и со стороны разработки — возможность задать свои вопросы и обсудить их прямо во время дебатов — реальные идеи и практики, которые уже используют команды Если вам интересно, как меняется индустрия и какие навыки будут важны дальше — подключайтесь и приносите свои вопросы. Канал Сергея Маркова Канал Никиты Архипова 📅 24 марта ⏰ 19:00–20:30 мск 📍 Онлайн, бесплатно 👉 Зарегистрироваться Реклама. ООО «Майндбокс», ИНН: 7713688880, erid: 2W5zFGn2zp1

В .NET 8 появился простой способ сделать HttpClient устойчивым к сбоям — буквально одной строкой. Microsoft добавила библиоте
В .NET 8 появился простой способ сделать HttpClient устойчивым к сбоям — буквально одной строкой. Microsoft добавила библиотеку Microsoft.Extensions.Http.Resilience, в которой уже есть готовые pipeline’ы для обработки ошибок при HTTP-запросах. Что это даёт из коробки: - Retry при временных сбоях - Timeout - Circuit Breaker - Rate limiting - Защиту от перегрузки Подключается максимально просто:

services.AddHttpClient<GitHubService>(static httpClient =>
{
    httpClient.BaseAddress = new Uri("https://api.github.com/");
})
.AddStandardResilienceHandler();