ΑρχικήUpdatesPython: Σύντομα Python apps στο Android

Python: Σύντομα Python apps στο Android

Python: Σύντομα Python apps στο Android – Χάρη στην εξέλιξη και την άνοδο του machine learning, η γλώσσα προγραμματισμού Python χρησιμοποιείται όλο και περισσότερo από τους προγραμματιστές, χωρίς όμως να έχει θέση -μέχρι στιγμής- στα κινητά τηλέφωνα.

Βέβαια ο δημιουργός, Guido van Rossum, και κάποιοι προγραμματιστές της Python, πιστεύουν ότι οι εφαρμογές που είναι γραμμένες στην Pythοn, κάποια μέρα ενδέχεται να υποστηρίζονται σε iOS και Android.

Python: Σύντομα Python apps στο Android

Ο Russell Keith-Magee, επικεφαλής του BeeWare, είναι αυτός που δίνει την ελπίδα ότι η Python θα μπορούσε να έρθει και στα κινητά. Το BeeWare μεταφέρει το CPython στο Android, έτσι ώστε οι εφαρμογές που έχουν γραφτεί στην Pythοn να εκτελούνται αυτόματα και στο Android. Το CPython είναι reference implementation του ανοιχτού κώδικα της γλώσσας Python και χρησιμοποιείται σε Jython, που έχει γραφτεί σε Java και βασίζεται σε Java Virtual Machine (JVM).

Στόχος του BeeWare είναι να επιτρέπει στους προγραμματιστές να γράφουν τα προγράμματα σε Python και να μπορούν να εκτελούν τον κώδικα παντού χρησιμοποιώντας user interface tools(UI). Στόχος είναι να βοηθήσει τους προγραμματιστές να γράψουν εφαρμογές Pythοn με βάση τους κώδικες που εκτελούνται σε iOS, Android, Windows, macOS, Linux, browsers, και tvOS.

Τον Φεβρουάριο ο Keith-Magee ανακοίνωσε το πρώτο σημαντικό θεμέλιο για το λειτουργικό Android αφού έβαλε μία καθαρά Pythοn εφαρμογή να τρέξει σε συσκευή Android. Έκανε την ενημέρωση στη συνδιάσκεψη της Python 2020, η οποία έγινε διαδικτυακά φέτος λόγω της πανδημίας.

Ωστόσο η Python δεν έχει σχεδιαστεί για να υποστηρίζεται από κινητά. Το Pythοn Software Foundation για να αντιμετωπίσει αυτό το μειονέκτημα επιχορήγησε το BeeWare με $50.000, για να ισοσταθμίσει το επίπεδο υποστήριξης του Android με τα εργαλεία του iOS. H σύνδεση του Android CPython, θα πρέπει να υποστηρίζει τις τελευταίες εκδόσεις Android, από την έκδοση 4.4 και έπειτα.

Αρχικά, η στρατηγική του Beeware για το Android, ήταν να μετατρέψει την Pythοn σε Java Bytecode, πλέον όμως ο πυρήνας του Android έχει μεγαλύτερη αντοχή και οι συσκευές είναι πολύ πιο γρήγορες για να υποστηρίξουν το CPython. Για τους απλούς προγραμματιστές Python, το περιβάλλον των κινητών είναι ένας ξένος πλανήτης. Δεν υπάρχουν υπο-διεργασίες, υποδοχές, αγωγοί και τα σήματα συμπεριφέρονται εντελώς διαφορετικά από ένα απλό Unix.

Το μεγαλύτερο εμπόδιο ήταν το μέγεθος των εφαρμογών Android που γράφονται σε Python, γιατί απαιτούν το δικό τους Python runtime, που σημαίνει ότι η Pythοn έπρεπε να συρρικνωθεί για να μπορεί να μπει στα κινητά. Η λύση που πρότειναν μερικοί είναι να κατασκευαστεί ένας «απογυμνωμένος πυρήνας» της Python, κάτι που θα μπορούσε να λύσει πολλές από τις προκλήσεις, σε συνδυασμό με ένα πακέτο εγκατάστασης (pip) που επιτρέπει στους προγραμματιστές να εγκαθιστούν πακέτα για μια ολόκληρη πλατφόρμα αντί για ένα μόνο σύστημα.

«Η διαχείριση πιστοποιητικών TLS στο Android είναι ιδιαίτερα περίεργη. Για να περάσει το CPython test suite στο κινητό, πρέπει να παραλείψει πολλούς ελέγχους που χρησιμοποιούν fork ή spawn, σήματα, ή άλλα APIs που διαφέρουν ή λείπουν.»

Όπως αναφέρει ο Ned Deily, βασικός προγραμματιστής της Python στο PSF, υπάρχουν ακόμα πολλά εμπόδια, όπως το ότι η παροχή υποστήριξης για τα κινητά θα κοστίσει πολλά περισσότερα χρήματα και θα χρειαστούν αρκετά παραπάνω άτομα από ότι σε άλλα έργα της Pythοn.

SecNews
SecNewshttps://www.secnews.gr
In a world without fences and walls, who need Gates and Windows

Εγγραφή στο Newsletter

* indicates required

FOLLOW US

LIVE NEWS