en
Feedback
C# (C Sharp) programming

C# (C Sharp) programming

Open in Telegram

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

Show more

📈 Analytical overview of Telegram channel C# (C Sharp) programming

Channel C# (C Sharp) programming (@csharp_ci) in the Russian language segment is an active participant. Currently, the community unites 18 139 subscribers, ranking 7 059 in the Technologies & Applications category and 36 427 in the Russia region.

📊 Audience metrics and dynamics

Since its creation on невідомо, the project has demonstrated rapid growth, gathering an audience of 18 139 subscribers.

According to the latest data from 02 September, 2026, the channel demonstrates stable activity. Although there has been a change in the number of participants by -42 over the last 30 days and by 0 over the last 24 hours, overall reach remains high.

  • Verification status: Not verified
  • Engagement rate (ER): The average audience engagement rate is 13.64%. Within the first 24 hours after publication, content typically collects 7.27% reactions from the total number of subscribers.
  • Post reach: On average, each post receives 2 475 views. Within the first day, a publication typically gains 1 319 views.
  • Reactions and interaction: The audience actively supports content: the average number of reactions per post is 0.
  • Thematic interests: Content is focused on key topics such as .net, api, логика, архитектура, string.

📝 Description and content policy

The author describes the resource as a platform for expressing subjective opinions:
По всем вопросам- @notxxx1 Реестр РКН: https://clck.ru/3Fk3kb #VRHSZ

Thanks to the high frequency of updates (latest data received on 03 September, 2026), the channel maintains relevance and a high level of publication reach. Analytics show that the audience actively interacts with content, making it an important point of influence in the Technologies & Applications category.

18 139
Subscribers
No data24 hours
+137 days
-4230 days
Posts Archive
⚡Онлайн-Хакатон "Городские Легенды" от Группы компаний Росохрана и ООО «Эпсилон»! 💡Кейсы хакатона: 1. Разработка интерактивн
⚡Онлайн-Хакатон "Городские Легенды" от Группы компаний Росохрана и ООО «Эпсилон»! 💡Кейсы хакатона: 1. Разработка интерактивного голосового помощника с использованием анимированного аватара. 2. Интеграция интерактивного аватара в городскую экосистему цифровых сервисов. 👨‍💻Для кого хакатон? - C++/C#-разработчиков; - Unity-разработчиков; - 3D-Моделлеров; - UX/UI-дизайнеров; - AI-Специалистов; - Команды из 5 человек; - Готовых внедрить любимых персонажей в городскую среду и побороться за главный приз! 🏆Общий призовой фонд - 700 000 рублей! 📅Дата проведения: 11-18 Марта 📍Формат: Онлайн Подробная информация и регистрация: https://tglink.io/6c8079854982?erid=LjN8KVcPo

Что произойдет если попытаться запустить этот код?
Anonymous voting

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

🫵 Соберите свой первый проект на С++ и добавьте его в портфолио 👉 На бесплатном практическом уроке от OTUS и Карины Дорожки
🫵 Соберите свой первый проект на С++ и добавьте его в портфолио 👉 На бесплатном практическом уроке от OTUS и Карины Дорожкиной — ведущего разработчика в Kaspersky.  На вебинаре:- разберем понятие единицы трансляции;- проследим за ошибками компиляции и линковки, разберёмся в их причинах;- создадим статическую библиотеку и подключим её при помощи CMake;- обсудим разницу между статической библиотекой и динамической.  ⏰ Занятие пройдёт 5 марта в 20:00 мск и будет приурочено к старту курса «Специализация C++ Developer». Доступна рассрочка на обучение! 👉 Зарегистрируйтесь прямо сейчас, чтобы занять место: https://otus.pw/JPb4/?erid=LjN8KEppm Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

🖥 Новый выпусе- Microsoft .Data.SqlClient 5.2 - с .NET 8, поддержкой пакетной обработки Sql и идентификации рабочей нагрузки
🖥 Новый выпусе- Microsoft .Data.SqlClient 5.2 - с .NET 8, поддержкой пакетной обработки Sql и идентификации рабочей нагрузки + многое другое - смотрите примечания к выпуску: 📌 Релиз #dotnet #sqlserver @csharp_ci

🖥 Интересный вопрос Что выведет данная программа? А скомпилируется ли она вообще? var str = new TheBestStructEver(5); Consol
🖥 Интересный вопрос Что выведет данная программа? А скомпилируется ли она вообще?
var str = new TheBestStructEver(5);

Console.WriteLine(str.A);

public struct TheBestStructEver
{
    public int A;

