Cele mai bune cadre Python pentru dezvoltarea mobilă și modul de utilizare a acestora

ecosistemul Python are o gamă largă de biblioteci care acoperă aproape toate aspectele dezvoltării de software. Ceea ce este deosebit de interesant este faptul că unele dintre aceste biblioteci includ, de asemenea, instrumente pentru compilarea Python în cod nativ pentru platforme mobile specifice, cum ar fi iOS și Android. Da, ai auzit bine! Este posibil să utilizați Python pentru a crea aplicații mobile native.de ce Python pentru dezvoltarea mobilă?, Python este bine cunoscut pentru lizibilitatea și ușurința de utilizare, ceea ce se poate traduce într – o dezvoltare mai rapidă-un beneficiu imens pe piața mobilă, unde viteza de piață este esențială pentru câștigarea și menținerea cotei de piață. Pe de altă parte, Nici Android, nici iOS nu acceptă limbi interpretate, ceea ce înseamnă că nu pot rula nativ aplicații Python. Acolo, o serie de cadre elimină decalajul pentru a permite aplicațiilor Python să fie rulate pe dispozitive mobile cu un aspect și o senzație nativă.,

În acest tutorial, vom:

  • Identifica cele mai populare framework-uri pentru mobile cross-platform de dezvoltare în Python
  • a Învăța cum să creați o Aplicație simplă pentru iOS folosind Python cadre
  • de a Înțelege argumentele pro și contra de a folosi un cadru Python vs nativ iOS sau Android scule

Să începem.

cadre mobile Cross-Platform pentru Python

când vine vorba de dezvoltarea aplicațiilor mobile cross-platform care acceptă atât platformele Android cât și iOS folosind Python, există două opțiuni principale: Kivy și BeeWare.,

Kivy

Kivy se promovează ca o bibliotecă Python open source pentru dezvoltarea rapidă a aplicațiilor UI cross-platform. Are un motor grafic care este construit peste OpenGL, astfel încât să poată gestiona încărcările de lucru legate de GPU atunci când este necesar. De asemenea, are un proiect python-to-android care vă permite să portați aplicații Python pe Android. Are un set de instrumente similar pentru iOS, deși pachetele pentru iOS pot fi generate doar cu Python 2.7 în acest moment.,BeeWare este un alt set popular de instrumente care vă permit să scrieți aplicații în Python și să le compilați încrucișat pentru implementare pe mai multe sisteme de operare, inclusiv macOS, Windows și Linux GTK, precum și platforme mobile precum Android și iOS.

de exemplu, există un instrument numit servietă care vă permite să creați boilerplates de proiect pentru aplicații native specifice. Rubicon – C și Rubicon-Java oferă, de asemenea, interfețe bridge pentru utilizarea Python pentru a apela legăturile Objective-C și Java.,depozitul principal al BeeWare pare să fie actualizat în mod regulat și oferă, de asemenea, suport comercial care include instruire, consultanță și suport tehnic.pentru a încerca setul de instrumente BeeWare, haideți să creăm o aplicație mobilă de bază care face ceva simplu, cum ar fi selectarea specialului de cantină de astăzi ales la întâmplare dintr-o listă pre-populată.,

în Primul rând, vom începe prin crearea unui nou python3 mediu de dezvoltare:

$ python3 -m venv .env

Apoi, vom instala servieta instrument care ne va ajuta la crearea proiectului cod șabloane:

$ pip3 install briefcase

apoi, vom folosi servieta instrument pentru a crea un nou proiect:

$ briefcase new

Servieta oferă un mod interactiv pentru a vă ajuta să creați proiectul dumneavoastră de a vă solicita informații cheie:

La finalizarea, puteți rula proiect care a fost generat în scopul de a vedea aplicația nativă (Mac sau Windows) de reprezentare., În acest caz, un gol de fereastră modal este afișat:

$ cd foodTracker$ briefcase dev

Deoarece dorim aplicația noastră pentru a rula pe un dispozitiv iOS, trebuie să utilizați următoarea comandă în cadrul proiectului:

$ briefcase create iOS

În acest punct, avem nevoie de a instala aplicații Apple instrumente de dezvoltare (Xcode) pentru a continua.

odată ce Xcode este în loc, putem edita fișierul src/foodtracker/app.py și înlocuiți boilerplate cu cod care implementează aplicația noastră „daily special”:

