Python #1 – Introdução ao Python

Bem-vindo ao mundo dos répteis… ops… bem-vindo ao mundo Python!!!

A linguagem python é muito utilizada para desenvolvimento de scripts para integrações de ambientes em diferentes plataformas, como também para área de data science, machine learning, desenvolvimento web, desenvolvimento de aplicativos, automação de scripts, segurança e entre outras. É uma linguagem simples de aprender, pois você tem uma baixa curva de aprendizagem.

Python é interpretado?

Antes de falar da arquitetura, você precisa entender que o seu “Código-Fonte” é simplesmente um arquivo formado pelos comandos que você digitou. Agora podemos proseguir…

Primeiramente vamos entender as duas arquiteturas mais comuns, utilizadas pelas linguagens de programação.

Compilação

A linguagem de programação contém uma ferramenta que transforma o seu código-fonte em um arquivo executável (Não podemos mais ler ou alterar, pois está praticamente em linguagem de máquina). Esse arquivo executável permite o seu funcionamento em um computador e/ou dispositivo que necessariamente não terá a linguagem que gerou o código-fonte.

Arquivo executável – Executa-se sem a necessidade da linguagem de programação que o gerou.

Ou seja, você cria o seu código-fonte e depois transforma ele em um arquivo executável e esse processo é a compilação.

Uma linguagem de programação que usa essa arquitetura, por exemplo, é a linguagem C, em que você escreve um arquivo com comandos em C, gera um arquivo-fonte (aplicacao.c). Quando conclui o seu código, precisa executá-lo em outro computador, que não terá a linguagem C instalada, então você compila, ou seja, gera um arquivo executável no seu computador, normalmente com a extensão “.exe”, o qual ficaria com o nome aplicacao.exe. Esse arquivo não depende mais da existência do C na máquina em que será executado.

Agora vamos conhecer outra arquitetura. Um exemplo que utiliza essa arquitetura é a linguagem Basic, em que o código-fonte agora não será convertido, apenas será interpretado por alguma aplicação que a própria linguagem possui. Caso queira executar sua aplicação, deverá instalar o responsável da linguagem que interpretará o seu código-fonte.

Interpretação

Você tem seu código-fonte e para ser executada precisa de um interpretador.

A linguagem contém uma ferramenta/software que interpreta seu código-fonte. Em qualquer lugar que você tente executar a sua aplicação, deverá ter instalado previamente a ferramena no equipamente, só assim poderá executá-la. Exemplo prático seria com o HTML. Embora o html não seja uma linguagem de programação e sim de marcação, servirá para você entender bem. Um código html por si só é apenas um arquivo de texto, quando você abre em um browser ele é interpretado, basicamente é assim que funciona a arquitetura interpetrado.

Python é compilado ou interpretado?

Python trabalha dentro da arquitetura interpretada, ou até mesmo com as duas arquiteturas (compilada e interpretada) juntas, formando uma arquitetura híbrida.

Quando você gera o seu código-fonte em Python (arquivo com extensão .py) você pode compilá-lo, o que irá gerar um arquivo com extensão .pyc (Python Compile), que não é independente, e precisará da ferramenta que irá interpretar o seu conteúdo, a qual chamamos de PVM (Python Virtual Machine). Logo, para executar um arquivo compilado em Python, você não precisa do python como ferramenta, necessitará apenas da PVM instalada, ou seja, nesse processo ele compilou e interpretou, logo é híbrido.

Mas, o python não obriga a compilação, ou seja, um arquivo .py (código-fonte) pode ser diretamente interpretado pela PVM (essa é a situação mais comum de utilização do python no mercado), logo ele é interpretado.

Qual o paradigma do python?

O python é multiparadigma!

O que é paradigma?

Paradigma de programação nada mais é do que uma forma de pensar e organizar os comandos dentro do desenvolvimento de programação. Cada paradigma possui as suas devidas vantagens e desvantagens.