    public TheBestStructEver(int a)
    {
        A = a;
        this = new TheBestStructEver();
    }
}
❯ Ответ: да, скомпилируется, причем без всяких предупреждений, и выведет 0. Давайте разберем почему это так. Обратимся к IL-коду нашей структуры, а конкретнее к 12-ой строчке. Вот как она выглядит в IL-коде:
IL_0013: ldarg.0
IL_0014: initobj      TheBestStructEver
Итак, первая строчка загружает в стек нулевой аргумент, переданный в метод (конструктор - тоже метод). Аргумент под нулевым индексом - это указатель на объект, в котором мы работаем, то есть this. initobj инициализирует каждое поле структуры нулями или null по адресу, которое лежит у нас первым в стеке (а у нас там лежит указатель на this). Дополнительно мы еще передаем токен, который указывает тип структуры. Таким образом получается, что у нас вся структура "перезатёрлась нулями" и значение поля A равно нулю. @csharp_ci

🖥 Прямо-таки сеньорская версия FizzBuzz — функциональный код с массивом делегатов преобразований числа в Fizz & Buzz. pu
🖥 Прямо-таки сеньорская версия FizzBuzz — функциональный код с массивом делегатов преобразований числа в Fizz & Buzz.
public class FizzBuzz
{
    public static void Main(string[] args)
    {
        Console.WriteLine(FizzBuzzProgram(350));
    }
    public static string FizzBuzzProgram(int n) =>
        String.Join("\r\n", 
            Enumerable.Range(1, n).Select(FizzBuzzPipeline));

    static readonly Func<int, string?>[] handlers = [(n) => n % 3 == 0 ? "Три" : null, (n) => n % 5 == 0 ? "Пять" : null];
    
    public static string FizzBuzzPipeline(int i) => Counter(i, String.Join("", handlers.Select(f => f(i))));

    public static string FizzBuzzPipelinePar(int i)
    {
        var results = handlers.AsParallel().Select(handler => handler(i)).Where(r => r != null);
        return results.Any() ? string.Concat(results) : i.ToString();
    }
}
Этот массив расширяемый - пишите хоть 100 проверок, множество других решений на такое не способно. Можно любое вычисление вычислять. А из-за независимости мы можем запускать их параллельно (если бы вычисление хендлера занимало большое время). Красота! Хотите попроще ценой потери части универсальности?
static string FizzBuzzPipelineWOHandlers(int n)
{
    string result = $"{(n % 3 == 0 ? "Fizz" : "")}{(n % 5 == 0 ? "Buzz" : "")}{(n % 7 == 0 ? "Qux" : "")}";
    return String.IsNullOrEmpty(result) ? n.ToString() : result;
}
Вдохновлено идеями Скотта Влашина, в частности, этим роликом @csharp_ci

5️⃣простых правил, которые не стоит забывать, чтобы код C# был чище и производительнее ➖Возврат null из неасинхронного метода
5️⃣простых правил, которые не стоит забывать, чтобы код C# был чище и производительнее ➖Возврат null из неасинхронного метода Task/Task<T> приведет к возникновению NullReferenceException. Этой проблемы можно избежать, вернув вместо этого Task.FromResult<T>(null)
// неправильно
public Task<object> GetFooAsync()
{
    return null; // Noncompliant
}
// правильно так
public Task<object> GetFooAsync()
{
    return Task.FromResult<object>(null);
}
➖Объединять строки в цикле лучше не через +. Лучше использовать StringBuilder как более эффективный вариант.
// можно быстрее
string str = "";
for (int i = 0; i < arrayOfStrings.Length ; ++i)
{
  str = str + arrayOfStrings[i];
}
// это быстрее
StringBuilder bld = new StringBuilder();
for (int i = 0; i < arrayOfStrings.Length; ++i)
{
  bld.Append(arrayOfStrings[i]);
}
string str = bld.ToString();
➖Для поиска подстрок вместо str.Substring(startIndex).IndexOf(char1) лучше использовать один из методов: IndexOf IndexOfAny LastIndexOf LastIndexOfAny
// так не стоит 
str.Substring(StartIndex).IndexOf(char1); // Noncompliant; a new string is going to be created by "Substring"
// более эффективный вариант 
str.IndexOf(char1, startIndex);
➖Вместо null во многих случаях лучше возвращать пустые массивы/коллекции, это делает код понятнее
// плохая идея
public Result[] GetResults()
{
    return null; // Noncompliant
}

public IEnumerable<Result> GetResults()
{
    return null; // Noncompliant
}
// так намного лучше
public Result[] GetResults()
{
    return new Result[0];
}

