На этом шаге мы приведем общие сведения о сопрограммах или корутинах.
Android-приложения могут выполнять самые разные функции. Например, может понадобиться, чтобы приложение скачивало данные, обращалось к базам данных или к веб-службам. Это полезные операции, но они требуют времени для выполнения. Очень нежелательно, чтобы пользователь сидел и ждал, пока приложение завершит операцию, прежде чем сможет продолжить работу с ним.
Сопрограммы, или корутины, позволяют выполнять операции в фоновом режиме, или асинхронно. Сопрограммы позволяют пользователю продолжать взаимодействовать с приложением, не дожидаясь завершения операций, выполняемых в фоновом режиме.
Сопрограммы гораздо эффективнее и проще в использовании, нежели решения, предлагаемые некоторыми другими языками программирования, такие как потоки выполнения в Java и некоторых других языках (с ними вы познакомитесь,начиная с этого шага). Сложный код может требовать пересылки результатов между потоками, что часто приводит к падению производительности ввиду той легкости, с которой можно "заблокировать" поток.
Начиная с этого шага вы добавите сопрограммы в ваше Android-приложение Samodelkin для получения новых характеристик персонажа из интернета.
На следующем шаге мы рассмотрим парсинг характеристик персонажа.