C# Ready | Unity
10.6K subscribers
1.52K photos
84 videos
756 links
Авторский канал по разработке на C# и Unity.
Ресурсы, гайды, задачи, шпаргалки.
Информация ежедневно пополняется!

Cотрудничество: @energy_c

Реклама на бирже: https://telega.in/channels/csharp_ready/card

РКН: https://clck.ru/3SBaT3
Download Telegram
👩‍💻 Разбираем параллельное выполнение без лишнего ожидания!

Task.WhenAll помогает запускать независимые задачи одновременно и получать результат максимально быстро.

Что важно знать:

• Задачи стартуют сразу;

• Итог ждёт всех;

• Ошибки приходят вместе.


Это простой способ ускорить I/O-операции, если между задачами нет зависимости и нужен результат быстрее.

➡️ C# Ready | #гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤝18❤8🔥6👍4👎1
❤10🔥8👍3
😎 Как лаконично проверить структуру массива или кортежа?

С выходом C# 11 стали доступны списковые паттерны (*list patterns*), которые позволяют сопоставлять коллекции по элементам, как с начала, так и с конца — просто, читаемо и без лишних условий.

Первое условие проверяет, что массив начинается на 1, 2, заканчивается 10, и содержит что угодно посередине (..).

Второе — определяет, что точка находится в первой четверти, если обе координаты больше нуля.

➡️ C# Ready | #совет
Please open Telegram to view this post
VIEW IN TELEGRAM
❤17👍8🔥3
❤39😁14👍2🔥2
👩‍💻 Сканируем порты на удалённом хосте!

Проверяем, какие порты открыты у сервера, чтобы найти активные службы и баги.

Что важно знать:
• Таймаут спасает от долгих зависших подключений;

• Проверку лучше запускать сразу на все порты;

• Коллекция результатов должна быть потокобезопасной.


Можно легко усложнить: добавить логирование, аргументы командной строки и поддержку UDP.

➡️ C# Ready | #задача
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11👍6🔥5🤝4
❤5👍3🔥3
Что же выведет консоль?
Anonymous Quiz
21%
A
7%
B
51%
C
21%
D
🔥10❤4👍3
Null-conditional assignment на стероидах — безопасно присваиваем, если null!

Иногда нужно присвоить значение только в том случае, если переменная ещё не инициализирована, без громоздких if-проверок.

Новый синтаксис объединяет оператор ??= с безопасным навигацией ?., чтобы делать это «в один приём».

Объявляем переменные и подключаем пространство имён. Убедимся, что всё готово для работы:
using System;

string? userName = null;
string? environment = null;


Присваиваем значения только если null. Одной строкой даём переменным дефолтные значения:
// Присваиваем «Guest User», если userName == null
userName ??= "Guest User";

// Берём переменную окружения, если она определена, иначе «Development»
environment ??= Environment.GetEnvironmentVariable("ASPNET_ENVIRONMENT") ?? "Development";

// Выведем результат
Console.WriteLine($"👤 Пользователь: {userName}");
Console.WriteLine($"⚙️ Окружение: {environment}");


🔥 В пару строк вы избегаете лишних проверок и сразу получаете гарантированное значение без сторонних библиотек.

➡️ C# Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥4❤3
👩‍💻 Управляй файлами, как профи!

Забудь о громоздких вызовах File — с FileInfo всё проще и нагляднее. Проверяй существование, копируй, удаляй и анализируй файлы через один объект.

➡️ C# Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥21🤝13❤4👍3