Android™ Java® oli ihan viime aikoihin saakka se ainoa oikea ohjelmointikieli Android-sovelluskehityksessä. Nykyisin työkaluvalikoima on laajempi, sisältäen aiemmin mainitun Kotlinin™ lisäksi mm. myös Web-pinon ratkaisuja. Jos vaihtoehtoja löytyy ja Kotlin nakertaa rivakasti Javan osuutta työkalumarkkinoista, mikä oikein on Javan nykytilanne? Lisäksi monia askarruttaa nopean muutoksen syy; uskaltaako Javaan enää nykyisin edes tarttua?
Teknisestä perspektiivistä katsottuna Androidin Java-tuki laahaa jäljessä Java SE -versioon verrattuna. Tätä kirjoitettaessa Android-tuki kattaa kaikki Javan ominaisuudet versiosta 7, mutta vain osan Java 8:n ominaisuuksista. Tässä yhteydessä kannattaa muistaa, että Java 8 julkaistiin yli kuusi vuotta sitten, eikä sitä uudempiakaan ominaisuuksia ole sittemmin näkynyt.
Mitä merkitystä ohjelmointikielen viimeisimpien teknisten ominaisuuksien puuttumisella sitten on? Android-sovelluksia on kuitenkin kehitetty Javalla maailman sivu, ilman sen suurempia ohjelmointikielen asettamia rajoitteita. Korkean tason yhteenvetona: käytännössä kyse on edistyneistä työkaluista, jotka auttavat sovelluskehittäjää luomaan ja ylläpitämään parempia sovelluksia aiempaa pienemmällä vaivalla.
Teknologiapäätöksiä tehdessä kannattaa myös ehdottomasti ottaa huomioon ei-tekninen Java-aspekti. Kun kyse kuitenkin on Googlesta ja Javasta, asiantuntijoiden mieleen hiipii väistämättä ajatus, että yhä jatkuvalla oikeudenkäynnillä Oraclen kanssa saattaisi olla Javan Android-tulevaisuuden suhteen merkitystä. Asiassa piti olla istunto maaliskuun 24. päivä, mutta se siirrettiin tulevaisuuteen koronaepidemian takia.
Punoksen mielipide
Mihin lokeroon laitetaan työkalu, jolla on alustalla menestyksekästä historiaa pitkästi yli kymmenen vuotta, on yhä laajalti käytössä, mutta jonka voidaan perustellusti spekuloida olevan jo elinkaarensa ehtoopuolella? Kysymystä vaikeuttaa lisäksi se, ettei kyseisen työkalun käytön suhteen sinällään ole teknisiä esteitä.
Uutta Android-sovellusta ei tulisi ilman pakottava syytä enää aloittaa Javalla. Tässä suhteessa vaakakupissa painavat Kotlinin hyvien puolten lisäksi Googlen oma virallinen kannanotto asiaa vastaan: “If you’re starting a new project, you should write it in Kotlin; code written in Kotlin often mean much less code for you – less code to type, test, and maintain.” Erityisesti, samassa blogijulkaisussa kerrottiin Googlen itsensä julkaisevan uusia Jetpack-ominaisuuksia ensiksi Kotlinilla.
Android Java on siis lähinnä ylläpitomoodin väline. Java sopii tätä nykyä parhaiten aiemmin Javalla tehtyjen sovellusten korjailuun. Uusien ominaisuuksien toteuttamisessa tulisi vakavasti harkita Kotlinia, hieman uuden ominaisuuden koosta ja vaativuudesta riippuen.
Androidista Appleen
Seuraavassa osassa siirrymme kokonaan toiselle alustalle: omenamaailmaan. “Ohjelmointikielet Suomen mobiilikehityksessä 2020” -artikkelikokoelman seuraavassa osassa käsitellään iOS Swiftiä® . Tiesitkö, että Swiftin ja Objective-C:n® tilanne muistuttaa hyvin paljon aikaisemmissa osissa esiteltyjen Kotlinin ja Javan tilannetta?
Kotlin on Kotlin Foundationin tavaramerkki. Android on Google LLC:n tavaramerkki. Java on Oracle Corporationin rekisteröity tavaramerkki. Swift, Objective-C, OS X ja Xcode ovat Applen rekisteröityjä tavaramerkkejä. Linux on Linus Torvaldsin rekisteröity tavaramerkki.