Ohjelmointi

Suunnitelma tuoda Java iOS: lle

OpenJDK-yhteisössä kelluva ehdotus pyrkii käynnistämään Java-sovelluksen Applen iOS: ssä. Suunnitelma sisältää uuden työn aloittamisen OpenJDK Mobile -hankkeessa, jonka tarkoituksena on rakentaa OpenJDK-luokat ja sovellusliittymä iOS: lle ja Androidille, kertoi Johan Vos, mobiilikehittäjä Gluonin johtaja.

Vos lähetti äskettäin näihin ponnisteluihin liittyvän tiedotteen. OpenJDK Mobile keskittyy tarjoamaan samat sovellusliittymät OpenJDK-lähdetietovaraston uusimmassa versiossa iOS: lle ja Androidille hyödyntämällä Java-kehittäjille tuttuja työkaluja. Ensimmäinen painopiste on kuitenkin iOS: ssä, josta puuttuu perinteinen Java-tuki. Apple ei ole antanut Java-virtuaalikoneen toimia alustalla.

Uusi OpenJDK Mobilen suunnitelma merkitsisi GraalVM: n etukäteen laaditun kääntäjän käyttämistä koodin kääntämiseen rakennuksen aikana. (Vos huomautti, että oikea-aikainen kokoaminen ei ole vaihtoehto iOS: ssä.) Käännetty Java-koodi voitaisiin sitten linkittää kohdekäyttöjärjestelmälle koottuihin natiivikirjastoihin suoritettavien tiedostojen luomiseksi. Tämä on jo tehty iOS 11: lle, joka perustuu Java 11: een. GraalVM Native Images- ja OpenJDK-luokkien avulla kehittäjät voivat luoda Applen sääntöjä noudattavia sovelluksia. Java-kehittäjien ei tarvitse oppia Objective-C: tä tai Swiftiä kirjoittamaan ohjelmistoja iOS: lle.

"Vaikka Java saattaa olla myöhässä mobiilipelissä, se, että se on alustojen välinen, luotu turvallisuuden kanssa keskeisenä kulmakivenä ja että se mahdollistaa turvallisen yhteyden pilvipalveluihin, tekee siitä todellisen vakavan kielen mobiilikehitykselle, ”Vos sanoi.

Javaa on käytetty Android-kehitykseen alusta alkaen. Android ei kuitenkaan ole Java 11 -yhteensopiva ja vaatii oman kehitystyökalunsa - Android Studion - ja menettelyt, Vos sanoi. Monilla kehittäjillä on vakavia ongelmia Java-projektien ja kirjastojen avulla Androidissa, hän sanoi.

Suunnitelmaan kuuluu myös OpenJDK-masterin synkronoitu haarukka, joka luotiin Project Skaralla. Skara-pohjainen arkisto hyödynnettäisi OpenJDK: n rakentamista iOS: lle ja Androidille.

Javan tuominen iOS: lle on ollut useiden projektien tavoite viimeisen vuosikymmenen aikana. Muita ponnisteluja olivat Gluonin oma Eclipse-laajennus ja nyt lakannut RoboVM-työkalu.