Imagem do Curso gratuito Design Patterns na programação

Curso online gratuitoDesign Patterns na programação

Duração do curso online: 15 horas e 44 minutos

Novo

Escreva código mais limpo e escalável com Design Patterns. Curso online gratuito com prática em TypeScript, exemplos reais e conceitos do GoF.

Neste curso gratuito, aprenda sobre

  • Conceitos de Design Patterns GoF: propósito, categorias e trade-offs (complexidade/overengineering)
  • Leitura de UML básico: herança, associações e diagrama de classes para modelar soluções
  • Configuração de projeto TypeScript: tsconfig.json, compilação e opções do compilador
  • Singleton: garantir instância única, ponto global de acesso e impactos em testes/acoplamento
  • Builder: criação fluente de objetos complexos, separando construção e representação
  • Prototype: clonagem de objetos e reutilização eficiente de instâncias em JS/TS
  • Factory Method vs Abstract Factory: criação desacoplada e famílias de objetos relacionados
  • Composite: tratar objetos e composições de forma uniforme em estruturas hierárquicas
  • Adapter e Bridge: adaptar interfaces e separar abstração da implementação para evoluir sistemas
  • Decorator, Facade e Proxy: extensão dinâmica, simplificação de API e controle de acesso/cache
  • Flyweight: otimização de memória com compartilhamento de estado intrínseco em muitos objetos
  • Strategy, Template Method e State: variar algoritmos, esqueleto fixo e comportamento por estado
  • Command, Memento, Mediator e Chain: encapsular ações, undo, coordenação e pipeline de handlers
  • Observer, Iterator e Visitor: notificação, iteração uniforme e operações sobre estruturas complexas

Descrição do curso

Dominar Design Patterns é um passo decisivo para evoluir de “fazer funcionar” para construir software sustentável. Neste curso online gratuito de Design Patterns na programação, você aprende como arquitetar soluções reutilizáveis para problemas recorrentes, reduzindo acoplamento, melhorando a legibilidade e facilitando a evolução do projeto ao longo do tempo. A proposta é transformar a forma como você pensa o design de código, dando repertório para decidir quando aplicar (ou não aplicar) um padrão de projeto.

Ao longo das aulas, os conceitos clássicos do GoF são apresentados com uma abordagem prática, conectando teoria e aplicação no dia a dia. Você verá como representar ideias com UML básica e como organizar um projeto em TypeScript para experimentar as implementações. Em vez de decorar nomes, o foco é compreender intenção, trade-offs e consequências de design: por que determinado padrão existe, que tipo de problema ele resolve, quais sinais do código indicam a necessidade e quais riscos aparecem quando padrões são usados sem critério.

Você terá contato com padrões criacionais, estruturais e comportamentais, entendendo como eles colaboram entre si para criar sistemas mais flexíveis. A experiência combina exemplos de implementação, raciocínio arquitetural e exercícios de fixação que reforçam as decisões por trás de cada solução. Isso ajuda você a ganhar confiança para refatorar com propósito, estabelecer contratos mais claros entre componentes e construir funcionalidades sem transformar o código em uma “teia” difícil de manter.

O curso é indicado para quem já programa e quer elevar a maturidade técnica, especialmente em desenvolvimento web e aplicações com JavaScript/TypeScript. Ao finalizar, você estará mais preparado para entrevistas técnicas, para discutir arquitetura com o time e para criar projetos com crescimento previsível, fazendo escolhas conscientes entre simplicidade e extensibilidade. Se você busca melhorar sua capacidade de projetar software e escrever código mais profissional, este treinamento entrega uma base sólida e aplicável.