după cum puteți vedea, codul în stil imperativ este utilizat pentru a construi elementele ferestrei., Am adăugat un element principal de cutie pentru a ține toate elementele copilului. Folosind composition, am adăugat un buton și o altă casetă de mesaje care conține un câmp de text readonly. Când un utilizator face clic pe buton, acesta va afișa o rețetă aleatorie în câmpul de text.în cele din urmă, definim fereastra principală și proprietățile sale în ultimele 3 linii ale metodei de pornire.acum putem construi proiectul nostru:

$ briefcase build iOS

pentru a vedea cum arată aplicația noastră pe desktop, putem folosi Xcode pentru a deschide proiectul și a-l rula într-un emulator iOS.,716b536″>

Aici este ceea ce vom vedea când vom rula emulatorul:

Rețineți că de fiecare dată când schimbăm codul nostru, va trebui să rulați următoarele comenzi pentru a vedea modificările în emulator:

$ briefcase update iOS$ briefcase build iOS$ briefcase run iOS

Python Mobil de Scule vs Nativ Scule

Acum că am văzut câteva exemple de crearea și construirea de aplicații mobile simple cu Python, o întrebare foarte importantă întrebarea:

de Ce ar trebui să investească în scris în Python aplicații mobile în loc de a folosi mobile standard limbi, cum ar fi Java sau Swift?,

pentru a răspunde la aceasta, trebuie să discutăm avantajele și dezavantajele utilizării Python pentru dezvoltarea mobilă.

Pros:

  • puterea Python: putem folosi puterea Python și a ecosistemului său cu cadrele Kivi și BeeWare. Acest lucru se dovedește a fi un avantaj considerabil dacă dvs. și echipa dvs. de dezvoltare sunteți deja familiarizați cu Python și trebuie doar să portați aplicațiile existente pe platformele mobile.
  • suport Cross-Platform: aceasta înseamnă că scriem aplicația noastră o dată și apoi o compilăm pentru diferite platforme, promovând reutilizarea.,

contra:

  • timp de compilare mai lent: se pare că bucla de dezvoltare este mai lungă decât de obicei datorită necesității de a rula instrumente suplimentare atunci când schimbăm ceva în codul nostru. Cu toate acestea, acest lucru ar putea fi îmbunătățit în viitor cu integrarea instrumentelor sau Scripturile de automatizare.caracteristici Mai puțin acceptate: Google și Apple vor promova întotdeauna instrumentele lor native mai întâi decât alternativele. Utilizatorii de cadre non-native vor fi limitați de oricare dintre cele mai recente versiuni (de exemplu) implementate de Kivy/BeeWare., Va trebui să fiți în partea de sus a listei de probleme curente și a limitărilor versiunii curente pentru a rezolva problemele pe care le vedeți într-o manieră promptă.
  • incoerență: deoarece nu toate caracteristicile sunt acceptate, vor exista neconcordanțe între diferite platforme. De exemplu, este posibil să aveți un aspect care se afișează diferit în Android față de iOS. Astfel, va trebui să pună în aplicare mai multe soluții pentru a face modele coerente.

în general, utilizarea codului imperativ pentru a descrie interfețele utilizatorului necesită mai mult efort., Aceste fluxuri de lucru sunt de obicei mai ușor de implementat în editorii încorporați ai Apple Xcode sau Android Studio.cu toate acestea, există avantaje semnificative de reutilizare a codului în utilizarea Python pentru o astfel de lucrare și există o mulțime de aplicații scrise în Python pe care le puteți folosi ca exemple. dacă organizația dvs. are în vedere scrierea aplicațiilor în Python și compilarea încrucișată a acestora în platforme native precum iOS sau Android, ar trebui să evaluați cu atenție argumentele pro și contra înainte de a continua.,

pașii următori

pentru a începe cu cadrele de dezvoltare mobilă din această postare, creați un cont gratuit pe platforma ActiveState și apoi descărcați construirea noastră „dezvoltare mobilă”. Construi conține o versiune de Python 3.7 și cadrele din acest post, astfel încât să le puteți testa pentru tine.notă: cel mai simplu mod de a instala mediul este să instalați mai întâi interfața liniei de comandă a platformei ActiveState (CLI), instrumentul de stare.,

Odată ce Instrumentul este instalat, trebuie doar să rulați următoarea comandă pentru a descărca construi și instala automat într-un mediu virtual:
state activate Pizza-Team/Mobile-Development

Bloguri Legate de:

Top 10 Python Cadre pentru Dezvoltare Web,

Top 10 Pachete Python Fiecare Producător ar Trebui să Învețe

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *