работа с null всегда была источником ошибок. Каждый хоть раз ловил NullReferenceException в рантайме.
Есть два подхода: старый — вручную проверять null, и новый — использовать nullable reference types с поддержкой компилятора.
Код с ручной проверкой на null:
public string GetUserName(User? user)
{
if (user == null)
return "Anonymous";
return user.Name;
}
Плюсы:
• просто и понятно
• работает везде
Минусы:
• легко забыть проверить
• ошибки проявятся только в рантайме
С включённой фичей #nullable enable компилятор начинает помогать:
public string GetUserName(User? user)
{
return user?.Name ?? "Anonymous";
}
•
User?
явно говорит: объект может быть null• компилятор подсветит, если забыли проверить
• меньше бойлерплейта, больше читаемости
#sharp_view
Please open Telegram to view this post
VIEW IN TELEGRAM
1❤🔥5🥱5❤3