✅ Pattern Matching в C#: Property и Tuple patterns
Зачем?
Упростить проверки сложных условий. Вместо вложенных
Property pattern
Проверяет свойства объекта прямо в условии:
Tuple pattern
Идеален для проверки нескольких значений одновременно:
Где использовать?
• Вместо громоздких
• Для обработки входных данных (например, результат метода)
• В
Важно!
• Работает в
•
• В property pattern можно проверять вложенные свойства:
💡 Используй эти паттерны для чистого и безопасного кода. Сокращай количество строк и повышай читаемость!
Пост предложил @u006E10011
#CSharp #Unity #Programming #PatternMatching #UnityDev
Зачем?
Упростить проверки сложных условий. Вместо вложенных
if — чистый и читаемый код.Property pattern
Проверяет свойства объекта прямо в условии:
if (weapon is { Ammo: 0, IsReloading: false })
{
// Оружие без патронов и не перезаряжается:
StartReload();
}Tuple pattern
Идеален для проверки нескольких значений одновременно:
string result = (x, y) switch
{
(0, 0) => "Точка в начале координат",
( > 0, > 0) => "Точка в первой четверти",
( < 0, _) => "Точка слева от оси Y", // _ — любое значение
_ => "Точка в другой области"
};
Где использовать?
• Вместо громоздких
if/else для состояний объекта • Для обработки входных данных (например, результат метода)
• В
switch выражениях для возврата значений Важно!
• Работает в
is, switch и switch-выражениях (как выше) •
_ — это discard (игнорирование значения) • В property pattern можно проверять вложенные свойства:
Player { Health: { Current: 0 } } 💡 Используй эти паттерны для чистого и безопасного кода. Сокращай количество строк и повышай читаемость!
Пост предложил @u006E10011
#CSharp #Unity #Programming #PatternMatching #UnityDev
❤8🔥3 1