Avatar ·

Comment parser du JSON en Kotlin : meilleures bibliothèques et exemples de code

Bonjour, collègues ! Je viens de commencer à apprendre Kotlin après Java et j'ai rencontré une tâche typique : il faut parser une chaîne JSON en objet. En Java, j'utilisais Gson ou Jackson, mais en Kotlin, je veux le faire de manière élégante et idiomatique. J'ai ce JSON provenant d'une API :
{
  "userId": 1,
  "id": 1,
  "title": "delectus aut autem",
  "completed": false
}
J'ai essayé d'utiliser le JSONObject intégré du SDK Android, mais le code devient horrible :
val jsonString = """{"userId":1,"id":1,"title":"delectus aut autem","completed":false}"""
val jsonObject = JSONObject(jsonString)
val userId = jsonObject.getInt("userId")
val id = jsonObject.getInt("id")
val title = jsonObject.getString("title")
val completed = jsonObject.getBoolean("completed")
C'est un véritable enfer ! Pour chaque champ, il faut écrire un appel séparé, il est facile de se tromper dans le nom du champ, et les types doivent être spécifiés manuellement. Et si le JSON est imbriqué ou contient des tableaux, c'est un cauchemar. Conseillez-moi