Les meilleurs frameworks Python pour le développement mobile et comment les utiliser

L’écosystème Python dispose d’une vaste gamme de bibliothèques qui couvrent presque tous les aspects du développement logiciel. Ce qui est particulièrement intéressant, c’est que certaines de ces bibliothèques incluent également des outils pour compiler Python en code natif pour des plates-formes mobiles spécifiques telles que iOS et Android. Oui, vous avez bien lu! Il est possible d’utiliser Python pour créer des applications mobiles natives.

pourquoi Python pour le développement mobile?, Python est bien connu pour sa lisibilité et sa facilité d’utilisation, ce qui peut se traduire par un développement plus rapide – un énorme avantage sur le marché mobile où la vitesse de commercialisation est essentielle pour gagner et conserver des parts de marché. D’autre part, ni Android ni iOS ne prennent en charge les langages interprétés, ce qui signifie qu’ils ne peuvent pas exécuter nativement des applications Python. C’est là qu’un certain nombre de frameworks comblent le fossé pour permettre aux applications Python d’être exécutées sur des appareils mobiles avec un aspect natif.,

dans ce tutoriel, nous allons:

  • identifier les frameworks les plus populaires pour le développement mobile multiplateforme en Python
  • apprendre à créer une application simple pour iOS en utilisant des frameworks Python
  • comprendre les avantages et les inconvénients de l’utilisation d’un framework Python par rapport aux outils iOS ou Android

    Frameworks mobiles multiplateformes pour Python

    Lorsqu’il s’agit de développer des applications mobiles multiplateformes prenant en charge les plates-formes Android et iOS utilisant Python, il y a deux choix principaux: Kivy et BeeWare.,

    Kivy

    Kivy se présente comme une bibliothèque Python open source pour le développement rapide d’applications D’interface utilisateur multiplateforme. Il dispose d’un moteur graphique construit sur OpenGL, ce qui lui permet de gérer les charges de travail liées au GPU lorsque cela est nécessaire. Il a également un projet python vers android qui vous permet de porter des applications Python vers Android. Il a une boîte à outils similaire pour iOS, bien que les paquets pour iOS ne puissent être générés qu’avec Python 2.7 pour le moment.,

    BeeWare

    BeeWare est un autre ensemble populaire d’outils qui vous permettent d’écrire des applications en Python et de les compiler de manière croisée pour un déploiement sur plusieurs systèmes d’exploitation, y compris macOS, Windows et Linux GTK, ainsi que des plates-formes mobiles comme Android et iOS.

    par exemple, il existe un outil appelé briefcase qui vous permet de créer des boilerplates de projet pour des applications natives spécifiques. Rubicon-C et Rubicon-Java fournissent également des interfaces de pont pour utiliser Python pour appeler les liaisons Objective-C et Java, respectivement.,

    Le référentiel principal de BeeWare semble être mis à jour régulièrement, et ils fournissent également un support commercial qui comprend la formation, le Conseil et le support technique.

    application mobile Python avec BeeWare

    pour essayer la boîte à outils BeeWare, créons une application mobile de base qui fait quelque chose de simple comme sélectionner la cafétéria spéciale d’aujourd’hui choisie au hasard dans une liste pré-remplie.,

    tout d’abord, nous commençons par créer un nouvel environnement de développement python3:

    $ python3 -m venv .env

    ensuite, nous installons l’outil briefcase qui nous aidera à créer le code standard du projet:

    $ pip3 install briefcase

    ensuite, nous utilisons l’outil briefcase pour créer un 41154161ff »>

briefcase fournit un moyen interactif de vous aider à créer votre projet en vous demandant des informations clés:

Une fois terminé, vous pouvez exécuter le projet généré afin de voir la représentation native de l’application (Mac ou Windows)., Dans ce cas, une fenêtre modale vide s’affiche:

$ cd foodTracker$ briefcase dev

puisque nous voulons que notre application fonctionne sur un appareil iOS, nous devons utiliser la commande suivante dans le projet:

$ briefcase create iOS

à ce stade, nous les outils de développement d’applications d’Apple (Xcode) afin de continuer.

Une fois que Xcode est en place, Nous pouvons éditer le fichier src/foodtracker/app.py et remplacez le Passe-Partout par du code qui implémente notre application « daily special”:

