Kotlin Multiplatform Academy · Oppitunti

@SerialName ja mukautettu kenttien yhdistäminen

Yhdistä Kotlin-nimet poikkeaviin JSON-avaimiin

Oppitunti 2/413 vaihetta

@SerialName ja mukautettu kenttien yhdistäminen on ilmainen Kotlin Multiplatform Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Kotlin Multiplatform Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Kotlin Multiplatform Academy-kurssilla on yhteensä 4 oppituntia.

Nimet eivät aina täsmää

Oikeat rajapinnat suosivat usein user_name-avainten kaltaisia nimiä, kun taas Kotlin suosii userName-muotoa. @SerialName antaa näiden poiketa toisistaan ongelmitta.

Nimeä yksi kenttä uudelleen

Sijoittakaa @SerialName-annotaatio ominaisuuden yläpuolelle ja kertokaa serialisoijalle, mihin JSON-avaimeen ominaisuus todella yhdistyy.

@SerialName("user_name") val userName: String

Kotlin säilyy idiomattisena

Koodinne säilyttää selkeät camelCase-nimet, kun taas siirtomuoto säilyttää backendin valitsemat nimet. Molemmat osapuolet voittavat.

Snake case on yleinen

Monissa JSON-rajapinnoissa käytetään snake_case-nimeämistä, joten created_at-kentän yhdistäminen createdAt-ominaisuuteen on yksi yleisimmistä käyttötapauksista.

@SerialName("created_at") val createdAt: String

Varattujen sanojen yhdistäminen

Jos JSON sisältää esimerkiksi type-avaimen, joka on ristiriidassa nimeämistyylinne kanssa, @SerialName antaa teidän nimetä ominaisuuden parhaaksi katsomallanne tavalla.

@SerialName("type") val kind: String

Toimii jokaisessa kentässä

Voitte merkitä haluamanne määrän ominaisuuksia ja yhdistää uudelleennimettyjä sekä oletusnimisiä kenttiä samaan data class -luokkaan.

Enum-arvojenkin uudelleennimeäminen

@SerialName toimii myös enum-vakioissa, joten ACTIVE-arvo voidaan serialisoida rajapinnan odottamaksi pienaakkosilla kirjoitetuksi merkkijonoksi.

@SerialName("active") ACTIVE

Maailmanlaajuinen nimeämisstrategia

Jos jokainen avain on snake_case-muodossa, voitte määrittää JsonNamingStrategy-strategian kerran sen sijaan, että merkitsisitte jokaisen kentän erikseen.

Json { namingStrategy = JsonNamingStrategy.SnakeCase }

Annotaatiolla on etusija

Kun sekä maailmanlaajuinen strategia että eksplisiittinen @SerialName koskevat samaa kenttää, annotaatio ohittaa strategian kyseisen kentän kohdalla.

Sama luokka molempiin suuntiin

Mukautetut nimet vaikuttavat sekä enkoodaukseen että dekoodaukseen, joten yksi annotaatiolla merkitty model hoitaa JSON-tietojen lukemisen ja kirjoittamisen.

Irti taustajärjestelmästä

Kun yhdistätte avaimet eksplisiittisesti, taustajärjestelmän tekemä uudelleennimeäminen muuttaa vain yhtä annotation-merkintää koko koodikannan sijaan.

Pikatarkistus

Miten yhdistätte JSON-avaimen erinimiseen Kotlin-ominaisuuteen?

Kertaus

Käyttäkää @SerialName-merkintää yhdistämään toisistaan poikkeavat JSON-avaimet idiomaattisiin Kotlin-nimiin kentissä ja enum-arvoissa tai määrittäkää koko malleille maailmanlaajuinen nimeämisstrategia.

Aloita maksutta

Opi Kotlin tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
30
Oppitunnit
120

Usein kysytyt kysymykset

Onko oppitunti ”@SerialName ja mukautettu kenttien yhdistäminen” ilmainen?

Kyllä – oppitunnin ”@SerialName ja mukautettu kenttien yhdistäminen” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Kotlin Multiplatform Academy-kurssin, päivitä CoddyKit PROhon. Kotlin Multiplatform Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”@SerialName ja mukautettu kenttien yhdistäminen”?

Yhdistä Kotlin-nimet poikkeaviin JSON-avaimiin Harjoittelet Kotlin Multiplatform Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Kotlin Multiplatform Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Kotlin Multiplatform Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.

Kuinka kauan ”@SerialName ja mukautettu kenttien yhdistäminen”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Kotlin Multiplatform Academy-oppitunnilla?

Kyllä. Jokainen Kotlin Multiplatform Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. @Serializable-datamallit
  2. @SerialName ja mukautettu kenttien yhdistäminen
  3. Nullable-, oletus- ja valinnaiset kentät
  4. Serialisoinnin liittäminen Ktoriin
← Takaisin: Kotlin Multiplatform Academy