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 306 subscribers, ranking 7 332 in the Technologies & Applications category and 36 865 in the Russia region.

📊 Audience metrics and dynamics

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

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

  • Verification status: Not verified
  • Engagement rate (ER): The average audience engagement rate is 19.58%. Within the first 24 hours after publication, content typically collects 7.47% reactions from the total number of subscribers.
  • Post reach: On average, each post receives 3 584 views. Within the first day, a publication typically gains 1 368 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 17 June, 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 306
Subscribers
-424 hours
+137 days
-730 days
Posts Archive
Вариант для тех, кто ищет виртуальный сервер с хорошей веб-защитой — Aéza: – Виртуальные сервера до 6.0 ГГц на лучших процесс
Вариант для тех, кто ищет виртуальный сервер с хорошей веб-защитой — Aéza: – Виртуальные сервера до 6.0 ГГц на лучших процессорах; – Профессиональная фильтрация атак StormWall; – Круглосуточная поддержка; – Anycast фильтрация; – Низкие цены; – 15% кешбэка по ссылке. Бесконечно можно смотреть на три вещи: на огонь, воду и скидку от Aeza! Говорят: твоё от тебя не уйдет. А зачем ждать? Динозавры тоже ждали и остались в прошлом Используй 50% скидку и погнали в будущее! Кроме того, сейчас Aéza раздает личные бесплатные сервера, забираем тут. Регистрация, подписка, платежи не потребуются. Реклама. Индивидуальный предприниматель Лобанов Леонид Константинович. ИНН 781625705648 erid: LjN8KEr3S

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

#ПятничныйКвиз #карательныйсишарп
#ПятничныйКвиз #карательныйсишарп

🖥 Создание бесконечно повторяющегося метода в C# Итак задача: как создать бесконечно повторяющийся метод в C#, который работ
🖥 Создание бесконечно повторяющегося метода в C# Итак задача: как создать бесконечно повторяющийся метод в C#, который работает на протяжении работы приложения? Предположим, метод должен через определенное количество времени выводить какую-то информацию на экран; он должен работать вне зависимости от действий пользователя. ⏩Если в двух словах, то для этого можно использовать асинхронность. Итак, создаём:
private async Task RunLoopAsync(CancellationToken token)
{
    try
    {
        while (true)
        {
            // ... что-то сделать
            await Task.Delay(1000, token); // подождать одну секунду
        }
    }
    catch (OperationCanceledException)
    { } // сработала отмена, ничего не делать
}
⏩и вот так это можно использовать:
private CancellationTokenSource _cts;

private async void StartLoop()
{
    if (_cts != null)
        return;
    try
    {
        using (_cts = new CancellationTokenSource())
        {
            await RunLoopAsync(_cts.Token);
        }
    }
    catch (Exception ex)
    {
        // ... ex.Message
    }
    _cts = null;
}

private void StopLoop()
{
    _cts?.Cancel();
}
📎 Читать подробнее @csharp_ci

Смартфон за ваш ответ! Исследовательская компания OMI проводит опрос среди IT-специалистов. Пройдите по ссылке, ответьте на н
Смартфон за ваш ответ! Исследовательская компания OMI проводит опрос среди IT-специалистов. Пройдите по ссылке, ответьте на несколько вопросов и получите шанс выиграть последнюю модель передового смартфона! Примите участие в опросе прямо сейчас — это займет минимум времени.

🖥 Итак, реальный кейс: нужно записать значение каждой строки InputField в List Эти 2 варианта ниже неправильные, они не рабо
🖥 Итак, реальный кейс: нужно записать значение каждой строки InputField в List<string> Эти 2 варианта ниже неправильные, они не работают: — List = (InputField.text).ToListList = InputField.text Так как InputField.text это тип string , я не могу преобразовать его в List<string>. Что в итоге делать? ⏩Всё довольно просто, можно записать строки InputField в List<string> вот так:
string text = InputField.text;
string[] lines = text.Split(Environment.NewLine);
⏩Или, если C# так не поддерживает в Unity первый вариант, то тогда вот так:
string[] lines = text.Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
⏩Вообще, если хочется получить список из массива, то:
List<string> list = lines.ToList();
Но если нет необходимости список модифицировать, лучше оставить массив. @csharp_ci