comme vous pouvez le voir, le code de style impératif est utilisé pour construire les éléments de la fenêtre., Nous avons ajouté un élément de boîte principale pour contenir tous les éléments enfants. En utilisant la composition, nous avons ajouté un bouton et une autre boîte de message contenant un champ de texte en lecture seule. Lorsqu’un utilisateur clique sur le bouton, il affiche une recette aléatoire dans le champ de texte.

Enfin, nous définissons la fenêtre principale et de ses propriétés dans les 3 dernières lignes de la méthode de démarrage.

Maintenant, nous pouvons construire notre projet:

$ briefcase build iOS

Pour voir ce que notre application ressemble sur notre bureau, nous pouvons utiliser Xcode pour ouvrir le projet et l’exécuter dans un émulateur iOS.,716b536″>

Voici ce que nous verrons lorsque nous exécuterons l’émulateur:

notez que chaque fois que nous changeons notre code, nous devrons exécuter les commandes suivantes pour voir les changements dans l’émulateur:

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

Python Mobile Tooling vs maintenant que nous avons vu quelques exemples de création et de création d’applications mobiles simples avec Python, une question très importante se pose:

pourquoi devriez-vous investir dans l’écriture d’applications mobiles Python au lieu d’utiliser des langages mobiles standard comme java ou SWIFT?,

pour répondre à cela, nous devons discuter des avantages et des inconvénients de L’utilisation de Python pour le développement mobile.

avantages:

  • La puissance de Python: nous pouvons tirer parti de la puissance de Python et de son écosystème avec les frameworks Kivi et BeeWare. Cela s’avère être un avantage considérable si vous et votre équipe de développement êtes déjà familiarisés avec Python et avez juste besoin de porter vos applications existantes sur des plates-formes mobiles.
  • support multiplateforme: cela signifie que nous écrivons notre application Une fois, puis la compilons pour différentes plates-formes, favorisant la réutilisabilité.,

inconvénients:

  • temps de Compilation plus lent: il semble que la boucle de développement soit plus longue que d’habitude en raison de la nécessité d’exécuter des outils supplémentaires lors de la modification de quelque chose dans notre code. Cependant, cela pourrait être amélioré à l’avenir avec des intégrations d’outils ou des scripts d’automatisation.
  • fonctionnalités moins prises en charge: Google et Apple feront toujours la promotion de leurs outils natifs en premier lieu par rapport aux alternatives. Les utilisateurs de frameworks non natifs seront limités par la version la plus récente de (par exemple) Kivy/BeeWare mise en œuvre., Vous devrez être au – dessus de la liste des problèmes actuels et des limitations de la version actuelle afin de résoudre les problèmes que vous voyez de manière rapide.
  • incohérence: comme toutes les fonctionnalités ne sont pas prises en charge, il y aura des incohérences entre les différentes plates-formes. Par exemple, vous pouvez avoir une mise en page qui s’affiche différemment dans Android par rapport à iOS. Ainsi, vous devrez peut-être implémenter de nombreuses solutions de contournement pour rendre les conceptions cohérentes.

en général, l’utilisation de code impératif pour décrire les interfaces utilisateur nécessite plus d’efforts., Ces flux de travail sont généralement plus faciles à implémenter dans les éditeurs intégrés de Xcode D’Apple ou D’Android Studio.

cependant, il y a des avantages significatifs de réutilisation de code à utiliser Python pour un travail comme celui-ci, et il y a beaucoup d’applications écrites en Python que vous pouvez utiliser comme exemples.

Si votre organisation envisage d’écrire des applications en Python et de les compiler entre elles sur des plates-formes natives comme iOS ou Android, vous devez évaluer attentivement les avantages et les inconvénients avant de continuer.,

prochaines étapes

pour commencer avec les frameworks de développement mobile dans cet article, créez un compte de plateforme ActiveState gratuit, puis téléchargez notre version « développement Mobile”. La version contient une version de Python 3.7 et les frameworks de cet article afin que vous puissiez les tester par vous-même.

remarque: le moyen le plus simple d’installer l’environnement est d’installer D’abord L’interface de ligne de commande (CLI) de la plateforme ActiveState, L’outil D’État.,

une Fois que l’État de l’Outil est installé, il suffit d’exécuter la commande suivante pour télécharger et installer automatiquement dans un environnement virtuel:
state activate Pizza-Team/Mobile-Development

des Blogs:

Le Top 10 des Python Cadres pour le Développement Web

Top 10 des Paquets Python Chaque Développeur Doit Apprendre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *