Esse é o repositório do nosso curso e aqui você encontra todo o material que vamos estudar para desenvolver nosso conhecimento em programação a partir da linguagem Python.
“ensinar não é transferir conhecimento, mas criar as possibilidades para a sua produção ou a sua construção” - Paulo Freire (Pedagogia da Autonomia, Pág 20).
Vale ressaltar que todos! os tópicos aqui listados possuem indicações de materiais externos para fortalecer e expandir o nosso conhecimento.
- Ferramentas utilizadas
- Glossário e conceitos chave
- Indicações de materiais de temas relacionados
- Cadernos/Notebooks de prática
- Códigos de prática
1) GitHub - https://github.com/
O que é? É uma ferramenta usada para publicar, compartilhar e versionar arquivos, como textos e códigos. O GitHub se utiliza do Git para permitir o versionamento de arquivos. É esse versionamento que permite que a gente dê ctrl+z nos projetos, sistemas, textos, sites e etc.
Por que usar o GitHub? Porque essa é uma ferramenta muito importante no desenvolvimento de software e muitas vezes é usada para avaliação em processos seletivos.
Caso não tenha, já corre e cria uma conta no GitHub: https://github.com/
- Tutorial de como criar a conta e configurações iniciais: https://youtu.be/1QTi8nIlK1o?t=237 (a interface do GitHub pode estar um pouco diferente, mas os campos a serem preenchidos são os mesmos)
- Tutoriais de como criar chaves GPG e SSH (e porque é importante ativar):
- Aqui algumas recomendações para você aprofundar seus estudos em Git - Curso de Git e Github em vídeos:
2) Jupyter Notebook - https://jupyter.org/
O que é? Uma forma de construir códigos interativos, onde podemos visualizar e executar código, texto, gráficos e animações. Vamos usá-la para programar em Python.
Os textos no Jupyter Notebook são escritos em Markdown! Markdown é um linguagem usada para facilitar a formatação de textos em sites. Acesse aqui um Guia de comandos/sintaxe Markdown
Por que usar o Jupyter Notebook? Porque esse formato nos permite explorar e descrever tudo o que vamos fazendo passo a passo. E isso facilita o compartilhamento das nossas ideias com outras pessoas.
3) Google Colab - https://colab.research.google.com/
O que é? É uma ferramenta que permite que qualquer pessoa com uma conta do google escreva e execute código Python pelo navegador, e ele se baseia no Jupyter Notebook.
Por que usar o Google Colab? Porque isso remove complexidade no nosso estudo, pois não vamos precisar nos preocupar em instalar as ferramentas. Ter um navegador e uma conta no google serão os únicos requisitos necessários para praticarmos as atividades.
Quando não usar o Google Colab? Quando a sua atividade incluir dados que não sejam públicos, que devem ser protegidos pela LGPD e/ou sejam informações confidenciais da sua empresa ou organização.
- 1º Como usar o Google Colab?
- 2º Como publicar as nossas alterações do Google Colab para o Github?
- 3º Atualizando um repositório fork com as alterações feitas no repositório original
Os materiais centrais de referência desse curso são:
- Ó Py Ó - Grupo de Estudos do PyLadies Salvador
- Livro Pense em Pyhon de de Allen B. Downey
- Canal Programação Dinâmica | Kizzy Terra e Hallison Paz
- Curso em Video - Python | Professor Gustavo Guanabara
- Livro Introdução à Programação com Python de Nilo Ney Coutinho Menezes - Exercícios Resolvidos
O livro How to Think Like a Computer Scientist de Jeffrey Elkner, Allen B. Downey e Chris Meyers também é uma ótima forma de reforçar os conhecimentos e estimular a leitura em inglês.
-
1º Perguntas de OrientAção:
-
2º Tutoriais de Instalação do Python | Python Brasil
-
3º história e contexto:
-
Capítulo 1: A jornada do programa | PensePython2e
-
Capítulo 2: Variáveis, expressões e instruções | PensePython2e
-
Tópicos abordados:
- Formas de executar Python
- Variáveis (Atribuição, nomenclatura)
- Tipos de dados
- Expressões e instruções
- Ordem das operações
- Operações de Strings
- Comentários
- Erros comuns
-
Materiais de apoio:
- Operando com Números em Python | Programação Dinâmica
- O que é e como se utiliza uma variável? | Programação Dinâmica
- Primeiros passos no Python: Um tour pela linguagem | DevMedia
- Workshop de Python com DOJO - Pyladies Rio de Janeiro e Pyladies Caxias
- Começe pelo arquivo de sumário (SUMMARY.md)
- E em seguida pelo arquivo de que explica o que é um DOJO
- Para exercitar o conteúdo dessa sessão faça as atividades que estão em DOJO 1, DOJO 2, DOJO 3 e DOJO 4.
- Formatação de Strings - Python String Format Cookbook | Marcus Kazmierczak
-
Capítulo 5: Condicionais | PensePython2e - apenas até o tópico 5.7 - Condicionais aninhadas)
-
Tópicos abordados:
- Expressões booleanas
- Operadores lógicos
- Execuções condicionais (If)
- Execução alternativa (else)
- Condições aninhadas
-
Materiais de apoio:
-
Curso Python 013: Estrutura de repetição for | Curso em Vídeo
-
Capítulo 7: Interação | PensePython2e
-
Capítulo 8: Strings | PensePython2e
-
Tópicos abordados:
- Reatribuição
- Instrução While, break e for
- Strings (cadeia de caracteres)
- Fatiamento de strings
-
Materiais de apoio:
-
Capítulo 10: Listas | PensePython2e
-
Capítulo 11: Dicionários | PensePython2e
-
Tópicos abordados:
- Reforçando laços de repetição
- Listas
- Dicionários
-
Materiais de apoio:
-
Extra:
-
Capítulo 3: Funções | PensePython2e
-
Capítulo 6: Funções com resultado | PensePython2e - apenas tópicos 6.1 - Valores de retorno e 6.9 - Depuração)
-
Tópicos abordados:
- Funções
- Parâmetros
- Funções com resultado
- Depuração
-
Materiais de apoio:
-
Apêndice A: Depuração: Apêndice A: Depuração | PensePython2e
-
Tópicos abordados:
- Erros de sintaxe
- Erros de tempo de execução
- Erros semânticos
-
Materiais de apoio:
Documentação Python: https://docs.python.org/pt-br/3/tutorial/
O termo Documentação dentro da área de tecnologia significa um local que reúne todas as informações sobre como usar a ferramenta em questão. Seja ela uma linguagem de programação, biblioteca - qualquer coisa que você está querendo saber como funciona.
São recomendações sobre como escrever o nosso código de forma que ele fique mais organizado e inteligível por outras pessoas.
- Original em Inglês: https://peps.python.org/pep-0008/
- Tradução na página do Python Brasil: https://wiki.python.org.br/GuiaDeEstilo
Uma forma de entendermos o termo Bibliotecas na área de programação é pensá-lo como uma caixinha que reúne ferramentas que nós gostaríamos de utilizar para resolver um problema. Sendo que nós não vamos precisar construir essa ferramenta porque ela já foi feita e muito bem testada por outras pessoas - vamos poder simplesmente reusar aquilo.
E podemos entender Framework da mesma forma que entendemos Biblioteca. Só que o framework é uma caixa beeeeem maior e que nos permite fazer coisas mais complexas.
Em programação a Sintaxe representa as regras que a gente precisa seguir para que a nossa mensagem seja entendida pelo nosso ouvinte. Então se vamos escrever um programa em Python, temos que respeitar a Sintaxe do Python. Se queremos escrever um texto em Markdown, vamos precisar seguir a Sintaxe do Markdown.
Já a Semântica da linguagem de programação trata do significado das expressões usadas na respectiva linguagem, é o que vai garantir que o print() deve imprimir a variável que lhe foi passada ao invés elevar ela ao quadrado, por exemplo. Semântica também é a relação entre o que gostaríamos que o código fizesse e o que de fato escrevemos para ele fazer.
- Introdução a API com Flask | PyLadies Salvador
- Tipos de Parâmetros nas requisições REST | Thiago Marinho em Blog da Rocketseat
- O QUE É UM BANCO DE DADOS? | Computação para Curiosos | Programação Dinâmica - Kizzy Terra
- SQL é importante para Cientista de Dados? Por que aprender SQL? | Programação Dinâmica - Kizzy Terra
- Curso Básico de SQL para Análise de Dados | Programação Dinâmica - Kizzy Terra
- Visualização de Dados (Pós da Computação@UFCG) | Nazareno Andrade
- Ciência de Dados Descritiva | Nazareno Andrade