
Curso de Programador de Software
Passe de escrever a sua primeira linha de código a conceber sistemas de software escaláveis que as empresas reais implementam. Este curso abrange tudo, desde conceitos básicos de programação e bases de dados até APIs, testes e implementação na cloud. Irá licenciar-se com um conjunto de competências prontas para portefólio e a profundidade técnica que os empregadores realmente procuram.
O que vai aprender:
Dominará os conceitos fundamentais de programação em que todos os programadores profissionais se baseiam, incluindo variáveis, fluxo de controlo, funções e design orientado a objetos. Irá construir e proteger APIs RESTful, conceber bases de dados relacionais e NoSQL, e escrever testes automatizados em todos os níveis da pirâmide de testes. O curso abrange padrões de arquitetura de software, pipelines de DevOps, conteinerização com Docker e implementação na cloud. Irá também aprender otimização de desempenho, práticas de codificação segura e fluxos de trabalho de equipas Agile. No final, terá as competências para contribuir em equipas de engenharia reais e o portefólio para o comprovar.
Como estuda de forma prática Curso de Programador de Software
Como pratica Curso de Programador de Software
Para si que é empresa e quer formar a sua equipa
Na Dedika para empresas, o curso inclui exercícios e exemplos adaptados ao seu próprio negócio e às necessidades da sua empresa.
Conteúdo do curso
8 Capítulos • 39 AulasDuração entre 4 e 360 horas (você decide)
Capítulo 1EsconderEsconder detalhesVer detalhesFundamentos de Programação e Configuração do Ambiente
Fundamentos de Programação e Configuração do Ambiente
Aula 1 • Configurar o Seu Ambiente de Desenvolvimento
Instala e configura um editor de código, um runtime e um gestor de pacotes. Garante que cada estudante dispõe de um espaço de trabalho idêntico e reproduzível antes de escrever qualquer código.
Aula 2 • Proficiência na Linha de Comandos
Ensina navegação, manipulação de ficheiros e gestão de processos num terminal. A fluência na linha de comandos acelera todos os fluxos de trabalho subsequentes no curso.
Aula 3 • Controlo de Versões com Git
Apresenta o Git como a ferramenta padrão da indústria para registar alterações e colaborar. Os estudantes fazem commit, ramificam e fazem push de código até ao final desta secção.
Aula 4 • Como os Computadores Executam Código
Aborda ciclos de instrução da CPU, hierarquia de memória e o papel dos sistemas operativos. Estabelece o contexto de hardware que explica todos os conceitos de nível superior no curso.
Capítulo 2EsconderEsconder detalhesVer detalhesConceitos Essenciais de Programação
Conceitos Essenciais de Programação
Aula 1 • Coleções e Padrões de Iteração
Apresenta arrays, listas e dicionários para armazenar dados agrupados. Os estudantes aplicam padrões de iteração para processar conjuntos de dados reais de forma eficiente.
Aula 2 • Variáveis, Tipos e Operadores
Explica como os dados são armazenados, tipificados e transformados através de expressões. Fornece o vocabulário necessário para ler e escrever qualquer instrução de código.
Aula 3 • Funções e Código Modular
Define funções como unidades de lógica reutilizáveis e testáveis. O design modular reduz a duplicação e é a base de todos os programas maiores neste curso.
Aula 4 • Fluxo de Controlo e Tomada de Decisões
Aborda condicionais e ciclos que direcionam os caminhos de execução do programa. Os estudantes implementam lógica de ramificação e algoritmos iterativos a partir do zero.
Aula 5 • Tratamento de Erros e Depuração
Ensina o tratamento estruturado de exceções e técnicas sistemáticas de depuração. Os estudantes aprendem a ler stack traces e a isolar bugs usando um depurador.
Capítulo 3EsconderEsconder detalhesVer detalhesProgramação Orientada a Objetos
Programação Orientada a Objetos
Aula 1 • Composição e Injeção de Dependências
Contrasta composição com herança e introduz a injeção de dependências. Os estudantes aprendem quando preferir relações tem-um em vez de hierarquias é-um.
Aula 2 • Classes e Objetos
Define classes como modelos e objetos como instâncias com estado e comportamento. Conecta a sintaxe POO às funções modulares introduzidas no capítulo anterior.
Aula 3 • Herança e Polimorfismo
Modela relações é-um através de hierarquias de classes e sobreposição de métodos. Os estudantes escrevem código polimórfico que trata múltiplos tipos através de uma única interface.
Aula 4 • Princípios de Design SOLID
Aplica cinco princípios fundamentais de design de OOP a exemplos de código reais. Os estudantes refatoram classes mal estruturadas em designs limpos e mantíveis.
Aula 5 • Encapsulamento e Controlo de Acesso
Explica como ocultar o estado interno e expor interfaces controladas. O encapsulamento previne mutações indesejadas e impõe limites claros entre módulos.
Capítulo 4EsconderEsconder detalhesVer detalhesEstruturas de Dados e Algoritmos
Estruturas de Dados e Algoritmos
Aula 1 • Algoritmos de Ordenação e Pesquisa
Implementa e compara algoritmos clássicos de ordenação e pesquisa. Os estudantes fazem benchmark de implementações e justificam a seleção do algoritmo pela complexidade.
Aula 2 • Estruturas de Dados Lineares
Aborda arrays, listas ligadas, pilhas e filas com os seus compromissos. Os estudantes implementam cada estrutura e identificam casos de uso apropriados.
Aula 3 • Análise de Complexidade
Introduz a notação Big-O para medir a eficiência de algoritmos. Os estudantes avaliam o desempenho do código antes de escolher entre implementações concorrentes.
Aula 4 • Estratégias de Desenho de Algoritmos
Introduz abordagens de dividir e conquistar, programação dinâmica e gananciosas. Os estudantes decompõem problemas complexos em subproblemas solucionáveis.
Aula 5 • Árvores e Grafos
Explica modelos de dados hierárquicos e de rede usados em sistemas reais. Os estudantes percorrem árvores e grafos usando estratégias de profundidade e largura.
Capítulo 5EsconderEsconder detalhesVer detalhesBase de Dados e Persistência de Dados
Base de Dados e Persistência de Dados
Aula 1 • Fundamentos de Bases de Dados Relacionais
Explica tabelas, chaves e relações como a base das bases de dados relacionais. Os estudantes modelam um domínio usando diagramas entidade-relacionamento antes de escrever qualquer SQL.
Aula 2 • Integração de Base de Dados no Código da Aplicação
Conecta uma aplicação a uma base de dados usando um ORM e padrões de consulta direta. Os estudantes constroem uma camada de repositório que abstrai a persistência da lógica de negócio.
Aula 3 • NoSQL e Armazenamentos de Documentos
Contrasta armazenamentos de documentos, chave-valor e colunas com bases de dados relacionais. Os estudantes escolhem o modelo de persistência correto para uma determinada forma de dados.
Aula 4 • Linguagem de Consulta SQL
Aborda operações SELECT, INSERT, UPDATE, DELETE e JOIN. Os estudantes escrevem consultas que respondem a perguntas de negócio reais sobre um conjunto de dados de exemplo.
Aula 5 • Transações e Integridade de Dados
Explica as propriedades ACID e como as transações protegem a consistência dos dados. Os estudantes implementam lógica de commit e rollback no código da aplicação.
Capítulo 6EsconderEsconder detalhesVer detalhesDesenvolvimento Web e APIs
Desenvolvimento Web e APIs
Aula 1 • Construir uma API RESTful
Desenha e implementa endpoints REST seguindo convenções orientadas a recursos. Os estudantes criam uma API CRUD apoiada pela camada de base de dados do capítulo anterior.
Aula 2 • Autenticação e Autorização
Implementa autenticação baseada em tokens e controlo de acesso baseado em funções. Os estudantes protegem endpoints para que apenas utilizadores autorizados possam aceder a recursos protegidos.
Aula 3 • Consumir APIs Externas
Faz pedidos HTTP autenticados a serviços de terceiros e trata as respostas. Os estudantes integram uma API pública na sua aplicação usando melhores práticas.
Aula 4 • HTTP e o Ciclo de Pedido Web
Explica métodos HTTP, códigos de estado, cabeçalhos e o modelo pedido-resposta. Este modelo mental sustenta todas as APIs e frameworks web usados posteriormente.
Aula 5 • Documentação e Versionamento de API
Gera documentação interativa de API e gere alterações significativas através de versionamento. Uma documentação clara reduz o atrito de integração para os consumidores da API.
Capítulo 7EsconderEsconder detalhesVer detalhesTeste de Software e Garantia de Qualidade
Teste de Software e Garantia de Qualidade
Aula 1 • Testes de Integração e de API
Testa interações entre componentes e valida contratos de API de ponta a ponta. Os estudantes detetam bugs de integração que os testes unitários não conseguem detetar.
Aula 2 • Teste Unitário na Prática
Escreve testes unitários isolados para funções e classes usando uma framework de testes. Os estudantes atingem alta cobertura nos módulos de lógica de negócio essenciais.
Aula 3 • Desenvolvimento Orientado por Testes
Aplica o ciclo vermelho-verde-refatorar para orientar o design através de testes falhados. Os estudantes experimentam como o TDD produz código mais simples e mais testável.
Aula 4 • Fundamentos e Estratégia de Teste
Introduz a pirâmide de testes e os compromissos de custo-benefício de cada camada. Os estudantes planeiam uma estratégia de teste antes de escrever um único caso de teste.
Aula 5 • Integração Contínua e Automação de Testes
Configura um pipeline de CI que executa testes automaticamente em cada commit. Os estudantes bloqueiam merges quando os testes falham, impondo portões de qualidade no fluxo de trabalho.
Capítulo 8EsconderEsconder detalhesVer detalhesArquitetura de Software e Desenho de Sistemas
Arquitetura de Software e Desenho de Sistemas
Aula 1 • Resiliência e Tolerância a Falhas
Desenha sistemas que degradam graciosamente sob falha usando disjuntores e repetições. Os estudantes aplicam padrões de resiliência à API construída nos capítulos anteriores.
Aula 2 • Desenho de Escalabilidade e Desempenho
Aborda escalabilidade horizontal, estratégias de cache e balanceamento de carga na fase de design. Os estudantes identificam gargalos antes de escrever código usando planeamento de capacidade.
Aula 3 • Visão Geral de Padrões Arquiteturais
Examina arquiteturas em camadas, orientadas a eventos e de microsserviços com os seus compromissos. Os estudantes mapeiam um documento de requisitos para um estilo arquitetural apropriado.
Aula 4 • Prática de Desenho de Sistemas
Aplica todos os conceitos arquiteturais para desenhar um sistema distribuído realista de ponta a ponta. Os estudantes apresentam e defendem os seus designs contra cenários de escalabilidade e falha.
Aula 5 • Noções Básicas de Design Orientado ao Domínio
Introduz contextos limitados, agregados e linguagem ubíqua como ferramentas de design. Os estudantes particionam um modelo de domínio em módulos coesos e implementáveis de forma independente.
Seu certificado válido de conclusão
Este curso é para si:
Mudança de carreira: pretende uma via estruturada e alinhada com as exigências dos empregadores para o desenvolvimento de software.
Programador autodidata: tem lacunas nos fundamentos e precisa de um plano curricular coeso.
Profissional de TI: apoia sistemas de software e pretende fazer a transição para a sua construção.
Licenciado recente: estudou uma área não relacionada e está a reorientar-se para carreiras tecnológicas.
Empreendedor: cria produtos e pretende colaborar de forma mais eficaz com programadores.
Programador amador: concluiu tutoriais para iniciantes e está pronto para aprofundar o nível profissional.
O que os nossos formandos dizem
As suas aulas são perfeitas. Adquiri o pacote de um ano e, finalmente, tenho a oportunidade de acompanhar diversos temas do meu interesse sem precisar mudar de plataforma... agradeço por tudo o que fazem, já recomendei vocês a outras pessoas...

Eu gosto de como as lições são directas ao ponto e como eu consigo alterar capítulos e saltar conteúdos que não preciso.

Gosto do conteúdo e do modo de apresentação e transcrição de vídeos, o que acelera o processo!

A plataforma é rápida, simples de usar. A diversidade de conteúdo e os vídeos complementares ajudam muito na aprendizagem.

Principais capacitações
Perguntas Frequentes
Quem é a Dedika?
O certificado é válido em Angola?
Os cursos são gratuitos?
Qual é a carga horária do curso?
Como são os cursos?
Como funcionam os cursos?
Qual é a duração dos cursos?
Qual é o custo ou preço dos cursos?
O que é um curso EAD ou online e como funciona?
Curso em PDF




















