Kotlin Multiplatform Academy · Oppitunti

Mitä yhteisestä stdlibistä EI löydy

JVM-kohtaiset API:t, joita commonMainissa tulee välttää

Oppitunti 4/413 vaihetta

Mitä yhteisestä stdlibistä EI löydy on ilmainen Kotlin Multiplatform Academy-oppitunti CoddyKitissä. Tämä on oppitunti 4/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.

Commonilla on rajoituksia

Kaikki Kotlinin API:t eivät ole monialustaisia. common-stdlib on harkittu osajoukko, ja monet tutut JVM-työkalut puuttuvat siitä.

Ei java.*-paketteja commonissa

Kaikki java-pakettien alla oleva on vain JVM:lle. Koodi kääntyy Androidissa, mutta iOS:n käännös rikkoutuu heti, kun se yrittää käsitellä sitä.

java.util.Date jää pois

Vanhoja java.util.Date- ja Calendar-tyyppejä ei ole jaetussa koodissa. Käyttäkää niiden sijaan kotlinx-datetimea.

Täällä ei ole tiedostoja tai polkuja

JVM:n file-API:t, kuten java.io.File, puuttuvat commonMain-lähdejoukosta. Tiedostojen käyttöön tarvitaan monialustainen kirjasto tai expect/actual-ratkaisu.

Reflektio on rajoitettua

Täysi reflection on JVM:n ominaisuus. Jaetussa koodissa käytettävissä on vain pieni osajoukko, joten suunnitelkaa ratkaisu ilman raskasta ajonaikaista introspektiota.

Säikeet toimivat eri tavoin

java.lang.Thread ei ole käytettävissä common-koodissa. Taustatyöhön käytetään coroutines-korutiineja, jotka ovat täysin monialustaisia.

Näin tunnistatte sudenkuopan

Jos import alkaa merkkijonolla java tai javax, se ei voi olla commonMain-lähdejoukossa. Tämä etuliite on varoitusmerkki.

import java.util.UUID

Kääntäjä huomauttaa virheestä

Kun JVM:lle tarkoitettu koodi sijoitetaan common-koodiin, koonti epäonnistuu nopeasti iOS-kohteen kohdalla unresolved reference -virheeseen. Se on hyödyllistä, ei pelottavaa.

Kaksi ratkaisua

Kun tarvitsette alustakohtaisen API:n, etsikää joko multiplatform-kirjasto tai käärikää API itse expect/actual-ratkaisulla kullekin kohteelle.

Pysykää turvallisella alueella

Käyttäkää common-koodissa Kotlinin stdlib-tyyppejä ja kotlinx-kirjastoja, niin jaettu kerros säilyy siirrettävänä kaikkialla. 🙂

Suunnitelkaa ennen koodaamista

Ennen logiikan jakamista kysykää, tarvitseeko se JVM-only-API:a. Jos tarvitsee, eristäkää se, jotta commonMain pysyy siistinä.

Pikatarkistus

Mikä import ei kuulu commonMain-lähdejoukkoon?

Kertaus

Välttäkää java.*-API:en käyttöä commonMain-lähdejoukossa. Käyttäkää stdlib-tyyppejä, kotlinx-kirjastoja tai expect/actual-ratkaisua, jotta jaettu koodi säilyy aidosti siirrettävänä.

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 ”Mitä yhteisestä stdlibistä EI löydy” ilmainen?

Kyllä – oppitunnin ”Mitä yhteisestä stdlibistä EI löydy” 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 ”Mitä yhteisestä stdlibistä EI löydy”?

JVM-kohtaiset API:t, joita commonMainissa tulee välttää 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 4/4.

Kuinka kauan ”Mitä yhteisestä stdlibistä EI löydy”-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. Merkkijonot, luvut ja kokoelmat kaikkialla
  2. map, filter ja fold jaetussa koodissa
  3. Päivämäärät kotlinx-datetime-kirjastolla
  4. Mitä yhteisestä stdlibistä EI löydy
← Takaisin: Kotlin Multiplatform Academy