es
Feedback

¡No caigas en manos de tramposos! Telemetrio encuentra y marca estos canales 👉 Si quieres ver la etiqueta, suscríbete

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 066 suscriptores, ocupando la posición 7 202 en la categoría Tecnologías y Aplicaciones y el puesto 36 422 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 066 suscriptores.

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

  • Estado de verificación: No verificado
  • Tasa de interacción (ER): El promedio de interacción de la audiencia es 19.39%. Durante las primeras 24 horas tras publicar, el contenido suele obtener 8.27% de reacciones respecto al total de suscriptores.
  • Alcance de las publicaciones: Cada publicación recibe en promedio 3 504 visualizaciones. En el primer día suele acumular 1 494 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 26 octubre, 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 066
Suscriptores
-424 horas
-97 días
-2830 días
Atraer Suscriptores
oct '26
octubre '26
+124
en 37 canales
septiembre '26
+117
en 31 canales
Get PRO
agosto '26
+112
en 4 canales
Get PRO
julio '26
+85
en 3 canales
Get PRO
junio '26
+147
en 3 canales
Get PRO
mayo '26
+131
en 2 canales
Get PRO
abril '26
+76
en 1 canales
Get PRO
marzo '26
+96
en 23 canales
Get PRO
febrero '26
+112
en 45 canales
Get PRO
enero '26
+398
en 132 canales
Get PRO
diciembre '25
+117
en 5 canales
Get PRO
noviembre '25
+318
en 44 canales
Get PRO
octubre '25
+84
en 14 canales
Get PRO
septiembre '25
+162
en 37 canales
Get PRO
agosto '25
+223
en 9 canales
Get PRO
julio '25
+418
en 77 canales
Get PRO
junio '25
+293
en 71 canales
Get PRO
mayo '25
+238
en 1 canales
Get PRO
abril '25
+191
en 28 canales
Get PRO
marzo '25
+185
en 2 canales
Get PRO
febrero '25
+210
en 42 canales
Get PRO
enero '25
+200
en 46 canales
Get PRO
diciembre '24
+416
en 56 canales
Get PRO
noviembre '24
+1 096
en 187 canales
Get PRO
octubre '24
+1 800
en 73 canales
Get PRO
septiembre '24
+635
en 199 canales
Get PRO
agosto '24
+662
en 44 canales
Get PRO
julio '24
+665
en 53 canales
Get PRO
junio '24
+1 168
en 60 canales
Get PRO
mayo '24
+565
en 39 canales
Get PRO
abril '24
+569
en 45 canales
Get PRO
marzo '24
+709
en 21 canales
Get PRO
febrero '24
+1 055
en 2 canales
Get PRO
enero '24
+1 376
en 46 canales
Get PRO
diciembre '23
+608
en 44 canales
Get PRO
noviembre '23
+1 091
en 30 canales
Get PRO
octubre '23
+332
en 19 canales
Get PRO
septiembre '23
+352
en 0 canales
Get PRO
agosto '23
+1 949
en 0 canales
Get PRO
julio '23
+507
en 0 canales
Get PRO
junio '23
+1 238
en 0 canales
Get PRO
mayo '23
+1 891
en 0 canales
Get PRO
abril '23
+3 025
en 0 canales
Get PRO
marzo '23
+1 858
en 0 canales
Get PRO
febrero '23
+85
en 0 canales
Get PRO
enero '23
+113
en 0 canales
Get PRO
diciembre '22
+171
en 0 canales
Get PRO
noviembre '22
+226
en 0 canales
Get PRO
octubre '22
+197
en 0 canales
Get PRO
septiembre '22
+170
en 0 canales
Get PRO
agosto '22
+756
en 0 canales
Get PRO
julio '22
+82
en 0 canales
Get PRO
junio '22
+152
en 0 canales
Get PRO
mayo '22
+344
en 0 canales
Get PRO
abril '22
+256
en 0 canales
Get PRO
marzo '22
+53
en 0 canales
Get PRO
febrero '22
+45
en 0 canales
Get PRO
enero '22
+97
en 0 canales
Get PRO
diciembre '21
+45
en 0 canales
Get PRO
noviembre '21
+1 110
en 0 canales
Fecha
Crecimiento de Suscriptores
Menciones
Canales
26 octubre+1
25 octubre+2
24 octubre+6
23 octubre+3
22 octubre+1
21 octubre+1
20 octubre+4
19 octubre+4
18 octubre+9
17 octubre+7
16 octubre+7
15 octubre+5
14 octubre+3
13 octubre+9
12 octubre+4
11 octubre+8
10 octubre+2
09 octubre+5
08 octubre+5
07 octubre+7
06 octubre+11
05 octubre+9
04 octubre+8
03 octubre+2
02 octubre+1
01 octubre0
Publicaciones del Canal
«Ускорь этот C#-код» — полезнее просить ИИ вместе с инструкцией, как измерять результат. BlazingFastDotnet — сборник приёмов
«Ускорь этот C#-код» — полезнее просить ИИ вместе с инструкцией, как измерять результат. BlazingFastDotnet — сборник приёмов оптимизации .NET 10 и 11, упакованный в SKILL.md для ИИ-агентов. Его можно читать и как обычный технический справочник. Внутри: - Поиск узких мест: dotnet-counters, dotnet-trace, Linux perf и анализ машинного кода JIT. - Память и многопоточность: аллокации, GC, конкуренция за блокировки и false sharing. - Настройка выполнения: ThreadPool, сокеты, JIT и параметры NativeAOT. - Оптимизация C#: SIMD, работа со строками и ASP.NET Core. Автор предлагает подключать документ по необходимости, когда появилась конкретная задача ускорения. Порядок работы простой: замерить исходную производительность → найти причину → менять по одному параметру → сохранять только измеримый выигрыш. Часть рекомендаций рассчитана прежде всего на бенчмарки. Настройки могут обменивать память на скорость или увеличивать нагрузку на CPU, поэтому переносить их в продакшен стоит после проверки на своей нагрузке. https://github.com/EgorBo/BlazingFastDotnet

