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

Python no Android com Delphi FMX – The Cross Platform GUI Framework

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

Saiba como os módulos Python gratuitos recém-lançados da Embarcadero trazem o poder e a flexibilidade das estruturas GUI do Delphi para o Python. VCL e FireMonkey (FMX) são bibliotecas GUI maduras. O VCL está focado no desenvolvimento nativo do Windows, enquanto o FireMonkey traz uma poderosa estrutura de GUI flexível para Windows, Linux, macOS e até Android. Este webinar apresentará a você esses novos módulos Python gratuitos e como você pode usá-los para criar interfaces gráficas de usuário com Python. A Parte 2 mostrará como direcionar aplicativos Android GUI com Python!

 

Quem é Você?

● Desenvolvedores Python que desejam uma boa GUI
● Desenvolvedores Python curiosos sobre Delphi
● Desenvolvedores Delphi que desejam usar Python
● Desenvolvedores Delphi curiosos sobre o que há de novo
● Outros desenvolvedores curiosos sobre Delphi e Python

Não é uma competição

● Os desenvolvedores têm várias ferramentas em sua bancada
● Trata-se de encontrar a ferramenta certa para cada tarefa
● Ter ferramentas especializadas para diferentes tarefas não diminui as ferramentas favoritas
● Você sempre pode encontrar uma tarefa específica para a qual outra ferramenta é melhor, mas não uma ferramenta é a melhor para todas as tarefas.

O que é Delphi para Python?

  • Conjunto de módulos Python gratuitos trazendo bibliotecas GUI do Delphi para desenvolvedores Python
    • Maduro, rico em recursos, nativo e multiplataforma
    • Não requer Delphi para usar
  • Baseado no Python4Delphi de código aberto (mesma tecnologia que alimenta o PyScripter IDE)
  • Disponível hoje no GitHub e PyPi
    • Atualmente em beta, mas pronto para uso
  • DelphiVCL para Python suporta Windows (32 bits e 64 bits)
  • DelphiFMX para Python adiciona Linux, Android e Mac OS
  • Parte de uma ponte bidirecional entre Delphi e Python

Dissecando as pilhas de tecnologia

py1-6685678-2

FMX A plataforma cruzada (FireMonkey Framework)

  • Aproveita as bibliotecas de GPU para fornecer uma interface de usuário rica e acelerada por hardware, rápida e com ótima aparência em várias plataformas:
    • Windows, macOS, iOS, Android e Linux
    • Usa DirectX no Windows, OpenGL no Linux, OpenGL-ES no Android e Metal no iOS e macOS
  • Semelhante ao VCL, mas não projetado para ser compatível
    • Projetado como plataforma cruzada desde o início
  • Efeitos de GPU integrados, animações e sistema de estilo robusto
  • Os serviços da plataforma abstraem o acesso ao hardware e à funcionalidade da plataforma para adaptar de forma inteligente a UI e UX às especificidades da plataforma
  • Sistema de componentes muito flexível – faça mais com menos componentes

Delphi para Python

py2-1983293-2

Delphi FMX para instalação do Python

  • Instalar via pip
    • pip install delphifmx
  • Apoia:
    • Arquiteturas Win32 x86, Win64 x86, Linux64 x86, Android64, Mac OS x64 (Intel) e Mac M1 (Arm)
    • Python cp3.6, cp3.7, cp3.8, cp3.9 e cp3.10 (excluindo cp3.6 no Linux e macOS)
  • Suporte Conda:
    • Win x86 e x64 do Python cp3.6 para cp3.10
    • Linux x86_64 de Python cp3.7 para cp3.9 (recomendado!)
    • macOS ainda não suportado
  • Detalhes e downloads

Olá Mundo (o exemplo mais simples)

py3-6241807-2

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

Hello World (Um exemplo de Orientação a Objetos)

py4-6954926-2

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

Aplicativo ToDo (Começando a ser útil….)

py5-2447257-2

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

Com estilo (e mais controles)

py6-5122681-2

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

Projete sua interface do usuário (no Delphi IDE)

