Ferramentas

Distribuição Python

Se você quiser preparar o ambiente de trabalho no seu computador pessoal, você irá precisar de uma distribuição da linguagem Python. Atualmente, existem várias distribuições dessa linguagem. A considerada padrão encontra-se disponível no site da Python Software Foundation (Figura 10), sendo disponibilizada para as plataformas Microsoft Windows, Linux e macOS.

Página principal da Python Software Foundation

Figura 10 - Página principal da Python Software Foundation.

Neste curso, recomendamos utilizar a distribuição Python da Anaconda (Figura 11). Trata-se de uma distribuição completa que inclui não somente o interpretador Python mas também diversas bibliotecas e aplicativos para Data Science e Machine Learning. Esta distribuição também encontra-se disponível para Microsoft Windows, macOS e Linux. A versão que utilizaremos nesse curso será a Anaconda3-2020.11 (Python 3.8).

Janela do Navegador Anaconda

Figura 11 - Janela do Navegador Anaconda.

Nota

As instruções de como instalar o pacote Anaconda encontram-se disponíveis aqui.

IDE

Assim como para escrever uma dissertação ou tese é necessário um bom editor de texto, para criação de programas também é necessário um bom editor. Só que esse editor precisa de capacidades diferentes das usuais. Enquanto um editor de texto tradicional se preocupa com os aspectos de apresentação do texto, como tipo de fonte, tamanho da fonte, cor, espaçamento entre linhas e parágrafos, disposição de figuras, correção ortográfica, geração de sumários, índices de palavras, referências cruzadas, entre outras; um bom editor para programas deve estar integrado à linguagem de programação que você deseja usar.

Esse editor de programas deve ter recursos para destacar/realçar símbolos da linguagem usados para criação de programas. Na Figura 12 podemos observar que os numerais 3.14159 e 2 encontram-se em vermelho escuro, as palavras def e return, que são palavras chave da linguagem Python, encontram-se em azul, e as palavras Area e Circunference encontram-se em negrito.

Janela da IDE denominada Spyder

Figura 12 - Janela da IDE denominada Spyder.

Outro recurso importante é o de auto-completar nomes de variáveis e comandos. Isso é muito útil pois é difícil lembrar todos os nomes de comandos de uma linguagem e a forma correta de grafá-los. Sem contar que à medida que um programa cresce teremos inúmeras variáveis. Portanto, ter algum recurso que ajude a lembrar esses nomes é imprescindível. Nessa figura, podemos ver que o que queremos lembrar nesse ponto em que estamos escrevendo o programa, é o nome da variável com informação do raio para poder calcular o cumprimento da circunferência. Ao digitar o prefixo ra o editor automaticamente nos fornece os nomes de variáveis e comandos com esse prefixo.

Uma facilidade que em geral os editores de programas nos fornecem, é a capacidade de acompanhar a depuração dos programas, isto é, a possibilidade de examinar valores de variáveis durante a execução do programa. Existem inúmeras outras facilidades que devem ser fornecidas para a escrita de programas, como veremos ao longo do curso.

Geralmente, chamamos esse ambiente de programação de IDE ou Integrated Development Environment, ou ambiente de desenvolvimento integrado. Será importante que você escolha um bom programa com esta finalidade para usar ao longo do curso.

Spyder

A IDE apresentada na Figura 12 é denominada Spyder, e já vem inclusa na distribuição Anaconda. Esta IDE possui diversos recursos, como o de auto-completar. Pode ser usada para depurar programas e se integra bem com o interpretador Python.

Visual Studio Code

Outra IDE interessante é o Visual Studio Code (Figura 13), que também é software livre. Ele possui uma interface gráfica leve, disponível para todas as plataformas de sistema operacional e não fica nada a dever em relação ao Spyder.

Janela da IDE denominada Visual Studio Code

Figura 13 - Janela da IDE denominada Visual Studio Code.

PyCharm Community

Outra IDE gratuita e com diversos recursos é o PyCharm versão Community (Figura 14).

Janela da IDE denominada PyCharm Community

Figura 14 - Janela da IDE denominada PyCharm Community.

Nota

Como a proposta deste curso é ser um primeiro contato com a atividade de programação, nós achamos que a IDE com melhor compromisso de aprendizado de uso e funcionalidades é a PyCharm. Recomendamos utilizar a versão PyCharm Community, 2020.3.3.

Nota

As instruções de como instalar o Pycharm encontram-se disponíveis aqui.

Nota

A IDE Visual Studio Code é muito poderosa. Nós achamos que essa IDE atende um perfil de programadores que já possuem alguma experiência de programação.

Nota

Você verá que o esforço de aprender a usar uma IDE é pequeno quando comprado à quantidade de benefícios, que incluem desde o ganho de produtividade na escrita dos programas até maior facilidade de verificação do funcionamento dos mesmos.

Docker

O Docker é uma tecnologia baseada em código aberto para criação de contêiners de aplicações. Encontra-se disponível para Microsoft Windows 10, Linux e macOS. É uma tecnologia poderosa para pesquisa reprodutível, que combina muitos recursos, como virtualização de sistema operacional, reutilização e compartilhamento de componentes de software. O Docker permite encapsular todo o ambiente de software de forma a isolar o usuário da tarefa, muitas vezes árdua, de preparar o ambiente computacional original com todas as suas dependências. Embora neste curso não seja necessário utilizar essa tecnologia, nós iremos disponibilizar um material adicional com algumas informações de como utilizar o Docker no dia a dia. Para instalar o Docker, consulte a documentação oficial online, como mostrado abaixo.

Nota

As instruções de como instalar o Docker encontram-se disponíveis aqui.

Nota

Uma boa discussão sobre o uso do Docker no contexto de Ciência Aberta e Pesquisa Reprodutível pode ser encontrada em [6].

Google Colab

Este ano utilizaremos o Google Colab durante algumas aulas. Este aplicativo pode ser usado na janela do navegador e fornece um ambiente de computação interativa baseada na tecnologia Jupyter (Figura 15). Os documentos criados nessa ferramenta podem conter código e anotações textuais para ajudar a construir uma narrativa de uma pesquisa, ou de uma nota de aula ou algum processo computacional que se deseje compartilhar.

Janela do Google Colab

Figura 15 - Janela do Google Colab.