Escolha o seu idioma
Curso de Programador de Software
Mais de 2 milhões de estudantes em todo o mundo

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.

Dedika para empresas

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.

Clique aqui

Conteúdo do curso

8 Capítulos • 39 AulasDuração entre 4 e 360 horas (você decide)

Capítulo 1Ver detalhes

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 2Ver detalhes

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 3Ver detalhes

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 4Ver detalhes

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 5Ver detalhes

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 6Ver detalhes

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 7Ver detalhes

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 8Ver detalhes

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.

Certificação

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...
Giulio Carlo
Giulio CarloAluno de Marketing Digital
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.
Mariana Ferres
Mariana FerresAluna de Fotografia
Gosto do conteúdo e do modo de apresentação e transcrição de vídeos, o que acelera o processo!
Luciana Alvarenga
Luciana AlvarengaAluna de Design de Unhas
A plataforma é rápida, simples de usar. A diversidade de conteúdo e os vídeos complementares ajudam muito na aprendizagem.
André Felipe
André FelipeAluno de Engenharia de Prompt

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