Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!
Noticias

Python en Android con Delphi FMX: el marco de GUI multiplataforma

python-on-android-with-delphi-fmx-the-cross-platform-gui-framework-2

Conozca cómo los módulos de Python gratuitos recientemente lanzados por Embarcadero brindan el poder y la flexibilidad de los marcos de GUI de Delphi a Python. VCL y FireMonkey (FMX) son bibliotecas GUI maduras. VCL se centra en el desarrollo nativo de Windows, mientras que FireMonkey ofrece un marco de GUI flexible y potente para Windows, Linux, macOS e incluso Android. Este seminario web le presentará estos nuevos módulos gratuitos de Python y cómo puede usarlos para crear interfaces gráficas de usuario con Python. ¡La parte 2 le mostrará cómo apuntar a las aplicaciones GUI de Android con Python!

 

¿Quién es usted?

● Desarrolladores de Python que quieren una GUI agradable
● Desarrolladores de Python curiosos sobre Delphi
● Desarrolladores de Delphi que quieren usar Python
● Desarrolladores de Delphi curiosos sobre las novedades
● Otros desarrolladores curiosos sobre Delphi y Python

no es una competencia

● Los desarrolladores tienen múltiples herramientas en su banco de trabajo
● Se trata de encontrar la herramienta adecuada para cada tarea
● Tener herramientas especializadas para diferentes tareas no resta valor a las herramientas favoritas
● Siempre puede encontrar una tarea específica para la que otra herramienta es mejor, pero no una herramienta es la mejor para todas las tareas.

¿Qué es Delphi para Python?

  • Conjunto de módulos de Python gratuitos que llevan las bibliotecas GUI de Delphi a los desarrolladores de Python
    • Maduro, rico en funciones, nativo y multiplataforma
    • No requiere Delphi para usar
  • Basado en Python4Delphi de código abierto (la misma tecnología que impulsa el IDE de PyScripter)
  • Disponible hoy en GitHub y PyPi
    • Actualmente en beta, pero listo para usar
  • DelphiVCL para Python es compatible con Windows (32 bits y 64 bits)
  • DelphiFMX para Python agrega Linux, Android y Mac OS
  • Parte de un puente bidireccional entre Delphi y Python

Diseccionando las pilas de tecnología

py1-6685678-2

FMX La multiplataforma (Marco FireMonkey)

  • Aprovecha las bibliotecas de GPU para proporcionar una interfaz de usuario rica y acelerada por hardware que es rápida y se ve muy bien en múltiples plataformas:
    • Windows, macOS, iOS, Android y Linux
    • Utiliza DirectX en Windows, OpenGL en Linux, OpenGL-ES en Android y Metal en iOS y macOS
  • Similar a VCL, pero no diseñado para ser compatible
    • Diseñado como plataforma cruzada desde cero
  • Efectos de GPU integrados, animaciones y sistema de estilo robusto
  • Los servicios de la plataforma abstraen el acceso al hardware y la funcionalidad de la plataforma para adaptar de manera inteligente la UI y la UX a las especificaciones de la plataforma.
  • Sistema de componentes muy flexible: haga más con menos componentes

Delphi para Python

py2-1983293-2

Instalación de Delphi FMX para Python

  • Instalar a través de pip
    • pip install delphifmx
  • Apoya:
    • Arquitecturas Win32 x86, Win64 x86, Linux64 x86, Android64, Mac OS x64 (Intel) y Mac M1 (Arm)
    • Python cp3.6, cp3.7, cp3.8, cp3.9 y cp3.10 (excluyendo cp3.6 en Linux y macOS)
  • Soporte Conda:
    • Gana x86 y x64 desde Python cp3.6 a cp3.10
    • Linux x86_64 de Python cp3.7 a cp3.9 (¡Recomendado!)
    • macOS aún no es compatible
  • Detalles y descargas

Hello World (El ejemplo más simple)

py3-6241807-2

https://github.com/Embarcadero/DelphiFMX4Python/blob/main/samples/Simplest.py

Hello World (un ejemplo orientado a objetos)

py4-6954926-2

https://github.com/Embarcadero/DelphiFMX4Python/blob/main/samples/HelloDelphiFMX.py

Aplicación ToDo (Empieza a ser útil…)

py5-2447257-2

https://github.com/Embarcadero/DelphiFMX4Python/blob/main/samples/ToDoList.py

Con Estilo (Y más controles)

py6-5122681-2

https://github.com/Embarcadero/DelphiFMX4Python/tree/main/samples/ControlsDesktop