2
🔐 «Не одобряй собственные расходы» — такое правило нужно проверять на сервере Тайсир Джуде показывает, как защитить MCP-серв
🔐 «Не одобряй собственные расходы» — такое правило нужно проверять на сервере Тайсир Джуде показывает, как защитить MCP-сервер на ASP.NET Core через Microsoft Entra ID. На примере приложения для учёта расходов автор разбирает: • Регистрацию сервера и клиента в Entra ID. • Вход пользователя и проверку JWT-токенов. • Разницу между scope - разрешением приложению действовать от имени пользователя — и ролью, позволяющей одобрять расходы. • Ограничение доступа к отдельным MCP-инструментам и фильтрацию списка доступных tools. Самый показательный момент: пользователь с ролью согласующего может одобрить чужой отчёт, но свой сервер отклонит. Личность определяется по токену, а бизнес-правило проверяется в коде. Модель выбирает, какой инструмент вызвать. Сервер решает, разрешено ли выполнить действие. 📖 https://bitoftech.net/2026/10/13/securing-mcp-server-microsoft-entra-id/ #aspnetcore #dotnet #mcp
2 639
3
⌨️ Магические слова async/await Приглашаем на открытый урок. 🗓 29 ноября в 20:00 МСК 🆓 Бесплатно. Урок в рамках старта курс
⌨️ Магические слова async/await Приглашаем на открытый урок. 🗓 29 ноября в 20:00 МСК 🆓 Бесплатно. Урок в рамках старта курса «C#-разработчик. Продвинутый уровень». Разберем, как браузер общается с сервером, и создадим работающий HTTP-сервис без Spring и сторонних библиотек. О чем поговорим: ✔️ Как связаны понятия асинхронности и многопоточности ✔️ Синтаксис async/await-конструкций ✔️ Во что компилируется конструкция async/await ✔️ Работа с исключениями при ожидании 🔗 Ссылка на регистрацию: https://otus.pw/DCX1/?erid=2W5zFJeppAM Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
1 431
4
🧩 C# с подвохом: одна переменная — сколько запросов к БД? В базе есть просроченные заказы. db.Orders — это DbSet в EF
🧩 C# с подвохом: одна переменная — сколько запросов к БД? В базе есть просроченные заказы. db.Orders — это DbSet<Order> в EF Core, а NotifyAsync к базе не обращается. IEnumerable<Order> late = db.Orders .Where(o => o.DueDate < today); if (late.Any()) { logger.LogWarning( "{Count} late orders", late.Count() ); foreach (var order in late) { await notifier.NotifyAsync(order); } } Сколько раз код обратится к базе и где будет выполняться подсчёт — в SQL или в памяти приложения? Обратите внимание на тип late в первой строке. И изменится ли поведение, если заменить IEnumerable<Order> на var? 👇 Пишите ответ с объяснением.
2 600
5
⚡ Где тормозит .NET-приложение? SharpLsp покажет прямо в VS Code В SharpLsp есть встроенный профилировщик CPU и памяти для C#
⚡ Где тормозит .NET-приложение? SharpLsp покажет прямо в VS Code В SharpLsp есть встроенный профилировщик CPU и памяти для C# и F#. Подключаешься к уже работающему процессу и смотришь, на что приложение тратит ресурсы. Перезапускать и пересобирать его не нужно. После сбора CPU-профиля расширение подсвечивает горячие строки кода, строит flame graph и показывает функции, которые занимают больше всего процессорного времени. Для памяти доступны отслеживание кучи, сравнение снимков и граф ссылок, помогающий понять, что удерживает объекты в памяти. Подозреваемые на утечки отображаются по мере работы приложения. Отдельно устанавливать `dotnet-trace` не требуется. Движку профилировщика нужен runtime .NET 8 или новее, а у целевого процесса должна быть включена диагностика. Проект открытый, под лицензией MIT, работает на Windows, macOS и Linux. https://sharplsp.dev/blog/dotnet-profiler-vs-code-csharp-fsharp/
2 764
6
🔥 Хочешь быстрее расти в IT? Хватит учиться в одиночку Окружение решает больше, чем кажется. Собрал папки и каналы, где можн
🔥 Хочешь быстрее расти в IT? Хватит учиться в одиночку Окружение решает больше, чем кажется. Собрал папки и каналы, где можно быстрее влиться в нужное направление, следить за трендами и не вариться в своём пузыре. AI: t.me/ai_machinelearning_big_data Python: t.me/pythonl Linux: t.me/linuxacademiya Хакинг: t.me/linuxkalii DevOps: t.me/DevOPSitsec Docker: https://t.me/+90Z5TAyfuNU5YmRi Golang: t.me/Golang_google Rust: t.me/rust_code C++: t.me/cpluspluc C#: t.me/csharp_1001_notes Java: t.me/javatg JavaScript: t.me/javascriptv React: t.me/react_tg Frontend: t.me/front PHP: t.me/phpshka Android: t.me/android_its Мобильная разработка: t.me/mobdevelop Базы данных: t.me/sqlhub Data Science: t.me/data_analysis_ml Big Data: t.me/bigdatai Математика: t.me/data_math Физика: t.me/fizmat Kubernetes: t.me/kubernetc GameDev: https://t.me/gamedev Haskell: t.me/haskell_tg Собеседования и карьера: DS собеседования: t.me/machinelearning_interview Python собеседования: t.me/python_job_interview Папка с вакансиями: t.me/addlist/_zyy_jQ_QUsyM2Vi Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy Папка ML: https://t.me/addlist/2Ls-snqEeytkMDgy Папка Frontend: https://t.me/addlist/mzMMG3RPZhY2M2Iy Полезное сверху: ИТ-мемы: t.me/memes_prog Английский для программистов: t.me/english_forprogrammers ИИ и технологии: t.me/vistehno 954 ГБ open-source курсов: https://t.me/+rKBQEMccAA01MTcy ИТ-книги бесплатно: https://t.me/addlist/BkskQciUW_FhNjEy Max Ai: https://max.ru/ai_machinelearning_big_data Max python: https://max.ru/pythonl ТЕХНО: https://max.ru/vistehno Max Go: https://max.ru/Golang_google Max Linux: https://max.ru/linuxkalii Devops: https://max.ru/DevOPSitsec C#: https://max.ru/csharp_ci C++: https://max.ru/cpluspluc SQL: https://max.ru/sqlhub Java: https://max.ru/javatg Подписывайся на нужные направления и собирай себе ленту, которая реально двигает вперёд.
1 910
7
🌐 Новый `HttpClient` на каждый запрос? Под нагрузкой это может закончиться исчерпанием портов. IHttpClientFactory создаёт но
🌐 Новый `HttpClient` на каждый запрос? Под нагрузкой это может закончиться исчерпанием портов. IHttpClientFactory создаёт новые экземпляры клиента, но переиспользует обработчики `HttpMessageHandler` и их пулы соединений. Поэтому освобождение клиента, полученного от фабрики, не уничтожает пул после каждого запроса. Три способа использования: • Обычный клиент: CreateClient() для простых сценариев. Общие настройки тоже можно задать при регистрации. • Именованный: CreateClient("github") возвращает клиент с настройками конкретного API. • Типизированный: GitHubClient получает настроенный HttpClient через DI и скрывает детали HTTP за методами сервиса. Например, именованный клиент: services.AddHttpClient("github", client => { client.BaseAddress = new Uri("https://api.github.com/"); client.DefaultRequestHeaders.UserAgent.ParseAdd("MyApp/1.0"); }); // При использовании: using var client = factory.CreateClient("github"); Нюанс: типизированный клиент не стоит надолго удерживать в singleton без настройки обновления соединений. Фабрика также не единственный правильный вариант: Microsoft рекомендует и долгоживущий HttpClient с настроенным PooledConnectionLifetime. Главное: управлять временем жизни соединений.
2 046
8
🛠 У .NET появился свой аналог rustup и nvm Microsoft представила dotnetup: менеджер для установки и обновления .NET SDK и ра
🛠 У .NET появился свой аналог rustup и nvm Microsoft представила dotnetup: менеджер для установки и обновления .NET SDK и рантаймов. Пока в публичном превью. Всё устанавливается в папку пользователя, без sudo и прав администратора. Можно держать стабильные версии, превью и ежедневные сборки рядом, а закрепление SDK через global.json сохраняется. Несколько полезных команд: dotnetup init # Настроить окружение dotnetup list # Показать установленные версии dotnetup update # Обновить отслеживаемые версии dotnetup sdk install preview # Установить превью SDK Можно отслеживать обновления внутри конкретной ветки или закрепить точную версию. При обновлении ненужные компоненты очищаются автоматически. https://devblogs.microsoft.com/dotnet/introducing-dotnetup/
2 312
9
Запрос проходит через несколько сервисов, обращается к базе данных и внешним API. Пользователь видит задержку или ошибку, а п
Запрос проходит через несколько сервисов, обращается к базе данных и внешним API. Пользователь видит задержку или ошибку, а по отдельным записям в журналах трудно понять, на каком участке возникла проблема. 20 октября в 20:00 на открытом уроке курса «C# разработчик. Экспертный уровень» разберёте, как OpenTelemetry помогает превратить .NET-приложение из чёрного ящика в наблюдаемую систему. Рассмотрите наблюдаемость и роль трассировок, метрик и журналов событий в исследовании работы приложения. Узнаете, как эти данные помогают получить целостное представление о пути запроса и искать причины ошибок и задержек. На практике добавите средства сбора телеметрии в ASP.NET Core-приложение. Создадите собственные трассировки через ActivitySource и метрики через Meter, подключите автоматический сбор телеметрии для ASP.NET Core и HttpClient. Урок проведёт Михаил Дмитриев. Зарегистрироваться: https://otus.pw/f8Z4/?erid=2W5zFHPwe5P Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
2 274
10
#ПятничныйКвиз
2 326
11
Что на самом деле происходит с вашим async-методом: компилятор C# переписывает его в конечный автомат Meziantou разобрал, во что превращается async-метод после компиляции. Сам метод становится заглушкой: она создаёт структуру-автомат, заводит билдер вроде AsyncTaskMethodBuilder, копирует параметры в поля, ставит состояние -1, вызывает Start и возвращает Task. Вся логика переезжает в MoveNext. В Release автомат это struct, в Debug это class. Пока метод не засыпает, автомат живёт на стеке. Как только он приостанавливается, билдер упаковывает его в кучу. Поле state хранит точку возобновления: -1 значит выполняется, -2 завершён, 0 и выше номер await. В поля уходят только параметры и локальные переменные, которые нужны после await, остальные остаются локальными. Слоты под awaiter выделяются на тип, а не на каждый await, поэтому несколько await на одном типе делят одно поле. Сам await превращается в switch по полю плюс регистрацию продолжения. Если awaiter уже завершён, код идёт дальше без остановки. Если нет, сохраняется состояние и awaiter, вызывается AwaitUnsafeOnCompleted, и MoveNext возвращается. Исключения ловятся сгенерированным try/catch и уходят в SetException, поэтому всплывают на await, а не в месте вызова. До первого незавершённого await метод выполняется синхронно. Бенчмарки автора показывают цену этого механизма: синхронный цикл 2,7 нс, async без реального ожидания 47,9 нс, async с приостановкой на каждой итерации 8820 нс. Разница в сотни раз в горячих циклах заметна, так что await на каждом элементе лучше пересобирать. Мерить стоит только в Release, иначе картина искажается. Источник: https://www.meziantou.net/how-the-csharp-compiler-rewrites-an-async-method.htm
2 427
12
Helm-чарты прямо из C#, без запуска `helm` 🛠 HelmSharp позволяет рендерить шаблоны и управлять релизами Kubernetes внутри .N
Helm-чарты прямо из C#, без запуска `helm` 🛠 HelmSharp позволяет рендерить шаблоны и управлять релизами Kubernetes внутри .NET-приложения. Что умеет: • Загружать чарты из папки и .tgz. • Объединять values.yaml с пользовательскими параметрами. • Упаковывать чарты и работать с HTTP-репозиториями. • Устанавливать, обновлять, откатывать и удалять релизы. • Хранить историю релизов в Kubernetes Secrets, совместимых с Helm v3. Для начала: dotnet add package HelmSharp.Action Поддерживает .NET 8, 9 и 10, лицензия MIT. Пригодится для собственных панелей управления и сервисов деплоя на C#. Совместимость с Helm пока частичная: свои чарты стоит проверить, особенно если они используют сложные шаблонные функции или расширения. https://github.com/GaTTGeng/HelmSharp
3 248
13
Альфа-Банк ищет скиллового коллегу QA Fullstack на C# Предлагаем полную удалёнку или гибридный график – у нас классные ИТ-офисы в Москве, Питере и Екатеринбурге. Что нужно делать – Разрабатывать автотесты на C#. – Запускать функциональные, регрессионные и интеграционные тесты, включая API. – Снижать количество дефектов в диалоге с разработкой и бизнесом. Какие навыки важны – Опыт автоматизации на C# и ручного тестирования от года. – Знание API (SOAP, REST), SQL, основ клиент-серверной архитектуры и тест-дизайна. Условия и развитие – Сильное сообщество QA и C#-разработчиков: можно получить совет и поделиться опытом на митапе и в блоге на Хабре. – Реальная перспектива роста: технический трек развития, в том числе до C#-лида Оставляйте отклик по ссылке.
2 441
14
🧱 Модульный монолит легко потерять одним удобным JOIN. Допустим, модуль заказов напрямую читает таблицы доставки. Теперь изм
🧱 Модульный монолит легко потерять одним удобным JOIN. Допустим, модуль заказов напрямую читает таблицы доставки. Теперь изменение схемы доставки может сломать заказы, хотя в коде всё красиво разложено по модулям. Границы стоит закреплять и в базе: • Отдельная схема и роль PostgreSQL для каждого модуля. • Роль получает права только на свои данные. • В EF Core каждому модулю выделяется собственный DbContext и подключение с его учётными данными. • Чужие данные доступны через API, события или специально опубликованные представления с правами только на чтение. Так случайный запрос к чужой таблице остановит сама база. А выделять модуль в отдельный сервис впоследствии будет проще. Нюанс: отдельная схема и search_path сами по себе доступа не ограничивают. Границу обеспечивают права ролей на схемы и объекты. https://milanjovanovic.tech/blog/how-to-keep-your-data-boundaries-intact-in-a-modular-monolith
3 058
15
Задачка по C# 14: обновили проект на .NET 10, и код молча начал работать иначе Что выведет этот код? var c = new Counter(); c.Value = 5; Console.WriteLine($"{c.Value} {c.Raw} {c.GetRaw()}"); class Counter { private int field = 100; public int Value { get => field; set => field = value; } public int Raw => field; public int GetRaw() => field; } Варианты: A) 5 5 5 😎 5 100 100 C) 5 0 100 D) Код не скомпилируется Ответ: **C) 5 0 100** В C# 14 слово `field` внутри аксессоров свойства стало ключевым. Теперь оно означает **скрытое поле, которое компилятор создаёт для этого свойства**, даже если в классе уже есть член с таким именем. Поэтому в этом коде три разных `field`: ``` Value → своё скрытое поле: записали 5, прочитали 5 Raw → тоже аксессор, но со своим скрытым полем: в него никто не писал, значит 0 GetRaw() → обычный метод, ключевое слово тут не действует, это поле класса: 100 ``` Главная ловушка в строке `public int Raw => field;`. Выглядит как обычный метод-однострочник, но это свойство, а значит get-аксессор. Поле класса со значением 100 здесь вообще не видно. До C# 14 этот же код выводил `5 5 5`: все три обращения шли к одному полю класса. После обновления он компилируется и тихо меняет поведение. Чтобы обратиться к старому полю, внутри аксессоров нужно писать `this.field` или `@field`.
3 303
16
#ПятничныйКвиз
3 344
17
⚡️ Microsoft переработала C# Dev Kit: меньше памяти, быстрее запуск В версии 11.0 шесть процессов объединили в один сервер на
⚡️ Microsoft переработала C# Dev Kit: меньше памяти, быстрее запуск В версии 11.0 шесть процессов объединили в один сервер на Native AOT, добавили кэш проектов и приоритетную загрузку открытого файла. На решении Aspire из 407 проектов Microsoft получила: • готовность открытого файла: 0,47 секунды, ускорение до 180×; • загрузка всего решения: 84,1 → 3 секунды; • сборка после изменения одного C#-файла: 36,1 → 2,1 секунды; • память сервера Dev Kit: 2072 → 316 МБ. Последняя цифра относится только к серверу расширения: память VS Code и языкового сервиса Roslyn в сравнение не входит. Быстрая повторная загрузка использует предварительно созданный кэш. Также появились подсказки и диагностика для .csproj, .props, .targets и C# Doctor для поиска проблем с SDK, восстановлением пакетов и окружением. Версия доступна в Pre-Release. В VS Code откройте страницу C# Dev Kit и выберите Switch to Pre-Release Version. https://devblogs.microsoft.com/dotnet/faster-lighter-csharp-dev-kit/
3 788
18
🛠 Вышел Microsoft.Data.SqlClient 7.1.1 Обновление .NET-драйвера для SQL Server исправляет три неприятных сценария: • Нулевые
🛠 Вышел Microsoft.Data.SqlClient 7.1.1 Обновление .NET-драйвера для SQL Server исправляет три неприятных сценария: • Нулевые decimal-параметры могли вызывать ArgumentException, если Precision совпадала со Scale. • Пул соединений V2 мог выдавать соединения с истёкшими или почти истёкшими токенами доступа. Теперь срок проверяется перед повторным использованием. Исправление касается приложений, явно включивших V2. • ClearPool и ClearAllPools могли приводить к ошибке при одновременном открытии соединения. Теперь уже начатые запросы могут завершиться, а соединения из очищенного пула больше не используются повторно. https://github.com/dotnet/SqlClient/releases/tag/v7.1.1
3 695
19
Одна задача, три языка: Rust, C# или C++? В курсе Google *Comprehensive Rust* есть упражнение: найти длину трёхмерного вектор+2
Одна задача, три языка: Rust, C# или C++? В курсе Google *Comprehensive Rust* есть упражнение: найти длину трёхмерного вектора, а затем нормализовать его. Формула одна: √(x² + y² + z²). После этого каждую координату делим на полученную длину. На скриншотах хорошо видна разница в стиле: - Rust: iter().fold() собирает сумму квадратов, iter_mut() меняет координаты. - C#: ReadOnlySpan для чтения, Span для изменения и обычный foreach. - C++: std::vector, цикл по значениям для расчёта и по ссылкам для изменения. Для тех, кто пишет на C#: Rust fold(0.0, ...) по смыслу близок к LINQ Aggregate(0.0, ...): оба сворачивают последовательность в одно значение через аккумулятор. Чей вариант вам понятнее с первого взгляда?
7 761
20
🦈 Открытое собеседование на Middle C# | 6 октября, 19:00 МСК Приглашаем на открытое собеседование: Senior C# разработчик про
🦈 Открытое собеседование на Middle C# | 6 октября, 19:00 МСК Приглашаем на открытое собеседование: Senior C# разработчик проведёт его в прямом эфире. Можно посмотреть, как всё устроено изнутри, и понять, насколько ты готов к такому интервью. Как это будет: 📂 Собеседует Александр Моргунов — Senior C# разработчик, 7+ лет в европейских высоконагруженных сервисах. Отвечает разработчик-доброволец; 📂 Всё как на настоящем собесе: Александр задаёт те вопросы и задачи, которые даёт кандидатам на своих интервью. Заранее их никто не знает; 📂 После каждого ответа Александр даст обратную связь: что прозвучало сильно, а что стоило раскрыть иначе. Так станет понятнее, на что обращают внимание на собесе; 📂 В конце можно задать любой вопрос. Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для C# разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы. Переходи в нашего бота, чтобы получить ссылку на эфир -> @shortcut_csharp_bot Реклама. О рекламодателе.
2 483