❓Чем перемещение отличается от копирования в C++? Узнайте на бесплатном практическом уроке от OTUS, где вы вместе с опытным э
❓Чем перемещение отличается от копирования в C++? Узнайте на бесплатном практическом уроке от OTUS, где вы вместе с опытным экспертом разберете: - синтаксис и подводные камни move-семантики; - отличие копирования от перемещения; - когда компилятор может сам, а когда ему нужно подсказать; - как отличить rvalue от lvalue; - как избегать лишнего копирования объектов. 👉 Зарегистрируйтесь прямо сейчас: https://otus.pw/mVqm/?erid=LjN8K6SUF ⏰ Занятие пройдёт 21 марта в 20:00 мск и будет приурочено к старту курса «Специализация C++ Developer». Доступна рассрочка на обучение! Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

🖥 Найди ошибку в этом коде C# и реши задание правильно Чисто академическое задание но почему бы и нет 🙃 Вот неправильное ре
+1
🖥 Найди ошибку в этом коде C# и реши задание правильно Чисто академическое задание но почему бы и нет 🙃 Вот неправильное решение, подумай, какие в нём ошибки и напиши по красоте. ⏩Готово? Получилось? Можешь смотреть решение @csharp_ci

🖥 О использовании структур размером больше 16 байт По умолчанию, при передаче в метод/возврате из метода, экземпляры значимы
+4
🖥 О использовании структур размером больше 16 байт По умолчанию, при передаче в метод/возврате из метода, экземпляры значимых типов копируются, тогда как экземпляры ссылочных типов передаются по ссылке. В 2008 была выпущена книга «Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries». В ней рекомендовалось не использовать структуры больше 16 байт, поскольку, очевидно, структуры большего размера копируются медленнее. Прошло уже 16 лет, но в сообществе C# разработчиков до сих пор популярно мнение, что производительность структур размером больше 16 байт хуже. Даже Google на запрос «recommended structure size c#» говорит, что это не более 16 байт. Код бенчмарка очень прост. Он содержит структуры и классы размером от 4 до 160 байт, с шагом 4 байта. Для каждой структуры и класса есть соответствующий метод, который из параметра типа int cоздаёт соответствующий экземпляр и возвращает его. И, самое главное, есть непосредственно бенчмарк методы (картинка), каждый из которых создаёт список структур или классов. Размер списка – 1000 элементов. В общем, после проведения тестов можно убедиться, что использование структур размером больше 16 байт не ухудшает производительность. Сейчас этой границей является размер 64 байта. А ты знал про это? @csharp_ci

🖥 Немного о новых фичах C# 12 ▶️В C# 12 упрощен способ создания массивов и коллекций с помощью выражения коллекций (collecti
🖥 Немного о новых фичах C# 12 ▶️В C# 12 упрощен способ создания массивов и коллекций с помощью выражения коллекций (collection expression), которые представляют унифицированный подход к созданию коллекций. Так, если раньше создание массивов выглядело так:
int[] nums1 = { 1, 2, 3, 4 };
int[] nums2 = new int[] { };   // пустой массив
Теперь можно писать так:
int[] nums1 = [ 1, 2, 3, 4 ];
int[] nums2 = [];   // пустой массив
Аналогичным образом можно использовать выражения коллекций для создания других типов коллекций:
List<int> list1 = [1, 2, 3, 4];
List<int> list2 = []; //  пустой список
Span<int> span1 = [1, 2, 3, 4];
▶️Первичные конструкторы (Primary constructors) позволяют добавлять параметры к определению класса/структуры и использовать эти параметры внутри класса/структуры:
var tom = new Person("Tom", 38);
Console.WriteLine(tom);
 
public class Person(string name, int age)
{
    public Person(string name) : this(name, 18) { }
    public string Name => name;
    public int Age => age;
 
