Módulo 7 - Python para Juristas I
- 28/6 - Aula
2. Introdução
Programação se aprende pelos dedos.
Estudar a teoria da programação é como estudar a teoria sobre andar de bicicleta: esse saber nos ajuda a compreender nossos objetivos e a mecânica envolvida em pedalar, mas ninguém aprende a andar de bicicleta estudando. O conhecimento é importante, mas somente o exercício desenvolve a habilidade.
O estudo de materiais introdutórios sobre programação é necessário para que uma pessoa aprenda as possibilidades e os limites da produção de códigos em uma linguagem de computação. Porém, é sobretudo pelo ato de programar, realizado em conjunto com o aprendizado teórico, que os alunos se apropriam dos conceitos e se habilitam a produzir programas.
O material deste curso foi pensado a partir dessa perspectiva: é preciso fazer certas distinções teóricas (listas de comandos, tipos de variáveis, formas de iteração, estrutura das funções, etc.), mas é preciso exercitar-se na escrita autônoma de códigos para que essa capacidade seja desenvolvida.
Portanto, não se limite a copiar e colar os exemplos que serão expostos em aula ou no material didático indicado. Digite todo o código você mesmo. É importante errar, pois a identificação e a correção dos erros é parte fundamental do processo de aprendizagem (e da atividade do programador).
De toda forma, tenha em vista que não se trata aqui de preparar exímios programadores, conhecedores de todas as minúcias do Python. Para esta finalidade, há muitos materiais disponíveis, bastante completos e interessantes.
O presente minicurso de 10h é um material introdutório de apoio, uma forma de Python Instrumental, voltado a auxiliar um jurista que não tem experiência em programação a produzir os dois tipos de programas envolvidos na disciplina Data Science e Direito (DSD):
- extratores de dados contidos em páginas da internet;
- organizadores desses dados, que geram tabelas ordenadas.
Este é um curso planejado para ser ministrado em paralelo com a disciplina DSD, como parte integrante daquele curso. Porém, essas atividades são desenhadas de forma que este curso pode ser desenvolvido também de forma autônoma, como uma introdução geral à programação de extratores/organizadores de dados em Python.
Com o objetivo de minimizar os esforços voltados a instalar programas e bibliotecas, utilizaremos neste curso o ambiente de desenvolvimento Spyder, que é o IDE (Integrated Development Environment) que acompanha a ferramenta Anaconda Navigator. O aluno é livre para usar o IDE de sua preferência: IDLE, PyCharm e VS Code, entre outros, mas os nossos exemplos e vídeos explicativos utilizarão o Spyder.
Neste módulo, você também aprenderá o básico das variáveis string e, o que possibilita extrair informações específicas a partir dos conteúdos disponíveis na internet. Esse é o primeiro passo para que você consiga criar programas que façam essa operação de forma rápida e automatizada.
3. Estudo
3.1 Leitura obrigatória
- Castro, Pedro Luz de; Costa, Alexandre (2020). Programando com Python. DSD.arcos.
- Costa, Alexandre (2024). Python para Juristas. GoogleColab.
Nesta semana, trabalhar a parte I. A parte II é o objeto da semana seguinte. Porém, se você tiver facilidade ou interesse especial, pode seguir até o fim dessa unidade e trabalhar textos complementares na aula seguinte.
3.2 Estudo Sugerido
- Como Pensar Como um Cientista da Computação: Aprendendo com Python. Capítulo 1 - Introdução: O caminho do programa.
- Castro, Pedro Luz de. Videoaula 1: Apresentação do Python. (12 min)
A primeira versão deste curso contou com videoaulas explicativas, produzidas especialmente por Pedro Luz de Castro. Os links utilizados não são mais os mesmos, mas essa videoaula é uma ótima explicação geral do que é o Python.
- Castro, Pedro Luz de (2020). Variáveis . Youtube.
- Castro, Pedro Luz de (2020). Tipos de Dados. Youtube.
- Castro, Pedro Luz de (2020). Introdução ao Spyder. Youtube.
- Costa, Alexandre (2021). Comandos e variáveis. Dsd.arcos, 2021.
Esta é a versão anteirior do curso, antes de ser formulado o GoogleNotebook.
3.2 Estudo complementar
- Downey, Allen. Pense em Python. Capítulo 2 - Conceitos: Variáveis, Expressões e Comandos.
- Behrman, Kennedy (2022). Fundamentos de Python para Ciência de Dados. Porto Alegre: Bookman.
Vários são os livros disponíveis sobre essa temática. Este livro tem a vantagem de estar em português e ser disponível na Minha Biblioteca, plataforma da Pearson que é acessível a todos os estudantes da UnB, via Biblioteca Central (BCE).
- Miller, Brad; Ranun, David. TypesNTypeConversion. Youtube.com, 2017.
Este é um video do livro How to Think like a Computer Scientist: Interactive Edition, que trata dos tipos diferentes de valores e de como é possível converter uns nos outros.
4. Atividades
4.1 Atividade complementar: Exercícios básicos de Programação
4.2 Atividade optativa - Instalar a Biblioteca Anaconda
Esta era uma atividade obrigatória, em versões anteriores do curso. Porém, neste momento, indico baixar diretamente o Python e o Spyder, em vez de instalar toda a biblioteca, pois há certas dificuldades em atualizar o Spyder dentro da Anaconda.