Lecture Note 01
Lecture Note 01
2
Conteúdo
• Justificativa
• Objetivos
• Ementa
• Conteúdo
• Metodologia
• Avaliação
• Ambientes Virtuais
• Bibliografia
3
Justificativa
Por que cursar essa disciplina?
5
fi
fi
“Ser cientista de dados
signi ca trabalhar com
programação no dia a dia,
ou seja, todo(a) cientista de
dados precisa saber
programar.”
Fonte: https://www.alura.com.br/artigos/cientista-de-dados-programa
fi
Por que
Python?
7
“The process of translating and using How
to Think Like a Computer Scientist for the
past two years has con rmed Python’s
suitability for teaching beginning
students. Python greatly simpli es
programming examples and makes
important programming ideas easier to
teach.”
Jeff Elkner, 2002
Fonte: https://www.greenteapress.com/thinkpython/thinkCSpy/thinkCSpy.pdf
fi
fi
https://greenteapress.com/wp/think-python-3rd-edition/
9
https://greenteapress.com/wp/think-python-2e/
10
https://greenteapress.com/wp/elements-of-data-science/ https://greenteapress.com/wp/think-stats-2e/
Fonte: https://spectrum.ieee.org/top-programming-languages-2024
https://spectrum.ieee.org/top-programming-languages-2024
https://spectrum.ieee.org/top-programming-languages-2024
https://spectrum.ieee.org/top-programming-languages-2024
Fonte: https://survey.stackover ow.co/2024
fl
Fonte: https://survey.stackover ow.co/2024/technology#most-popular-technologies
fl
Fonte: https://survey.stackover ow.co/2024/technology#most-popular-technologies-language-prof
fl
Fonte: https://survey.stackover ow.co/2024/technology#most-popular-technologies-language-learn
fl
Fonte: https://survey.stackover ow.co/2024/technology#most-popular-technologies-language-other
fl
Fonte: https://survey.stackover ow.co/2024/technology#admired-and-desired
fl
Ementa
O que veremos na disciplina?
21
fl
Conteúdo
Tópicos a serem trabalhados
22
Cronograma Completo
22/10/2024 Introdução à Disciplina
24/10/2024 Abstração, Modularidade e Programação Modular
29/10/2024 Modularização de Programas em Python
31/10/2024 Tarefa de Programação 1
05/11/2024 Introdução à Programação Orientação a Objetos
07/11/2024 Encontros Universitários 2024
12/11/2024 Classes, Objetos e sua Implementação em Python
14/11/2024 Tarefa de Programação 2
19/11/2024 Herança de Classes e Polimor smo
21/11/2024 Tarefa de Programação 3
26/11/2024 Classes Abstratas e Decoradores de Métodos
28/11/2024 Tarefa de Programação 4
03/12/2024 Primeira Avaliação - AP01
05/12/2024 Build Automatizado (poetry)
10/12/2024 Testes Automatizados (pytest e unittest)
12/12/2024 Tarefa de Programação 5 e 6
17/12/2024 Tratamento de Erros e Exceções
19/12/2024 Tarefa de Programação 7
24/12/2024 Recesso escolar - Graduação e Pós-Graduação
26/12/2024 Recesso escolar - Graduação e Pós-Graduação
fi
Cronograma Completo
31/12/2024 Recesso escolar - Graduação e Pós-Graduação
02/01/2025 Recesso escolar - Graduação e Pós-Graduação
07/01/2025 Expressões Lambda e Funções Map/Filter/Reduce
09/01/2025 Funções/Objetos Parcias e Geradores
14/01/2025 Tarefa de Programação 8
16/01/2025 Programação com Threads
21/01/2025 Tarefa de Programação 9
23/01/2025 Processamento de Fluxo de Dados (arquivos)
28/01/2025 Processamento de Fluxo de Dados (rede/internet)
30/01/2025 Tarefa de Programação 10
04/02/2025 Especi cação do Trabalho Final
06/02/2025 Acompanhamento do Trabalho Final
11/02/2025 Acompanhamento do Trabalho Final
13/02/2025 Acompanhamento do Trabalho Final
18/02/2025 Acompanhamento do Trabalho Final
20/02/2025 Acompanhamento do Trabalho Final
25/02/2025 Acompanhamento do Trabalho Final
27/02/2025 Acompanhamento do Trabalho Final
04/03/2025 Ponto Facultativo - Carnaval
06/03/2025 Entrega do Trabalho Final
fi
Metodologia
Como o conteúdo será trabalhado?
27
…Avaliação
Como o aprendizado será avaliado?
28
…Avaliação
Como o aprendizado será avaliado?
28
…Avaliação
Como o aprendizado será avaliado?
28
…Avaliação
Como o aprendizado será avaliado?
28
…Avaliação
Como o aprendizado será avaliado?
28
…Avaliação
Como o aprendizado será avaliado?
28
…Avaliação
Como o aprendizado será avaliado?
28
…Avaliação
Como o aprendizado será avaliado?
Fonte: https://si3.ufc.br/
Ambientes de Atividades Práticas
30
Bibliografia Básica
1 2 3
1. BORGES, Luiz Eduardo. Python para desenvolvedores. São Paulo: Novatec, c2014.
2. LUTZ, Mark; ASCHER, David. Aprendendo python. 2. ed. Porto Alegre: Bookman, 2008.
3. KNUTH, Donald Ervin. The art of computer programming. 3rd ed. Upper Saddle River: Addison-Wesley, 1997.
31
Bibliografia Extra
https://greenteapress.com/wp/think-python-2e/ https://greenteapress.com/wp/think-python-3rd-edition/
32
Técnicas de Programação para
Ciência de Dados (Cod. CK0442)
Departamento de Computação
Bacharelado em Ciência de Dados
Prof. Lincoln S. Rocha (e-mail: [email protected])
Semestre Letivo: 2024.2