public IEnumerable<Result> GetResults()
{
    return Enumerable.Empty<Result>();
}
➖Если мы делим на объект типа int, то результатом всегда будет int; можно конечно привести этот результат к типу вещественного числа, но из-за проблем с плавающей запятой результат может быть не тем. В общем, лучше привести делимое к (decimal):
decimal dec = 3/2; // 1
decimal dec = (decimal)3/2; // 1.5
Не стоит забывать эти простые рекомендации, тогда код будет чище и понятее @csharp_ci

👩‍💻 TDD в разработке на С# — что, для чего, полезно ли? Расскажет Антон Герасименко — .net developer + lead. Встречаемся на
👩‍💻 TDD в разработке на С# — что, для чего, полезно ли? Расскажет Антон Герасименко — .net developer + lead. Встречаемся на бесплатном практическом уроке от OTUS, где вы вместе с опытным экспертом разберете: ✅ как короткие циклы разработки, опирающиеся на TDD (разработка через тестирование) влияют на качество продукта; ✅ как его внедрить, когда это нужно и что делать потом.  Занятие пройдёт 29 февраля в 20:00 мск и будет приурочено к старту курса «C# Developer. Professional». Доступна рассрочка на обучение! 👉 Пройдите короткий тест прямо сейчас, чтобы занять место на открытом уроке и получить запись: пройти тест  Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

💻 AWS Lambda Handler Cookbook (.NET) Открытая книга .NET Lambda Handler Cookbook полностью обновлена до .NET 8, включая прим
💻 AWS Lambda Handler Cookbook (.NET) Открытая книга .NET Lambda Handler Cookbook полностью обновлена до .NET 8, включая примеры того, как сделать нативный AOT в ASP NET. Этот проект предоставляет рабочий скелет для работы с AWS Lambda на .NET, включая развертывание с помощью AWS CDK и конвейер GitHub Actions. ▪Github @csharp_ci

⚡️ Marten - мощная база данных документов и хранилище событий .NET на PostgreSQL Вы практически можете построить свою базу да
⚡️ Marten - мощная база данных документов и хранилище событий .NET на PostgreSQL Вы практически можете построить свою базу данных документов на его основе 🐘.Пример работы с MartenGithub @csharp_ci

💫 Туннели Dev для мобильной разработки Создавайте уникальные URL-адреса, которые можно использовать для отладки эндпоинтов A
💫 Туннели Dev для мобильной разработки Создавайте уникальные URL-адреса, которые можно использовать для отладки эндпоинтов API, веб-хуков или просто для обмена информацией о вашем проекте. Dev-туннели для Visual Studio 2022 создают уникальный URL, который можно использовать в мобильных проектах для отладки API. Теперь Visual Studio 2022 позволяет создавать туннели разработчиков одним нажатием кнопки. ▪Читать дальше @csharp_ci

😎Сишарпист, погрузись в мир встраиваемых систем — программируй микроконтроллеры! 👉Начните на бесплатном вебинаре продвинуто
😎Сишарпист, погрузись в мир встраиваемых систем — программируй микроконтроллеры!  👉Начните на бесплатном вебинаре продвинутого олайн-курса «Программист С» — «Встраиваемые системы и программирование микроконтроллеров»: регистрация На вебинаре мы: — проведем обзор различных микроконтроллеров и их характеристик — рассмотрим проектирование встраиваемых систем от идеи до реализации — разберем на конкретном примере программирование микроконтроллеров — сделаем отладку и тестирование встраиваемых систем. Вебинар будет полезен:  — разработчикам и инженерам, которые интересуются встраиваемыми системами и программированием микроконтроллеров. 🤝Понравится вебинар — продолжите обучение на курсе по специальной цене и даже в рассрочку!

😎Сишарпист, погрузись в мир встраиваемых систем — программируй микроконтроллеры! 👉Начните на бесплатном вебинаре продвинуто
😎Сишарпист, погрузись в мир встраиваемых систем — программируй микроконтроллеры!  👉Начните на бесплатном вебинаре продвинутого олайн-курса «Программист С» — «Встраиваемые системы и программирование микроконтроллеров»: регистрация На вебинаре мы: — проведем обзор различных микроконтроллеров и их характеристик — рассмотрим проектирование встраиваемых систем от идеи до реализации — разберем на конкретном примере программирование микроконтроллеров — сделаем отладку и тестирование встраиваемых систем. Вебинар будет полезен:  — разработчикам и инженерам, которые интересуются встраиваемыми системами и программированием микроконтроллеров. 🤝Понравится вебинар — продолжите обучение на курсе по специальной цене и даже в рассрочку!

