Χάρη στην εξέλιξη και την άνοδο του machine learning, η γλώσσα προγραμματισμού Python χρησιμοποιείται όλο και περισσότερο από τους προγραμματιστές, χωρίς όμως να έχει θέση μέχρι στιγμής στα κινητά τηλέφωνα. Μέχρι στιγμής όμως εφαρμογές οι οποίες είναι γραμμένες σε γλώσσα προγραμματισμού Python, δεν έχουν την δυνατότητα να «τρέξουν» σε λειτουργικό Android.
Σύμφωνα με έγκυρες δημοσιεύσεις από τον δημιουργό της Python, Guido van Rossum, και από κάποιους προγραμματιστές της, πιστεύουν ότι οι εφαρμογές που είναι γραμμένες στην γλώσσα προγραμματισμού Pythοn, κάποια μέρα ενδέχεται να υποστηρίζονται σε iOS και Android λειτουργικά συστήματα.

Το ανοιχτού-κώδικα project BeeWare
Ο Russell Keith Magee, επικεφαλής του BeeWare, είναι αυτός που δίνει την ελπίδα ότι η Python θα μπορούσε να έρθει και στα κινητά. Το BeeWare μεταφέρει το CPython στο Android, έτσι ώστε οι εφαρμογές που έχουν γραφτεί στην Pythοn να εκτελούνται αυτόματα και στο Android. Το CPython θα είναι η εφαρμογή αναφοράς του ανοιχτού κώδικα της γλώσσας Python και θα χρησιμοποιείται σε Jython, που έχει γραφτεί σε Java και βασίζεται σε Java Virtual Machine (JVM).
Στόχος του BeeWare είναι να επιτρέπει στους προγραμματιστές να γράφουν τα προγράμματα σε Python και να μπορούν να εκτελούν τον κώδικα παντού χρησιμοποιώντας τα εργαλεία user interface(UI). Στόχος είναι να βοηθήσει τους προγραμματιστές να γράψουν εφαρμογές Pythοn με βάση τους κώδικες που εκτελούνται σε iOS, Android, Windows, macOS, Linux, browsers, και tvOS.
Τον Φεβρουάριο ο Keith Magee ανακοίνωσε το πρώτο σημαντικό θεμέλιο για το λειτουργικό Android αφού έβαλε μία καθαρά Python εφαρμογή να τρέξει σε συσκευή Android. Έκανε την επίσημη ενημέρωση στη συνδιάσκεψη της Python 2020, η οποία έγινε διαδικτυακά φέτος λόγω της πανδημίας του ιού Covid-19.
Γιατί η επιλογή του BeeWare;
Η κύρια στρατηγική του BeeWare για το Android, ήταν να μετατρέψει την Pythοn σε Java Bytecode, πλέον όμως ο πυρήνας του Android έχει μεγαλύτερη αντοχή και οι συσκευές είναι πολύ πιο γρήγορες για να υποστηρίξουν το CPython. Για τους απλούς προγραμματιστές Python, το περιβάλλον των κινητών είναι ένας ξένος πλανήτης. Δεν υφίστανται υποδιεργασίες, υποδοχείς, αγωγοί και το πιο σημαντικό είναι ότι τα σήματα συμπεριφέρονται εντελώς διαφορετικά από ένα απλό Unix.
Το μεγαλύτερο εμπόδιο ήταν το τεράστιο μέγεθος των εφαρμογών Android που γράφονται σε Python, γιατί απαιτούν το δικό τους Python runtime, που σημαίνει ότι η Pythοn έπρεπε να συρρικνωθεί για να μπορεί να μπει στα κινητά. Η λύση που προτάθηκε και αντικειμενικά είναι και η βέλτιστη, είναι να κατασκευαστεί ένας «απογυμνωμένος πυρήνας» της Python, κάτι που θα μπορούσε να λύσει πολλές από τις προκλήσεις, σε συνδυασμό με ένα πακέτο εγκατάστασης (pip) που επιτρέπει στους προγραμματιστές να εγκαθιστούν πακέτα για μια ολόκληρη πλατφόρμα αντί για ένα μεμονωμένο σύστημα.
Πόσο χρήσιμο θα είναι τελικά;
Η Python δεν έχει σχεδιαστεί για να υποστηρίζεται από κινητά, παρόλο που στις μέρες μας τα κινητά τηλέφωνα είναι αρκετά γρήγορα και με πολλές βελτιώσεις. Σοφά λοιπόν κάποιος θα αναρωτιόταν, για ποιο λόγο η Python δεν υποστηρίζεται από τα κινητά. Το Pythοn Software Foundation για να αντιμετωπίσει αυτό το μειονέκτημα επιχορήγησε το BeeWare με $50.000, για να ισοσταθμίσει το επίπεδο υποστήριξης του Android με τα εργαλεία του iOS. H σύνδεση του Android CPython, θα πρέπει να υποστηρίζει τις τελευταίες εκδόσεις Android, από την έκδοση 4.4 και έπειτα.
Όπως αναφέρει ο Ned Deily, ο βασικός προγραμματιστής της Python στο PSF, υπάρχουν ακόμα πολλά εμπόδια, όπως το ότι η παροχή υποστήριξης για τα κινητά θα κοστίσει πολλά περισσότερα χρήματα και θα χρειαστούν αρκετά παραπάνω άτομα από ότι σε άλλα έργα της Pythοn.
Πηγή: https://www.techzine.eu