Diseñe su interfaz de usuario (en el IDE de Delphi)

● Aproveche al máximo los diseñadores y editores de propiedades del IDE de Delphi
● Vista previa WYSIWYG con estilos
● Exporte el formulario para usarlo en Python y luego escriba el código de Python
● Simplemente haga clic con el botón derecho y exporte con el complemento IDE
● Funciona con cualquier edición de Delphi no requiere Object Pascal
● github.com/Embarcadero/DelphiFMX4Python/tree/main/experts
● Actualmente usa un archivo binario .pydfm, pero próximamente una versión de texto

Exportado de los diseñadores FMX de Delphi a Python (con estilos)

py7-3855907-2

Exportado de los diseñadores FMX de Delphi a Python (con estilos y animaciones)

py8-8718252-2

Implementando Python en Android… ¡Sí, Python en Android! (La arquitectura)

Fundamentos

  • Delphi FMX admite Android ARM64 como objetivo
  • La biblioteca Python4Delphi es compatible con Android
  • Permite crear la aplicación Delphi para ejecutar Python en Android

Solución

  • Una aplicación Delphi preconstruida con Python habilitado
  • Carga útil de script de Python modificable por el usuario que se ejecuta automáticamente
  • Herramienta automatizada para modificar el manifiesto de Android y compilar el APK final
    • O renuncie a APK modificado manualmente

Que hacer

  • Vista previa en vivo antes de implementar en Android
  • Agrupación de múltiples scripts y módulos de Python
  • Personaliza iconos, pantallas de inicio, carga, etc.
  • Más pruebas, depuración y sus sugerencias…

Ejecutar Python en Android

● Delphi compila de forma nativa para Android
● El tiempo de ejecución de Python está integrado en la aplicación
● Python se interpreta y ejecuta dinámicamente durante el tiempo de ejecución
● Todo Delphi FMX para Python está disponible
● Admite módulos de Python adicionales
● Completamente local: no es necesario acceder a la red

py9-3509304-2

https://github.com/Embarcadero/PythonFMXBuilder

Combinar Delphi y Python

  • La biblioteca Python4Delphi es un puente bidireccional
  • Desarrolle partes de su solución en Delphi y parte en Python
    • Juega con las fortalezas de cada uno
  • Combinarlos en una sola solución cohesiva
  • Encuentre ejemplos, tutoriales y videos

Use Delphi para crear módulos Python nativos

● Muchos módulos de Python están escritos en C/C++ y compilados de forma nativa
● Delphi también crea módulos de Python compilados de forma nativa a través de Python4Delphi
● Realice prototipos rápidamente en Python y luego cree módulos optimizados en Delphi para eliminar cuellos de botella
● Al igual que Python, el código de Delphi se centra en la legibilidad y estructura clara y puede ser más fácil para usted que usar C/C++
● Aumente su uso de PyPy o Cython

Documentación y referencias de biblioteca

Acerca de PyScripter

● Popular IDE de Python de código abierto patrocinado por Embarcadero
● Todas las funciones que se esperan en un IDE de Python moderno a la vez que ligero y muy rápido
● Compilado de forma nativa para Windows para usar una memoria mínima con el máximo rendimiento
● Depuración completa de Python con depuración remota
● Integración con herramientas de Python como PyLint, TabNanny, Profile, etc.
● Ejecutar o depurar archivos desde la memoria.
● embarcadero.com/free-tools/pyscripter/free-download

Acerca de UltraEdit

  • Editor de texto de alto rendimiento para programadores.
  • El mejor manejo de archivos grandes de la industria: más de 10 GB y más.
  • Resaltado de sintaxis para casi cualquier idioma o formato de datos.
  • Plantillas inteligentes.
  • Edición hexadecimal. Edición en modo columna/bloque.
  • Parte de la familia de herramientas para desarrolladores de Idera.
  • ultraedit.com/products/ultraedit

Próximos pasos

RAD Studio 13.2 Florence Now Available! Kai 1.1.1 Now Available! What's Coming in RAD Studio 13.2 Florence

Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.

Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

Sobre el autor

Director de Delphi Consulting para GDK Software USA. Muchas patentes relacionadas con software, incluidas desbloqueo por deslizamiento y patrón y motores de búsqueda. Primeras insignias Plata y Oro de Delphi en Stack Overflow Ex defensor de los desarrolladores de Embarcadero Technologies. Fanático de la programación desde hace mucho tiempo, especialmente con Delphi. Autor, Podcaster/YouTuber, Improvisor, Orador Público, Padre y Amigo.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

IN THE ARTICLES