Код может падать, но не обязан. Исключения позволяют грамотно обрабатывать сбои, сохраняя логику и устойчивость приложения даже в непредсказуемых ситуациях.
В этом гайде:
• Покажем, как ловить только нужные ошибки;
• Объясним, зачем сообщать о сбое понятно;
• Научим защищать код от неожиданных ситуаций.
Работа с исключениями — это про надёжность, читаемость и уверенность в поведении твоего приложения.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤝16🔥15❤8👍2
Меньше бойлерплейта с primary constructors в C# 12!
Часто сервисы и модели обрастают полями DI и свойствами — код пухнет. В .NET 8 можно объявить всё прямо в заголовке класса.
Было ― вручную пишем конструктор и поля:
Стало ―
🔥 Главное —
➡️ C# Ready | #практика
Часто сервисы и модели обрастают полями DI и свойствами — код пухнет. В .NET 8 можно объявить всё прямо в заголовке класса.
Было ― вручную пишем конструктор и поля:
public class UserService
{
private readonly ILogger<UserService> _logger;
private readonly IUserRepo _repo;
public UserService(ILogger<UserService> logger, IUserRepo repo)
{
_logger = logger;
_repo = repo;
}
public Task<User?> GetAsync(Guid id) => _repo.FindAsync(id, _logger);
}
Стало ―
primary constructor + автоматические свойства:public class UserService(ILogger<UserService> Logger, IUserRepo Repo)
{
public Task<User?> GetAsync(Guid id) => Repo.FindAsync(id, Logger);
}
primary constructors вырезают шаблонный код: меньше строк, чище классы, быстрее читается ревью. Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥6❤4
Берём несколько строк с тратами, превращаем их в структуру и заставляем программу показать, какая категория незаметно съедает большую часть бюджета.
В этой задаче:
• Соберёшь простой отчёт о тратах прямо в консоли;
• Увидишь, на какие категории уходит больше всего денег;
• Почувствуешь, как сухие числа превращаются в понятную картину дня.
С такого мини-инструмента легко начать путь к более честному и осознанному ежедневному личному бюджету.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥6❤5🤝2
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥26❤11👍7🤝6
👍17🤝11🔥5😁5
Когда кнопки перестают напрямую ссылаться на игровую логику, интерфейс становится легче перестраивать и переносить между сценами.
В этом посте разбираем:
• События освобождают UI от лишних связей и настроек;
• Логика реагирует гибко и не зависит от конкретных экранов;
• Проект выдерживает изменения без поломок и переработок
Такой способ организации UI делает игру стабильнее, понятнее и легче расширяемой.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤17🔥12👍6🤝3😁1