Introdução a programação de aplicações em nuvem¶

Bem-vindo ao curso de Introdução a programação de aplicações em nuvem! Este curso apresenta uma visão introdutória sobre as principais tecnologias utilizadas atualmente para o desenvolvimento de aplicações de larga escala em nuvem.
Objetivos do Curso¶
Objetivo Geral
O objetivo geral dessa oficina/curso é que o aluno compreenda as principais tecnologias utilizadas para construção de aplicações de larga escala e aprenda alguns paradigmas de programação paralela e distribuída.
Objetivos Específicos¶
Ao final deste curso, você será capaz de:
- Experimentar a construção de aplicações distribuídas (utilizando linguagem C básica)
- Experimentar a construção de aplicações paralelas, usando os núcleos de processamento dos processadores e GPUs
- Conhecer o Kubernetes como ferramenta de DevOps para desenvolvimento de aplicações distribuídas/paralelas
Programa do Curso¶
- Visão Geral: Aplicações e arquiteturas paralelas e distribuídas
- Arquiteturas Paralelas: Conceitos e implementações
- Arquiteturas Distribuídas: Fundamentos e padrões
- MPI: Message Passing Interface para programação distribuída
- Brokers: Sistemas de mensageria e comunicação
- xRPC: Remote Procedure Calls e protocolos de comunicação
- OpenMP: Programação paralela em memória compartilhada
- GPUs: Computação paralela em placas gráficas
- Paralelismo em C: Implementações práticas usando linguagem C
- Cloud Native: Conceitos e metodologias
- Kubernetes: Orquestração de containers
- DevOps: Kubernetes como ferramenta de DevOps para deploy
Pré-requisitos¶
Para aproveitar ao máximo este curso, você precisará de:
- Conhecimentos básicos em programação (especialmente linguagem C)
- Familiaridade com conceitos básicos de sistemas operacionais
- Interesse em tecnologias de alta performance e larga escala
Dica Importante
Este curso combina teoria e prática intensiva. Prepare-se para experimentar e implementar aplicações paralelas e distribuídas!
Resultados Esperados¶
Ao concluir o curso
Espera-se que os estudantes saiam com conhecimento suficiente para se envolverem em projetos que exijam nível mínimo de conhecimento sobre tecnologias voltadas para aplicações de larga escala.
Tecnologias e Palavras-Chave¶
| Categoria | Tecnologias/Conceitos |
|---|---|
| Programação | C, OpenMP, MPI |
| Paralelismo | GPUs, Processamento Multi-core |
| Distribuição | Brokers, xRPC, Message Passing |
| Cloud Native | Microsserviços, DevOps, Docker, Kubernetes |
| Conceitos-Chave | Programação Paralela, Programação Distribuída |
Cronograma do Curso¶
Informações Gerais
Período: 03 a 07 de Novembro de 2025
Modalidade: Curso intensivo presencial
Local: Universidade de Brasília
Cronograma¶
| Data | Tópico | Duração |
|---|---|---|
| 03/11 - 05/11 | Apresentação sobre aplicações e arquiteturas paralelas e distribuídas (MPI e OpenMP) | 3 dias |
| 05/11 | Conhecendo GPUs e outros paradigmas de programação paralela | 1 dia |
| 06/11 - 07/11 | Cloud Native e DevOps com Kubernetes | 2 dias |
Instrutores¶
-
Prof. Dr. Fernando William Cruz
Coordenador do Curso
Professor da FCTE/UnB
-
Bruno Martins
Membro da Equipe
Graduando em Engenharia de Software (FCTE/UnB)
-
Thiago Vivan
Membro da Equipe
Graduando em Engenharia de Software (FCTE/UnB)
Recursos Adicionais¶
Importante
Este é um curso intensivo que requer dedicação para experimentação prática. Certifique-se de ter conhecimentos básicos de programação em C antes de iniciar.
Universidade de Brasília - 2025