Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
    • Help
    • Support
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
FuryLion Courses. Unity
FuryLion Courses. Unity
  • Project overview
    • Project overview
    • Details
    • Activity
  • Analytics
    • Value Stream Analytics
  • Wiki
    • Wiki
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Public Documentation
  • FuryLion Courses. UnityFuryLion Courses. Unity
  • Wiki
  • Прогноз погоды

Прогноз погоды

Last edited by Evgeniy Melnikov Mar 24, 2023
Page history

Требуется разработать консольное приложение, которое позволяет в удобном виде получить погоду для определенного города.

Требования к функционалу приложения:

  • возможность получить текущую погоду определенного города;
  • возможность получить прогноз погоды на 5 дней для определенного города;
  • выбор города из заранее заготовленного списка (enum) (5 городов);
  • возможность получить погоду для города, который отсутствует в enum (ввод с клавиатуры);
  • информацию о погоде требуется выводит в максимально красивом виде.

Реализация:

Для реализации требуется использовать Rest API сервиса OpenWheaterMap.
Для общения с сервисом требуется зарегистрироватся и получить API ключ.
Сервис возвращает информацию в JSON виде.

Требуется создать классы или структуры для данной схемы данных и десериализовать с помощью библиотеку Newtonsoft.Json.NET.

Для получения результата от сервиса требуется использовать асинхронный способ общения через делегаты или async/await.
Например:

public void DownloadWeather(string cityName, Action<WeatherData> received) 
{
	// Получаем данные с сервиса...
	// Когда данные будут получены, вызываем делегат received?.Invoke(data)
	// ...
}

public void DownloadForecast(string cityName, Action<WeatherData> received) 
{
	// Получаем данные с сервиса...
	// Когда данные будут получены, вызываем делегат received?.Invoke(data)
	// ...
}

Требования для выполнения задания:

  • обработать исключения (try..catch);
  • обработать коды состояний сервиса;
  • следовать соглашению о написании C# кода.
Clone repository
  • FuryLion UI System
  • Home
  • Project 3
  • SkyRoads
  • Unity Canvas Масштабируемый интерфейс
  • csharp interview task
  • match 3 with draw mechanic
  • project 4
  • zenject
  • Введение в язык программирования C#
  • Вращение камеры
  • Изучение основ скриптинга Unity
  • Подготовка к выполнению
  • Построение дома
  • Прогноз погоды
More Pages