🖥 Как использовать шаблон параметров в ASP.NET Core. Шаблон параметров использует классы для обеспечения строго типизированн
🖥 Как использовать шаблон параметров в ASP.NET Core. Шаблон параметров использует классы для обеспечения строго типизированного доступа к группам связанных параметров. В ASP.NET Core шаблон параметров можно настроить несколькими различными способами. В этой статье показаны некоторые из них и их потенциальные преимущества. ▪ЧитатьШаблон параметров в ASP.NET Core @csharp_ci

ХОЧЕШЬ ПОВЫШЕНИЕ В 2024 ГОДУ? 😎🔥 Согласно опросу, проведенному компанией Solo.io в 2022 году, на текущий момент 85% организ
ХОЧЕШЬ ПОВЫШЕНИЕ В 2024 ГОДУ? 😎🔥 Согласно опросу, проведенному компанией Solo.io в 2022 году, на текущий момент 85% организаций переводят свои IT-системы на микросервисную архитектуру. Но специалистов, которые глубоко понимают все тонкости и нюансы микросервисной архитектуры не так-то много. Самое время разобраться в микросервисной архитектуре и стать более востребованным специалистом. 🚀 Стартуем 26 февраля. Курс ведет действующий архитектор Кирилл Ветчинкин. Он успешно реализовал проекты с применением микросервисов для Мегафона, Теле2, ВСS Brокer, СберМаркет. Постоянный спикер крупных IT-конференций. На курсе вы: 📌 Изучите и отработаете более 20 паттернов микросервисной архитектуры 📌 Познакомитесь c Domain Driven Design 📌 Научитесь декомпозировать систему на микросервисы с помощью Event Storming и DDD Полная программа ТУТ https://microarch.ru/?utm_source=posev&utm_medium=erid%2VtzqwsLbJh&utm_campaign=3 А самое главное — будет поддержка от эксперта, чат с одногруппниками и интересное практическое задание. Сертификат об участии по итогам прохождения курса. Курс ориентирован на системных аналитиков и разработчиков, которые хотят больше погрузиться в архитектуру современных IT систем. Узнай больше о курсе 👉 https://microarch.ru/?utm_source=posev&utm_medium=erid%2VtzqwsLbJh&utm_campaign=3 Реклама. ИП Ветчинкин К.Е. ИНН: 773376451099 Erid: 2VtzqwsLbJh

🖥 Рассмотрим ситуацию, когда вы ожидаете несколько асинхронных вызовов от нескольких сервисов. Эти вызовы не зависят друг от
🖥 Рассмотрим ситуацию, когда вы ожидаете несколько асинхронных вызовов от нескольких сервисов. Эти вызовы не зависят друг от друга. Вы можете использовать Task_WhenAll, чтобы добиться значительного повышения производительности. Это может сделать ваш API в 15 раз быстрее: Читать дальшеПоследовательное и параллельное выполнение. Task.WhenAll и Task.WhenAny @csharp_ci

⚡️ DevToys — швейцарский нож для ежедневных задач разработчика. — Конвертеры: JSON в YAML, парсер Cron’а и тд; — Кодеры/декод
⚡️ DevToys — швейцарский нож для ежедневных задач разработчика. — Конвертеры: JSON в YAML, парсер Cron’а и тд; — Кодеры/декодеры; — Генераторы получения хеша: MD5, SHA1, SHA256, SHA512; — Работа с текстом: сравнение текстов, разметка, проверка регулярок и тд; — Работа с графикой: сжатие, конвертирование и тд. ▪Github @csharp_ci

Считаешь себя экспертом в IT? Участвуй в «Цифровом марафоне» от Сбера и «Школы 21» и будь на код впереди! Миллион рублей уже
Считаешь себя экспертом в IT? Участвуй в «Цифровом марафоне» от Сбера и «Школы 21» и будь на код впереди! Миллион рублей уже ждёт тебя. В этом масштабном конкурсе ты будешь соревноваться со специалистами по всей России. Тройка лучших поделит в финале в Москве призовой фонд в 1,8 миллионов рублей. Но сначала нужно пройти онлайн- игру, тестирование и цифровой диктант. Начнёшь с «разминки» и покажешь свои аналитические и мягкие навыки. Далее — ответь на вопросы теста согласно своему уровню подготовки. Прослушай на диктанте техническое задание и напиши код решения. Переходи на сайт, читай подробнее об условиях и жми «Хочу участвовать»!

Что произойдет при попытке запуска этого кода?
Anonymous voting