Nilo Menezes

Tipos em Python

Python sempre foi uma linguagem fortemente tipada, para surpresa de muitos que confundem a tipagem dinâmica com a ausência de tipos. Na realidade, os tipos em Python funcionam tão bem e de forma tão automática que muitas vezes esquecemos que eles existem.

Mas nem tudo é perfeito. Hoje existem programas gigantescos escritos em Python e os programadores precisam de ferramentas poderosas para entender e navegar neste código. Aí tínhamos um problema, pois ferramentas de edição mais avançadas com recursos de autocomplete (intellisense), refactoring e simplesmente de navegação no código fonte se tornaram extremamente complexas. Dadas as propriedades dinâmicas da linguagem, escrever este tipo de ferramentas para o programador Python se tornou uma tarefa complicada. Cada ferramenta era responsável por inferir o tipo de cada método ou função sendo chamada e esta não é uma tarefa simples, uma vez que temos poucas indicações de tipo no programa em si.

Continuar a ler

Um bot para Telegram com o jogo da velha (Jogo do Galo)

Num mundo com tantas aplicações de chat instantâneo, o Telegram destaca-se pela rica API que disponibiliza para criação de bots. Os bots são pequenos programas que podem interagir com os utilizadores e prestar serviços, como executar comandos, gerir arquivos ou imagens e até mesmo propor jogos!

Há já algum tempo que a comunidade Python explora bibliotecas como a Telebot e mais recentemente, a Telepot. Embora a diferença no nome das duas seja apenas uma letra, o desenho da Telepot parece-me mais robusto e o melhor de tudo: integra chamadas assíncronas!

O objetivo deste tutorial é mostrar como criar um bot assíncrono, usando a Telepot em Python 3.6. Ele é divido em quatro partes: por que assíncrono? obtenção da chave para rodar o bot, criação do bot, o jogo da velha em si (com minimax).

Continuar a ler