    public override string ToString() => $"name: {name}, age: {age}";
}
Здесь для класса Person определен первичный конструктор с двумя параметрами - name и age. Эти параметры применяются для инициализации свойств Name и Age и используются в методе ToString(). За кадром для каждого параметра первичного конструктора в классе создается приватное поле, которое хранит значение параметра. Благодаря этому они могут использоваться в теле класса. Кроме первичных конструкторов класс может определять дополнительные конструкторы, как примере выше. Но эти дополнительные конструкторы должны вызывать первичный конструктор:
public Person(string name) : this(name, 18) { }
Разумеется, это не все фичи C# 12, вот подробнее: 📎 Youtube 📎 Статья в тему @csharp_ci

🔥Подборка лучших обучающих каналов для программистов. ➡️ Делитесь с коллегами и cохраняйте себе, чтобы не потерять ⚡️ Frontend Javascript академия - крупнейший js канал React - лучшие гайды и советы по работе с react Frontend - тутрориалы, уроки, гайды, код PHP Книги frontend Задачи frontend 💥 Хакинг Kali Linux Kali linux linux_kal - kali чат Информационная безопасность 🚀 Data Science Анализ данных - полезные фишки, код, гайды и советы, маст-хэв датасаентиста Data Jobs - ds вакансии Аналитик данных Data Science книги - актуальные бесплатные книги Big data #️⃣C# С# академия С# заметки — код, лучшие практики, заметки программиста c# С# задачи и тесты С# библиотека - актуальные бесплатные книги C# вакансии - работа ⚡Машинное обучение Ml Собеседование - подготовка к собеседовению мл, алгоритмам, кодингу Ml ru - актуальные статьи, новости, код и обучающие материалы Ml Jobs - вакансии ML ML Книги - актуальные бесплатные книги МО ML чат Machine Learning - полезные статьи новости гайды и разбор кода 🏆 Golang Golang - подробные гайды, разбор кода, лучшие практики, заметки Golang собеседование Golang вакансии Golang книги Golang задачи и тесты Golang чат Golang news - новости go 🐍 Python Python/django Python Собеседование - подготовка к собеседовению python и разбор алгоритмов Pro python - статьи, новости, код и обучающие материалы Python Jobs - вакансии Python Python чат Python книги ☕ Java Java академия Java вакансии Java чат Java вопросы с собеседований Java книги 🛢Базы данных Sql базы данных Библиотека баз данных SQL чат 💻 C++ C++ академия С++ книги C++ задачи - подготовка к собеседовению мл, алгоритмам C++ вакансии 🐧 Linux Linux academy 🦀 Rust Rust программирование Rust чат Rust книги для программистов 📲 Мобильная разработка Android разработка Мобильный разработчик гайды и уроки 🇬🇧 Английский для программистов 🧠 Искусственный интеллект ИИ и технологии Neural - нейросети для работы и жизни Книги ИИ Artificial Intelligence 🔥 DevOPs Devops для программистов Книги Devops 🌟 Docker/Kubernets Docker Kubernets 📓 Книги Библиотеки Книг для программситов 💼 Папка с вакансиями: Папка Go разработчика: Папка Python разработчика: Папка Data Science Папка Java разработчика Папка C# Папка Frontend

💎Свежайший 8-часовой ролик-курс по C# от freeCodeCamp.org Здесь разбираются самые важные понятия, очень много практики — на
+1
💎Свежайший 8-часовой ролик-курс по C# от freeCodeCamp.org Здесь разбираются самые важные понятия, очень много практики — на протяжении ролика постоянно реализуются мини-проекты А вот темы, которые затрагиваются в ролике: Обзор языка С# 🔘Структура программы на С# 🔘Основные операции ввода/вывода 🔘Рекомендации по оформлению кода Использование структурных переменных 🔘Общая система типов (Common Type System) 🔘Использование встроенных типов данных 🔘Пользовательские типы данных 🔘Преобразование типов Операторы и исключения 🔘Операторы в С# 🔘Обработка исключений Методы и параметры 🔘Использование методов 🔘Использование параметров 🔘Перегрузка методов Массивы и коллекции 🔘Массивы 🔘Списки – List<T> 🔘Двухсвязные списки – LinkedList<T> 🔘Словари – Dictionary<TKey, TValue> Основы ООП 🔘Классы и объекты 🔘Инкапсуляция данных 🔘Наследование и полиморфизм Использование ссылочных данных 🔘Reflection (рефлексия) 🔘Пространства имен 🔘Приведение типов данных Создание и удаление объектов 🔘Использование конструкторов 🔘Уничтожение объектов Наследование в C# 🔘Использование интерфейсов 🔘Использование абстрактных классов Агрегации, пространства имён, сборки и модули 🔘Использование внутренних (internal) классов, методов и данных 🔘Использование агрегаций 🔘Фабрики классов 🔘Пространства имен 🔘Модули и сборки Операции, делегаты, события 🔘Операции 🔘Создание и использование делегатов 🔘События Свойства и индексаторы 🔘Свойства 🔘Индексаторы Посмотрите хотя бы по диагонали — прокачаете свой C# 💎 Learn C# – Full Course with Mini-Projects @csharp_ci