Então você pode usar orientação a objetos, estruturado e funcional.

Diria que se você quer atuar como desenvolvedor usando python é fundamental começar estudar POO (Programação orientado a objeto – orientação a objetos), assim, você terá uma melhor organização do seu código para manutenção, dentre outras vantagens que esse paradigma pode trazer. O paradigma estruturado faz uso basicamente de três pilares: sequência, decisão e iteração. Esses três pilares suportam e induzem a criação de rotinas simples que possuam poucas linhas de código, ou simplesmente só o suficiente para que possam funcionar.

Então você pode desenvolver diversas ferramentas com o python: gerador de backup, criador de arquivos de log, leitor para arquivos de log, identificação de sistemas operacionais das máquinas cliente, testador de ips, varredor de portas lógicas abertas, enfim, essas são algumas rotinas de exemplo. Se você criar tudo dentro de um único arquivo de código, ele ficará muito grande, o que irá dificultar a manutenção, leitura, reaproveitamento do código e entre outras situações.

Dentro do paradigma estruturado, você será induzido a criar pequenas funções/sub-rotinas que irão conter apenas as linhas suficientes para a execução de uma ação especifica. Então você pode dividir essas funções em arquivos, organizar de uma forma melhor… assim, permite dividir as tarefas de criação e gerenciamento de funções do sistema dentro do time de profissionais da sua empresa.

Exemplo prático é o controle remoto. Se ele não existisse, você teria que ir até a TV e mudar de canal, aumentar o volume e etc. Dessa forma, você modularizou/estruturou as ações, separou a parte de controlar a TV em um controle e nesse controle contém suas funções….

Python é alto nível?

O que seria uma linguagem de alto nível? Quando a linguagem está mais próxima da linguagem natural/humana, diferente de uma linguagem de baixo nível que está mais próxima de uma linguagem de máquina. Isso significa que quando uma linguagem de alto nível está mais distante da CPU, mais distante da linguagem de baixo nível estará, a qual conversa mais aproximadamente com a CPU. Entendeu?

Por isso, existe uma diferença de performance entre uma linguagem de alto nível e uma linguagem de baixo nível. A quantidade de processos que existem entre a ferramenta do desenvolvedor e a CPU será maior quando a linguagem utilizada é de alto nível, e haverá menos processos quando a linguagem for de baixo nível.

Por outro lado, pelo fato da linguagem de alto nível estar mais próxima do desenvolvedor, é mais legível para ele. Quanto mais próximo da CPU, mais difícil vai ficando a leitura e a interpretação do código pelo programador. Exemplo:

# VisualG
se nota < 6 .e. nota >= 4 então
# Python
if nota < 6 and nota >= 4:
# Java
if(nota < 6 && nota >= 4) {

Primeira linha: VisualG não é uma linguagem de programação, mas, é uma ferramenta que auxilia o aprendizado em linguagem de programação. Perceba que a interpretação é muito clara, pois está em altíssimo nível.

Segunda linha: Python é uma linguagem de alto nível, mas perceba que está um pouco mais “obscura” que em VisualG.

Terceira linha está escrita em Java e fica uma pouco menos próxima da linguagem natural como está na primeira linha. Entendeu?

Conclusão

  • Multiparadigmas
  • Linguagem de alto nível
  • Poder ser compilada e interpretada, arquitetura híbrida.

Artigo: Python #1 – Introdução ao Python
Autor: Marcos Vinicius
GitHub: @marcosviniciusid@devprocommunity
ContribuiçãoVocê pode comentar para contribuir com este artigo. Sempre que for pertinente o artigo será atualizado.

Artigo relacionado

Como criar comentários de múltiplas linhas em Python.
Neste artigo você vai aprender a como criar comentários de múltiplas linhas em Python e também comentários simples.

Marcos Vinicius
Marcos Vinicius
Artigos: 13

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *