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!
- Encontre Delphi FMX para Python no GitHub ou instale via pip com:
pip install delphifmx
- Apresentações [ Faça o download do PDF do GitHub ] [ Visualize no Google Sides ] [ Visualize no SlideShare ]
- Confira a Parte um no Delphi VCL para Python .
Table of Contents
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
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
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)
https://github.com/Embarcadero/DelphiFMX4Python/blob/main/samples/Simplest.py
Hello World (Um exemplo de Orientação a Objetos)
https://github.com/Embarcadero/DelphiFMX4Python/blob/main/samples/HelloDelphiFMX.py
Aplicativo ToDo (Começando a ser útil….)
https://github.com/Embarcadero/DelphiFMX4Python/blob/main/samples/ToDoList.py
Com estilo (e mais controles)
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)
Exportado do Delphi’s FMX Designers para Python (com estilos e animações)
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
- No GitHub github.com/Embarcadero/PythonFMXBuilder (alfa?)
- 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
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
- Documentação principal do Delphi
- Referência da Biblioteca
- Delphi prefixa nomes de tipo com um “T”
- TEdit em Delphi é uma edição em Python
- É apenas uma convenção de nomenclatura
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
- Instale o Delphi FMX para Python github.com/Embarcadero/DelphiFMX4Python
- Veja os exemplos, marque o repositório, arquive problemas e faça solicitações de recursos
- Leia a postagem do blog (links, replays) blogs.embarcadero.com/?p=130176
- Veja a parte 1 no Delphi VCL blogs.embarcadero.com/?p=128183
- Inicie um teste Delphi de 30 dias embarcadero.com/products/delphi/start-for-free
- Inscreva-se no YouTube youtube.com/c/EmbarcaderoTechnologies
- Siga-nos no Twitter twitter.com/embarcaderotech
- Curta nossa página no Facebook facebook.com/embarcaderotech
- Siga-nos no LinkedIn linkedin.com/company/embarcadero-technologies
- Leia nosso blog pythongui.org
Design. Code. Compile. Deploy.
Start Free Trial Upgrade Today
Free Delphi Community Edition Free C++Builder Community Edition