Kotlin-də JSON işləmək üçün adətən hansı frameworklər istifadə olunur?
sobes.tech Süni İntellekt
AI-dan cavab
Kotlin-də JSON işləmə üçün adətən aşağıdakı frameworklər istifadə olunur:
-
Kotlin Serialization: JetBrains-in yerli kitabxanası, kompilyator ilə inteqrasiya olunur. JSON, ProtoBuf, CBOR daxil olmaqla müxtəlif formatları dəstəkləyir. Məlumat siniflərinə annotasiyalar tələb edir.
import kotlinx.serialization.* import kotlinx.serialization.json.* @Serializable // Annotasiya data class User(val name: String, val age: Int) fun main() { val user = User("Alice", 30) val jsonString = Json.encodeToString(user) // Seriyalaşdırma println(jsonString) // Nəticə: {"name":"Alice","age":30} val decodedUser = Json.decodeFromString<User>(jsonString) // Deseriyalaşdırma println(decodedUser) // Nəticə: User(name=Alice, age=30) } -
Jackson: Güclü və yetkin framework, geniş konfiqurasiya imkanları və müxtəlif məlumat formatlarını dəstəkləyir. Java ekosistemində geniş istifadə olunur.
import com.fasterxml.jackson.databind.ObjectMapper data class User(val name: String, val age: Int) fun main() { val mapper = ObjectMapper() val user = User("Alice", 30) val jsonString = mapper.writeValueAsString(user) // Seriyalaşdırma println(jsonString) // Nəticə: {"name":"Alice","age":30} val decodedUser = mapper.readValue(jsonString, User::class.java) // Deseriyalaşdırma println(decodedUser) // Nəticə: User(name=Alice, age=30) } -
Gson: Google-dən başqa bir məşhur framework. İstifadəsi asandır, əksər tapşırıqlar üçün uyğundur.
import com.google.gson.Gson data class User(val name: String, val age: Int) fun main() { val gson = Gson() val user = User("Alice", 30) val jsonString = gson.toJson(user) // Seriyalaşdırma println(jsonString) // Nəticə: {"name":"Alice","age":30} val decodedUser = gson.fromJson(jsonString, User::class.java) // Deseriyalaşdırma println(decodedUser) // Nəticə: User(name=Alice, age=30) }
Layihə və üstünlüklərə əsasən framework seçilir. Kotlin Serialization adətən saf Kotlin layihələrində yerli inteqrasiyası sayəsində üstünlük təşkil edir. Jackson və Gson isə artıq layihədə istifadə olunursa və ya geniş funksionallıq və çevikliyə ehtiyac varsa yaxşı seçimlərdir.