● Aproveite ao máximo os designers e editores de propriedades do Delphi IDE
● Visualização WYSIWYG com estilos
● Exporte o formulário para uso em Python e depois escreva o código Python
● Basta clicar com o botão direito do mouse e exportar com o complemento do IDE
● Funciona com qualquer edição do Delphi Object Pascal
● github.com/Embarcadero/DelphiFMX4Python/tree/main/experts
● Atualmente usa um arquivo .pydfm binário, mas a versão de texto está chegando

Exportado do Delphi’s FMX Designers para Python (com estilos)

py7-3855907-2

Exportado do Delphi’s FMX Designers para Python (com estilos e animações)

py8-8718252-2

Implantando Python no Android… Sim, Python no Android! (A arquitetura)

Fundamentos

  • Delphi FMX suporta Android ARM64 como alvo
  • A biblioteca Python4Delphi suporta Android
  • Permite a criação de aplicativo Delphi para executar Python no Android

Solução

  • Um aplicativo Delphi pré-construído com Python habilitado
  • Carga útil de script Python modificável pelo usuário que é executada automaticamente
  • Ferramenta automatizada para modificar o manifesto do Android e criar o APK final
    • Ou renuncie manualmente ao APK modificado

Façam

  • Visualização ao vivo antes de implantar no Android
  • Agrupando vários scripts e módulos Python
  • Personalize ícones, telas iniciais, carregamento, etc.
  • Mais testes, depuração e suas sugestões….

Executando Python no Android

● O Delphi compila nativamente para Android
● O tempo de execução do Python é incorporado ao aplicativo
● O Python é interpretado e executado dinamicamente em tempo de execução
● Todo o Delphi FMX para Python está disponível
● Suporta módulos Python adicionais
● Completamente local – sem necessidade de acesso à rede

py9-3509304-2

https://github.com/Embarcadero/PythonFMXBuilder

Combine Delphi e Python

  • A biblioteca Python4Delphi é uma ponte bidirecional
  • Desenvolva partes de sua solução em Delphi e parte em Python
    • Jogue com os pontos fortes de cada
  • Mescle-os em uma única solução coesa
  • Encontre amostras, tutoriais e vídeos

Use o Delphi para criar módulos nativos do Python

● Muitos módulos Python são escritos em C/C++ e compilados nativamente
● Delphi também cria módulos Python compilados nativamente via Python4Delphi
● Prototipe rapidamente em Python e, em seguida, crie módulos otimizados em Delphi para eliminar gargalos
● Muito parecido com Python, o código Delphi é focado na legibilidade e estrutura clara e pode ser mais fácil para você do que usar C/C++
● Aumente seu uso de PyPy ou Cython

Documentação e Referências de Biblioteca

Sobre o PyScripter

● IDE Python de código aberto popular patrocinado pela Embarcadero
● Todos os recursos esperados em um IDE Python moderno, sendo leve e muito rápido
● Compilado nativamente para Windows para usar memória mínima com desempenho máximo
● Depuração Python completa com depuração remota
● Integração com ferramentas Python como PyLint, TabNanny, Profile, etc.
● Execute ou depure arquivos da memória.
● embarcadero.com/free-tools/pyscripter/free-download

Sobre o UltraEdit

  • Editor de texto de alto desempenho para programadores.
  • O melhor manuseio de arquivos grandes do setor: 10+ GB e além.
  • Destaque de sintaxe para praticamente qualquer idioma ou formato de dados.
  • Modelos inteligentes.
  • Edição hexadecimal. Edição em modo coluna/bloco.
  • Parte da família Idera de ferramentas para desenvolvedores.
  • ultraedit.com/products/ultraedit

Próximos passos

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 o autor

Diretor de Consultoria Delphi da GDK Software USA. Muitas patentes relacionadas a software, incluindo desbloqueio por deslize e padrão e mecanismos de pesquisa. Primeiros emblemas Silver e Gold Delphi no Stack Overflow Ex-advogado de desenvolvedores da Embarcadero Technologies. Fã de longa data de programação, principalmente de Delphi. Autor, Podcaster/YouTuber, Improvisor, Orador, Pai e Amigo.

Leave a Reply

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

IN THE ARTICLES