Curso online

Programação Funcional em Python
Este curso busca ensinar conceitos de programação funcional na linguagem de programação Python, com foco em ciência dos dados. O curso consiste em 13 videoaulas, 13 trabalhos de programação, e três encontros online síncronos para resolução de dúvidas e correção de trabalhos práticos.


Inscrições abertas


Carga horária: 16 horas (três encontros síncronos)
Quando: 06/03 a 17/04/2023
Onde: EAD Moodle DCC/UFMG
Período de matrícula: 20/01 a 05/03/2023
Valor da matrícula: R$ 128,00
Avaliação: 12 trabalhos de programação corrigidos automaticamente
Certificação: emitida pelo DCC/UFMG para alunos que obtiverem 60% da nota

O curso cobre conceitos fundamentais e avançados de programação funcional. Entre os conceitos fundamentais, são vistas funções de alta ordem, estruturas de dados imutáveis e padrões comuns de programação funcional como map, filter e reduce. A parte avançada do curso cobre bibliotecas como Pandas, Itertools e Functools; e padrões de projeto como Builders, Templates, Strategies e Memoizadores. Ao longo do curso são vistas também metodologias de programação, como Test-Driven Development e Data-Oriented Programming. Espera-se que ao fim do curso o aluno consiga desenvolver software não trivial na linguagem Python usando técnicas de programação funcional.

Pré-requisitos: - o curso requer somente uma base simples de programação: o aluno deve conhecer os conceitos de algoritmos e estruturas de dados (tópicos cobertos em geral no primeiro período de qualquer curso de TI). - conhecimento de Python não é um pré-requisito: o curso contém uma aula introdutória sobre a linguagem.
Programação: 1. Introdução à linguagem Python 2. Definição de programação funcional 3. Funções de alta ordem 4. Mapas, Filtros e Reduções 5. Processamento de dados 6. List Comprehensions 7. O módulo itertools 8. A biblioteca Pandas 9. Decoradores de funções 10. Esqueletos algorítmicos e currificação 11. Builders, composições e named tuples 12. Memoização 13. Programação voltada a testes

Prof. Fernando Magno Quintão Pereira

Laboratório de Compiladores
Departamento de Ciência da Computação