Conteúdo do curso

  • Aula em vídeo: Padrões de Projeto (Design Patterns - GoF) - Introdução - Parte 1/45 12m
  • Exercício: Qual é uma potencial desvantagem de utilizar design patterns em seu código?
  • Aula em vídeo: Padrões de Projeto - UML Básico - Parte 2/45 11m
  • Exercício: Qual das alternativas representa corretamente a relação de herança entre duas classes em um diagrama de classes?
  • Aula em vídeo: Padrões de Projeto - Configurando um projeto TypeScript - Parte 3/45 22m
  • Exercício: Qual é o propósito de criar um arquivo tsconfig.json em um projeto TypeScript?
  • Aula em vídeo: Singleton Teoria - Padrões de Projeto - Parte 4/45 15m
  • Exercício: Qual é a principal responsabilidade do padrão de projeto Singleton?
  • Aula em vídeo: Singleton Prática - Padrões de Projeto - Parte 5/45 28m
  • Exercício: Qual é o principal objetivo do padrão de projeto Singleton?
  • Aula em vídeo: Builder Teoria - Padrões de Projeto - Parte 6/45 18m
  • Exercício: Qual é a principal vantagem de utilizar o padrão de projeto Builder na criação de objetos complexos?
  • Aula em vídeo: Builder Prática - Padrões de Projeto - Parte 7/45 37m
  • Exercício: Qual é a principal vantagem de utilizar o padrão de projeto Builder na programação?
  • Aula em vídeo: Prototype Teoria - Padrões de Projeto - Parte 8/45 19m
  • Exercício: Qual é a principal vantagem de usar o padrão de projeto Prototype em linguagens baseadas em protótipos como JavaScript e TypeScript?
  • Aula em vídeo: Prototype Prática - Padrões de Projeto - Parte 9/45 27m
  • Exercício: Qual é a principal função do padrão de projeto Prototype no contexto de programação em JavaScript?
  • Aula em vídeo: Factory Method Teoria - Padrões de Projeto - Parte 10/45 19m
  • Exercício: Qual é o principal objetivo do padrão de projeto Factory Method?
  • Aula em vídeo: Factory Method Prática - Padrões de Projeto - Parte 11/45 29m
  • Exercício: Qual é a principal vantagem de usar o padrão de projeto Factory Method em relação à criação direta de objetos?
  • Aula em vídeo: Abstract Factory Teoria - Padrões de Projeto - Parte 12/45 18m
  • Exercício: Qual é a principal diferença entre o padrão de projeto Factory Method e o Abstract Factory?
  • Aula em vídeo: Abstract Factory Prática - Padrões de Projeto - Parte 13/45 28m
  • Exercício: Qual é o objetivo principal do padrão de design Abstract Factory na programação?
  • Aula em vídeo: Composite Teoria - Padrões de Projeto - Parte 14/45 16m
  • Exercício: Qual é a principal característica do padrão de design Composite em termos de organização de objetos?
  • Aula em vídeo: Composite Prática - Padrões de Projeto - Parte 15/45 30m
  • Exercício: No padrão de design Composite, quais são os principais componentes envolvidos na implementação e como eles se relacionam?
  • Aula em vídeo: Adapter Teoria - Padrões de Projeto - Parte 16/45 13m
  • Exercício: Qual é a principal função do padrão de projeto Adapter em desenvolvimento de software?
  • Aula em vídeo: Adapter Prática - Padrões de Projeto - Parte 17/45 18m
  • Exercício: Qual das alternativas a seguir define corretamente a função de um padrão Adapter em Design Patterns?
  • Aula em vídeo: Bridge Teoria - Padrões de Projeto - Parte 18/45 13m
  • Exercício: Qual é a principal intenção do padrão de projeto Bridge em programação?
  • Aula em vídeo: Bridge Prática - Padrões de Projeto - Parte 19/45 23m
  • Exercício: Qual o principal objetivo do padrão de design Bridge em programação?
  • Aula em vídeo: Decorator Teoria - Padrões de Projeto - Parte 20/45 16m
  • Exercício: Qual é a principal vantagem do padrão de projeto Decorator conforme discutido no curso?
  • Aula em vídeo: Decorator Prática - Padrões de Projeto - Parte 21/45 21m
  • Exercício: Qual é o principal objetivo do padrão de projeto Decorator?
  • Aula em vídeo: Façade Teoria e Prática - Padrões de Projeto - Parte 22/45 14m
  • Exercício: Qual é a principal intenção do padrão de projeto Facade (Fachada) na programação?
  • Aula em vídeo: Proxy Teoria - Padrões de Projeto - Parte 23/45 15m
  • Exercício: Qual é a principal intenção do padrão de projeto Proxy?
  • Aula em vídeo: Proxy Prática - Padrões de Projeto - Parte 24/45 25m
  • Exercício: Qual é a principal função do padrão de projeto Proxy no contexto da programação?
  • Aula em vídeo: Flyweight Teoria - Padrões de Projeto - Parte 25/45 15m
  • Exercício: Em que situações o padrão de projeto Flyweight é mais eficaz para otimizar o desempenho de uma aplicação?
  • Aula em vídeo: Flyweight Prática - Padrões de Projeto - Parte 26/45 27m
  • Exercício: Qual é a principal finalidade do padrão de projeto Flyweight na programação?
  • Aula em vídeo: Strategy Teoria - Padrões de Projeto - Parte 27/45 13m
  • Exercício: Qual é a principal intenção do padrão de projeto Strategy?
  • Aula em vídeo: Strategy Prática - Padrões de Projeto - Parte 28/45 25m
  • Exercício: Qual é a principal vantagem de utilizar o padrão de projeto Strategy em um sistema de e-commerce?
  • Aula em vídeo: Command Teoria - Padrões de Projeto - Parte 29/45 13m
  • Exercício: Qual é uma vantagem principal do padrão de projeto Command?
  • Aula em vídeo: Command Prática - Padrões de Projeto - Parte 30/45 27m
  • Exercício: Qual é a principal responsabilidade do padrão de design Command em um sistema de automação residencial?
  • Aula em vídeo: Memento Teoria - Padrões de Projeto - Parte 31/45 13m
  • Exercício: Qual é o principal objetivo do padrão de projeto Memento?
  • Aula em vídeo: Memento Prática - Padrões de Projeto - Parte 32/45 25m
  • Exercício: Qual é a função principal do padrão de projeto Memento na programação?
  • Aula em vídeo: State Teoria - Padrões de Projeto - Parte 33/45 14m
  • Exercício: Qual é o principal benefício ao utilizar o padrão de projeto State em um sistema que possui múltiplos estados de contexto?
  • Aula em vídeo: State Prática - Padrões de Projeto - Parte 34/45 26m
  • Exercício: No padrão de projeto State, qual é a principal vantagem de mover os comportamentos específicos de estado para dentro das classes de estado?
  • Aula em vídeo: Mediator Teoria - Padrões de Projeto - Parte 35/45 12m
  • Exercício: Qual é a principal finalidade do padrão de projeto Mediator?
  • Aula em vídeo: Mediator Prática - Padrões de Projeto - Parte 36/45 22m
  • Exercício: Qual é a principal função de um mediator em um padrão de projeto?
  • Aula em vídeo: Chain Of Responsibility Teoria - Padrões de Projeto - Parte 37/45 18m
  • Exercício: Qual é a principal vantagem do padrão de projeto Chain of Responsibility?
  • Aula em vídeo: Chain Of Responsibility Prática - Padrões de Projeto - Parte 38/45 16m
  • Exercício: Qual é o principal objetivo do padrão de projeto 'Chain of Responsibility'?
  • Aula em vídeo: Template Method Teoria - Padrões de Projeto - Parte 39/45 14m
  • Exercício: Qual é a principal diferença entre o padrão Template Method e o padrão Strategy?
  • Aula em vídeo: Template Method Prática - Padrões de Projeto - Parte 40/45 32m
  • Exercício: Qual é o principal objetivo do padrão de projeto Template Method?
  • Aula em vídeo: Observer Teoria - Padrões de Projeto - Parte 41/45 11m
  • Exercício: Qual é a principal característica do padrão de projeto Observer?
  • Aula em vídeo: Observer Prática - Padrões de Projeto - Parte 42/45 28m
  • Exercício: Qual padrão de projeto é utilizado para permitir que um objeto notifique automaticamente uma lista de dependentes sobre qualquer alteração de estado, sem que os dependentes saibam detalhes sobre o objeto que notifica?
  • Aula em vídeo: Iterator Teoria - Padrões de Projeto - Parte 43/45 21m
  • Exercício: Qual é o principal objetivo do padrão de projeto Iterator?
  • Aula em vídeo: Iterator Prática - Padrões de Projeto - Parte 44/45 32m
  • Exercício: Qual é a principal vantagem de utilizar o design pattern Iterator em estruturas de dados?
  • Aula em vídeo: Visitor Prática e Teoria - Padrões de Projeto - Parte 45/45 33m
  • Exercício: Qual é uma das principais vantagens de usar o padrão de projeto Visitor em uma estrutura de dados complexa?

