📦Indexação de Contêiner: Como Amar o Caos no Python4Delphi (SEM ENLOUQUERCER)
Sabe aquele momento em que você olha e pensa no Delphi,
pensa "Porra, no Delphi? vai ser moleza", e resolve então usar o
Python em conjunto dentro dele. Pois é. A vida não é só morangos, e cada volta
é um Acess Violation.
Sonho: "Vou usar o Delphi com Python,
unir o melhor dos dois mundos! Com alta performance com um toque de
flexibilidade interpretada! Confia, vai dar certo!"
O Caos que se ‘Instala’
Vamos lá, você faz tudo certinho
como manda o figurino. Cria o componete TpythonEngine, configura
o TPythonModule, vai lá coloca um TpythonDelphiphiVar aqui, um TPythonInputOutput
ali... assim tudo fica lindo. Até você tentar isso daqui:
Ai vem o compilador com os dois pés no seu peito: "Incompatible types: 'PPyObject' and 'String'"
A forma que consideraria quase a certa de fazer isso:
Dicas pra não perder o pouco cabelo que tem na cabeça (seus
pouca telha):
- Use
VarPython sempre que possível. Ele abstrai parte da dor.
- Evite
indexar direto sem verificar se o objeto é do tipo esperado.
- Prepare-se
psicologicamente para o debug.
- Tenha
sempre um backup do projeto e da sua sanidade.
- Reze
para Moradin, Odin, C++Builder, qualquer um.
Concluindo
A indexação de contêiner em Python4Delphi ela é possível.
Porém é como montar um Javali de Batalha sendo um Hobbit.
Funciona? Sim. Vai ser fácil? Hahahaha, não.
Se você sobreviveu até aqui, parabéns. Você merece não só um
café, mas o pacote dele todo, mas talvez uma medalha por sua incrível Autossabotagem.
E, se conseguir fazer isso funcionar em produção, você desbloqueou um novo
nível na vida de desenvolvedor: alquimista de runtime cross-language.
Na próxima postagem, talvez eu fale sobre como conectar o
Python4Delphi com uma API REST. Ou talvez eu só chore no banho. Veremos.
Comentários
Postar um comentário