🖥 Полезные фишки, связанные с символом @ Специальный символ @ является "буквальным" идентификатором, короче, показывает, что
🖥 Полезные фишки, связанные с символом @ Специальный символ @ является "буквальным" идентификатором, короче, показывает, что нечто нужно интерпретировать буквально. У @ масса сфер применения, его можно использовать, чтобы: ▶️указать, что строковый литерал следует интерпретировать буквально. Символ @ в этом случае определяет буквальный строковый литерал. Простые escape-последовательности (например, "\\" для обратной косой черты), шестнадцатеричные escape-последовательности (например, "\x0041" для прописной буквы A) и escape-последовательности Юникода (например, "\u0041" для прописной буквы A) интерпретируются буквально. Только escape-последовательность кавычки ("") не интерпретируется буквально. Кроме того, в случае с интерполированными последовательностями строковых фигурных фигурных скобок ({{ и }}) не интерпретируются буквально; они создают символы с одной фигурной скобкой.
string filename1 = @"c:\documents\files\u0066.txt";
string filename2 = "c:\\documents\\files\\u0066.txt";

Console.WriteLine(filename1);
Console.WriteLine(filename2);

//     c:\documents\files\u0066.txt
//     c:\documents\files\u0066.txt
string s1 = "He said, \"This is the last \u0063hance\x0021\"";
string s2 = @"He said, ""This is the last \u0063hance\x0021""";

Console.WriteLine(s1);
Console.WriteLine(s2);

//     He said, "This is the last chance!"
//     He said, "This is the last \u0063hance\x0021"
▶️@ можно использовать в качестве идентификаторов. Символ @ предшествует элементу кода, который компилятор должен интерпретировать как идентификатор, а не ключевое слово C#:
string[] @for = { "John", "James", "Joan", "Jamie" };
for (int ctr = 0; ctr < @for.Length; ctr++)
{
   Console.WriteLine($"Here is your gift, {@for[ctr]}!");
}

//     Here is your gift, John!
//     Here is your gift, James!
//     Here is your gift, Joan!
//     Here is your gift, Jamie!
▶️ну и напоследок, @ используется, чтобы позволить компилятору различать атрибуты в случае конфликта имен. @csharp_ci

Вам когда-нибудь требовалось реализовать полнофункциональный текстовый редактор в вашем приложении C#? Просто прочтите эту ин
Вам когда-нибудь требовалось реализовать полнофункциональный текстовый редактор в вашем приложении C#? Просто прочтите эту интересную статью по ссылке, где автор представляет текстовый редактор, основанный на классе RichtextBox. Исходники находятся на сервере Codeproject, мне понадобилось аж три попытки, чтобы их скачать 😲 Надеюсь, скоро автор перенесет этот полезный проект на GitHub, а пока вот ссылка 🔗Статья и проект @csharp_ci

🖥 Отличный сборник заданий и упражнений по C#, поможет освежить самые важные понятия Эти задачи (с решениями) позволят освои
+4
🖥 Отличный сборник заданий и упражнений по C#, поможет освежить самые важные понятия Эти задачи (с решениями) позволят освоить операторы и базовые конструкции языка C#, потренировать такие навыки программирования, как ввод/вывод данных, целочисленную арифметику, логику и все операторы циклов, ну и не только — есть несколько довольно сложных заданий 📁 PDF @csharp_ci

⚡Онлайн-Хакатон "Городские Легенды" от Группы компаний Росохрана и ООО «Эпсилон»! 💡Кейсы хакатона: 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.