Este curso gratuito inclui:

15 horas e 44 minutos de curso online em vídeo

Certificado digital de conclusão de curso ( Gratuito )

Exercícios para treinar seus conhecimentos

100% gratuito, do conteúdo ao certificado

Pronto para começar?Baixe o app e comece hoje mesmo.

Instale o app agora

para ter acesso ao curso
Ícone representando cursos de tecnologia e negócios

+ de 5.000 cursos gratuitos

Programação, Inglês, Marketing Digital e muito mais! Aprenda o que quiser, gratuitamente.

Ícone de calendário com alvo representando planejamento de estudos

Plano de estudos com IA

A Inteligência Artificial do nosso aplicativo pode criar um cronograma de estudos para o curso que você escolher.

Ícone de profissional representando carreira e negócios

Do zero ao Sucesso profissional

Melhore seu currículo com nosso Certificado gratuito e depois utilize nossa Inteligência Artificial para buscar seu emprego dos sonhos.

Você também pode utilizar o QR Code ou os Links abaixo

QR Code - Baixar Cursa - Cursos Online

Mais cursos gratuitos em Ferramentas de TI

Ebook + Áudiobooks gratuitos! Aprenda ouvindo ou lendo!

Baixe o Aplicativo agora para ter acesso a + de 5000 cursos gratuitos, exercícios, certificado e muito conteúdo sem pagar nada!

  • Cursos online 100% gratuitos do início ao fim

    Milhares de cursos online em vídeo, ebooks e áudiobooks.

  • Mais de 60 mil exercícios gratuitos

    Para testar seus conhecimentos no decorrer dos cursos online

  • Certificado Digital gratuito válido em todo o Brasil

    Gerado diretamente na galeria de fotos do seu celular e enviado ao seu e-mail

Aplicativo Cursa na tela de ebook, na tela de curso em vídeo e na tela de exercícios do curso, mais o certificado de conclusão de curso