Découvrez comment les nouveaux modules Python gratuits d’Embarcadero apportent la puissance et la flexibilité des frameworks GUI de Delphi à Python. VCL et FireMonkey (FMX) sont des bibliothèques GUI matures. VCL se concentre sur le développement Windows natif, tandis que FireMonkey apporte un puissant cadre d’interface graphique flexible à Windows, Linux, macOS et même Android. Ce webinaire vous présentera ces nouveaux modules Python gratuits et comment vous pouvez les utiliser pour créer des interfaces utilisateur graphiques avec Python. La partie 2 vous montrera comment cibler les applications d’interface graphique Android avec Python !
- Trouvez Delphi FMX pour Python sur GitHub ou installez-le via pip avec :
pip install delphifmx
- Diapositives [ Télécharger le PDF depuis GitHub ] [ Afficher sur Google Sides ] [ Afficher sur SlideShare ]
- Consultez la première partie sur Delphi VCL pour Python .
Table of Contents
Qui êtes vous?
● Les développeurs Python qui veulent une belle interface graphique
● Les développeurs Python curieux de Delphi
● Les développeurs Delphi qui veulent utiliser Python
● Les développeurs Delphi curieux des nouveautés
● Les autres développeurs curieux de Delphi et Python
Ce n’est pas une compétition
● Les développeurs ont plusieurs outils sur leur banc de travail
● Il s’agit de trouver le bon outil pour chaque tâche
● Avoir des outils spécialisés pour différentes tâches n’enlève rien aux outils préférés
● Vous pouvez toujours trouver une tâche spécifique pour laquelle un autre outil est meilleur, mais non un outil est celui qui convient le mieux à toutes les tâches.
Qu’est-ce que Delphi pour Python ?
- Ensemble de modules Python gratuits apportant les bibliothèques GUI de Delphi aux développeurs Python
- Mature, riche en fonctionnalités, natif et multiplateforme
- Ne nécessite pas l’utilisation de Delphi
- Basé sur l’open source Python4Delphi (la même technologie qui alimente l’IDE PyScripter)
- Disponible aujourd’hui sur GitHub & PyPi
- Actuellement en version bêta, mais prêt à l’emploi
- DelphiVCL pour Python prend en charge Windows (32 bits et 64 bits)
- DelphiFMX pour Python ajoute Linux, Android et Mac OS
- Partie d’un pont bidirectionnel entre Delphi et Python
Disséquer les piles technologiques
FMX Le multiplateforme (Framework FireMonkey)
- Tire parti des bibliothèques GPU pour fournir une interface utilisateur riche, accélérée par le matériel, rapide et esthétique sur plusieurs plates-formes :
- Windows, macOS, iOS, Android et Linux
- Utilise DirectX sur Windows, OpenGL sur Linux, OpenGL-ES sur Android et Metal sur iOS et macOS
- Similaire à VCL, mais non conçu pour être compatible
- Conçu comme une plate-forme croisée à partir de zéro
- Effets GPU intégrés, animations et système de style robuste
- Les services de plate-forme résument l’accès au matériel et aux fonctionnalités de la plate-forme pour adapter intelligemment l’interface utilisateur et l’expérience utilisateur aux spécificités de la plate-forme
- Système de composants très flexible – faire plus avec moins de composants
Delphi pour Python
Installation de Delphi FMX pour Python
- Installer via pip
pip install delphifmx
- Les soutiens:
- Architectures Win32 x86, Win64 x86, Linux64 x86, Android64, Mac OS x64 (Intel) et Mac M1 (Arm)
- Python cp3.6, cp3.7, cp3.8, cp3.9 et cp3.10 (sauf cp3.6 sous Linux et macOS)
- Prise en charge de Conda :
- Win x86 et x64 de Python cp3.6 à cp3.10
- Linux x86_64 de Python cp3.7 à cp3.9 (recommandé !)
- macOS n’est pas encore pris en charge
- Détails et téléchargements
Hello World (l’exemple le plus simple)
https://github.com/Embarcadero/DelphiFMX4Python/blob/main/samples/Simplest.py
Hello World (un exemple orienté objet)
https://github.com/Embarcadero/DelphiFMX4Python/blob/main/samples/HelloDelphiFMX.py
ToDo App (Commence à devenir utile….)
https://github.com/Embarcadero/DelphiFMX4Python/blob/main/samples/ToDoList.py
Avec style (et plus de contrôles)
https://github.com/Embarcadero/DelphiFMX4Python/tree/main/samples/ControlsDesktop
Concevez votre interface utilisateur (dans l’IDE Delphi)
● Tirez pleinement parti des concepteurs et des éditeurs de propriétés de Delphi
● Aperçu WYSIWYG avec styles
● Exportez le formulaire pour l’utiliser en Python, puis écrivez du code Python
● Cliquez simplement avec le bouton droit de la souris et exportez avec le complément IDE
● Fonctionne avec n’importe quelle édition Delphi ne nécessite aucune Object Pascal
● github.com/Embarcadero/DelphiFMX4Python/tree/main/experts
● Utilise actuellement un fichier binaire .pydfm, mais la version texte est à venir
Exporté des concepteurs FMX de Delphi vers Python (avec styles)
Exporté des concepteurs FMX de Delphi vers Python (avec styles et animations)
Déployer Python sur Android… Oui, Python sur Android ! (L’architecture)
Fondamentaux
- Delphi FMX prend en charge Android ARM64 comme cible
- La bibliothèque Python4Delphi prend en charge Android
- Permet de créer une application Delphi pour exécuter Python sur Android
Solution
- Une application Delphi pré-construite avec Python activé
- Charge utile de script Python modifiable par l’utilisateur qui s’exécute automatiquement
- Outil automatisé pour modifier le manifeste Android et créer l’APK final
- Sur GitHub github.com/Embarcadero/PythonFMXBuilder (alpha?)
- Ou démissionner manuellement de l’APK modifié
À faire
- Aperçu en direct avant le déploiement sur Android
- Regroupement de plusieurs scripts et modules Python
- Personnalisez les icônes, les écrans de démarrage, le chargement, etc.
- Plus de tests, de débogage et vos suggestions….
Exécuter Python sur Android
● Delphi compile nativement pour Android
● L’environnement d’exécution Python est intégré à l’application
● Python est interprété et exécuté dynamiquement lors de l’exécution
● L’ensemble de Delphi FMX pour Python est disponible
● Prend en charge des modules Python supplémentaires
● Entièrement local – aucun accès réseau nécessaire
https://github.com/Embarcadero/PythonFMXBuilder
Combinez Delphi et Python
- La bibliothèque Python4Delphi est un pont bidirectionnel
- Développez des parties de votre solution en Delphi et une partie en Python
- Jouez sur les points forts de chacun
- Fusionnez-les en une seule solution cohérente
- Trouvez des exemples, des tutoriels et des vidéos
Utiliser Delphi pour créer des modules Python natifs
● De nombreux modules Python sont écrits en C/C++ et compilés en natif
● Delphi crée également des modules Python compilés en natif via Python4Delphi
● Prototypez rapidement en Python, puis créez des modules optimisés en Delphi pour éliminer les goulots d’étranglement
● Tout comme Python, le code Delphi est axé sur la lisibilité et une structure claire et peut être plus facile pour vous que d’utiliser C/C++
● Augmentez votre utilisation de PyPy ou Cython
Documentation et références de bibliothèque
- Documentation principale de Delphi
- Principal docwiki.embarcadero.com/RADStudio/en/
- Référence de la bibliothèque
- Principal docwiki.embarcadero.com/Libraries/en/
- Delphi préfixe les noms de type avec un « T »
- TEdit en Delphi est une édition en Python
- C’est juste une convention de nommage
À propos de PyScripter
● IDE Python open source populaire sponsorisé par Embarcadero
● Toutes les fonctionnalités attendues dans un IDE Python moderne tout en étant léger et très rapide
● Compilé nativement pour Windows afin d’utiliser un minimum de mémoire avec des performances maximales
● Débogage Python complet avec débogage à distance
● Intégration avec les outils Python comme PyLint, TabNanny, Profile, etc.
● Exécuter ou déboguer des fichiers depuis la mémoire.
● embarcadero.com/free-tools/pyscripter/free-download
À propos d’UltraEdit
- Éditeur de texte haute performance pour les programmeurs.
- La meilleure gestion de fichiers volumineux de l’industrie : 10+ Go et au-delà.
- Mise en évidence de la syntaxe pour presque tous les langages ou formats de données.
- Modèles intelligents.
- Édition hexadécimale. Édition en mode colonne/bloc.
- Fait partie de la famille d’outils de développement Idera.
- ultraedit.com/products/ultraedit
Prochaines étapes
- Installez Delphi FMX pour Python github.com/Embarcadero/DelphiFMX4Python
- Voir les exemples, démarrer le référentiel, classer les problèmes et faire des demandes de fonctionnalités
- Lire le billet de blog (liens, rediffusions) blogs.embarcadero.com/?p=130176
- Voir la partie 1 sur Delphi VCL blogs.embarcadero.com/?p=128183
- Démarrez un essai Delphi de 30 jours embarcadero.com/products/delphi/start-for-free
- Abonnez-vous sur YouTube youtube.com/c/EmbarcaderoTechnologies
- Suivez-nous sur Twitter twitter.com/embarcaderotech
- Aimez-nous sur Facebook facebook.com/embarcaderotech
- Suivez-nous sur LinkedIn linkedin.com/company/embarcadero-technologies
- Lisez notre blog pythongui.org