Python-apps draaien binnenkort mogelijk op Android

Abonneer je gratis op Techzine!

Python-ontwikkelaars hopen binnenkort ook met de programmeertaal applicaties te bouwen die op mobiele devices draaien. Het open source-project Beeware moet hierbij helpen.

Python is één van de favoriete programmeertalen van ontwikkelaars voor het bouwen van applicaties. Tot nu toe kunnen in deze programmeertaal geschreven applicaties nog niet op mobiele devices draaien, zoals op Android.

Open-sourceproject Beeware

Het in februari gelanceerde Beeware moet hierin verandering gaan brengen. Concreet maakt dit project het mogelijk om CPython naar het mobiele besturingssysteem Android te porteren en daar dan native op draaien. CPython is de reference-implementatie van de open-source Python-taal die door andere implementaties als Jython wordt gebruikt. De CPython-versie is geschreven in Java en steunt op een Java virtuele machine (JVM). Python kan zo via een omweg op mobiele devices draaien.

Uiteindelijk moet Beeware het mogelijk maken dat ontwikkelaars in Python applicaties kunnen schrijven die de code op alle platformen kunnen laten draaien met behulp van user interface (UI) widgets. Hierbij kunnen ontwikkelaars dezelfde codebase gebruiken die op iOS, Windows, macOS, Linux, browsers en tvOS kunnen draaien.

Reden voor Beeware

Een belangrijke reden om straks Beeware te kunnen gebruiken, is dat tot nu toe Android-applicaties in Python een grote omvang hadden. Dit kwam doordat zij een eigen kopie van de Python runtime nodig hebben. Dit betekent weer dat Python voor mobiele applicaties moet worden verkleind. Een kernel-versie van de programmeertaal kan dit oplossen, in combinatie met een package installer waarmee ontwikkelaars packages voor een bepaald doelplatform kunnen installeren, in plaats van het systeem waarop ze draaien. Met Beeware moeten deze problemen verholpen worden.

Misschien overbodig

Ondanks de komst van Beeware zien veel specialisten nog wel beren op de weg om in de toekomst Python echt in te zetten voor mobiele platforms. Bovendien is Beeware misschien achterhaald. CPython zou nu al zelf op Android kunnen draaien, zonder dat Python naar Java-bytecode wordt gecompileerd. Devices zijn snel genoeg en ook de Android-kernel is geschikt om direct CPython op Android te draaien.