Neste curso, assumimos que você já sabe projetar e desenvolver programas mais complexos em Java, graças às boas práticas e princípios exercitados nos cursos anteriores; mas você talvez não se sinta ainda confortável em lidar com cenários mais complexos, onde é difícil desenvolver software com código de qualidade com flexibilidade suficiente para facilitar a implementação de mudanças repentinas de requisitos.
O objetivo deste curso é oferecer a você um aprofundamento em técnicas de programação orientadas a objetos pelo uso de padrões de projeto no contexto de desenvolvimento ágil.
Os seguintes conceitos são apresentados neste curso:
• Revisão de conceitos de orientação a objetos: abstração de dados, encapsulamento, herança e polimorfismo
• Reúso por meio de herança: padrões Null Object, Template Method e Factory Method
• Delegando comportamento com composição: padrões Strategy, Bridge, State e Observer
• Composição recursiva: padrões Composite e Chain of Responsibility
• Envolvendo objetos: padrões Proxy, Decorator e Adapter
• Estratégias para criar objetos: padrões Static Fabric Methods, Singleton e Builder
• Modularidade: padrão Dependency Injection
Ao final deste curso, você terá amadurecido de tal modo suas habilidades de programação que será capaz de implementar partes da aplicação Web final com o componente de gamificação enriquecido constantes do Trabalho de Conclusão da Especialização, aplicando onde apropriado alguns dos padrões apresentados neste curso durante a refatoração na prática TDD.
Olá, bem-vindo ao Curso 5 – Desenvolvimento Ágil com Padrões de Projeto! Estamos contentes que você esteja aqui para se exercitar com padrões de projeto. Neste módulo introdutório, você será apresentado inicialmente a uma revisão rápida de conceitos de orientação a objetos pertinentes a padrões de projeto; depois, a uma introdução a padrões de projeto, onde você aprenderá a usar o padrão Strategy. Ao final deste módulo você também terá aprendido uma forma alternativa a construtores para instanciar objetos, na forma do padrão Static Factory Methods.
What's included
17 videos7 readings4 assignments
Show info about module content
17 videos•Total 137 minutes
Welcome•3 minutes
Orientação a Objetos e Padrões•5 minutes
Abstração de Dados•9 minutes
Encapsulamento•7 minutes
Herança•8 minutes
Polimorfismo•7 minutes
Entendendo Padrões com um Exemplo•7 minutes
Strategy: Seu Primeiro Padrão•7 minutes
Elementos dos Padrões•11 minutes
Entendendo mais sobre Padrões•9 minutes
Hands-on: Padrão Strategy•19 minutes
Problemas com o Uso de Construtores: Parte 1•9 minutes
Problemas com o Uso de Construtores: Parte 2•5 minutes
Problemas com o Uso de Construtores: Parte 3•6 minutes
Seis Problemas no Uso de Construtores•5 minutes
Static Factory Methods – Parte 1•10 minutes
Static Factory Methods – Parte 2•10 minutes
7 readings•Total 70 minutes
Sobre o Curso•10 minutes
Livro para o acompanhamento do curso•10 minutes
Formato do Exercício de Programação•10 minutes
Ferramentas de Comunicação de Problemas aos Instrutores e para Troca de Experiência com Colegas de Curso•10 minutes
Disciplina Consciente e Plágio nos Exercícios•10 minutes
Introdução a Padrões de Projeto•10 minutes
Padrões de Projeto desta Semana•10 minutes
4 assignments•Total 114 minutes
Avaliação Semanal•30 minutes
Sobre Conceitos Essenciais para Padrões de Projeto•24 minutes
Sobre Padrões de Projeto e Padrão Strategy•30 minutes
Sobre Static Factory Methods•30 minutes
Semana 2
Module 2•3 hours to complete
Module details
Olá, bem-vindo ao Curso 5 – Desenvolvimento Ágil com Padrões de Projeto! Neste módulo você aprenderá a identificar quatro padrões em que se utiliza a herança; depois, três padrões em que se utiliza a composição.
What's included
13 videos1 reading2 assignments
Show info about module content
13 videos•Total 104 minutes
Como Não Usar Herança•8 minutes
Uso Apropriado de Herança•10 minutes
Padrão Null Object•10 minutes
Hands-on: Padrão Null Object•6 minutes
Hook Methods•7 minutes
Padrão Template Method•6 minutes
Criação de Objetos – Parte 2: Padrão Factory Method•5 minutes
Quando a Herança não Funciona•5 minutes
Padrão Bridge•7 minutes
Hook Classes•5 minutes
Padrão State•8 minutes
Padrão Observer•8 minutes
Hands-on: Padrão Observer•19 minutes
1 reading•Total 10 minutes
Padrões de Projeto desta Semana•10 minutes
2 assignments•Total 60 minutes
Avaliação Semanal•30 minutes
Exercícios de Prática•30 minutes
Semana 3
Module 3•3 hours to complete
Module details
Olá, bem-vindo ao Curso 5 – Desenvolvimento Ágil com Padrões de Projeto! Neste módulo você aprofundará seus conhecimentos sobre composição recursiva, bem como com os padrões Composite e Chain of Responsibility, nos quais se emprega a composição recursiva. Você será exposto aos padrões Proxy, Decorator e Adapter, em cujas estruturas se faz uso do encapsulamento. Ao final, você aprenderá como criar classes em que se pode instanciar apenas um único objeto, na forma do padrão Singleton.
What's included
12 videos2 readings2 assignments
Show info about module content
12 videos•Total 100 minutes
O Que é Composição Recursiva?•6 minutes
Composição Recursiva com Polimorfismo•4 minutes
Padrão Composite•5 minutes
Hands-on: Padrão Composite•17 minutes
Chain of Responsibility•8 minutes
Padrões Proxy e Decorator•7 minutes
Exemplos de Proxies•12 minutes
Hands-on: Padrão Proxy•13 minutes
Padrão Adapter•8 minutes
Características do Padrão Singleton•8 minutes
Padrão Singleton: Quando Usar e Quando Não Usar•4 minutes
Padrão Lazy Singleton•8 minutes
2 readings•Total 20 minutes
enum Singleton: O Melhor Singleton em Java•10 minutes
Padrões de Projeto desta Semana•10 minutes
2 assignments•Total 60 minutes
Avaliação Semanal•30 minutes
Exercícios de Prática•30 minutes
Semana 4
Module 4•7 hours to complete
Module details
Olá, bem-vindo ao Curso 5 – Desenvolvimento Ágil com Padrões de Projeto! Ao final deste módulo, você terá aprendido a criar objetos por meio dos padrões Abstract Factory e Builder. Você terá aprendido também uma forma de modularizar seu código com base no padrão de projeto Dependency Injection. Ao final, você irá exercitar parte do conhecimento aprendido neste curso ao desenvolver uma pequena aplicação com gamificação!
What's included
5 videos3 readings1 assignment1 peer review
Show info about module content
5 videos•Total 62 minutes
Hands-on: Padrão Builder – Parte 1•18 minutes
Hands-on: Padrão Builder – Parte 2•15 minutes
Padrão Injeção de Dependências: O Que É e Objetivos•9 minutes
Padrão Injeção de Dependências: Contexto da Injeção•8 minutes
DI Design Pattern•12 minutes
3 readings•Total 90 minutes
Padrão de Projeto Builder: O Que É e Motivação•30 minutes
Padrão de Projeto Builder Aninhado•30 minutes
Padrão de Projeto Builder Completo•30 minutes
1 assignment•Total 30 minutes
Sobre Builder e Dependency Injection•30 minutes
1 peer review•Total 240 minutes
Componente de Gamification Utilizando Padrões•240 minutes
Instructor
Instructor ratings
Instructor ratings
We asked all learners to give feedback on our instructors based on the quality of their teaching style.
Criado em 1950, o ITA é o instituto de ensino superior do Comando da Aeronáutica (COMAER), localizado no Departamento de Ciência e Tecnologia Aeroespacial (DCTA). Mantém cursos de graduação em engenharia (Aeronáutica, Civil-Aeronáutica, Eletrônica, Mecânica-Aeronáutica, Engenharia de Computação, Aeroespacial), especialização, extensão e pós-graduação stricto sensu (Mestrado, Mestrado Profissionalizante e Doutorado).
OK
Why people choose Coursera for their career
Felipe M.
Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
Jennifer J.
Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
Larry W.
Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
Chaitanya A.
"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."
Learner reviews
4.6
80 reviews
5 stars
76.25%
4 stars
15%
3 stars
6.25%
2 stars
1.25%
1 star
1.25%
Showing 3 of 80
V
VM
5·
Reviewed on Oct 29, 2017
Fantastic opportunity to have hands on experience with design patterns! Highly recommended!
T
TR
4·
Reviewed on Nov 13, 2018
Falta alguns exemplos para simplificar alguns padrões, como pro exemplo o DIP que é um pouco complicado só vendo diagramas.Hands-on seria uma boa opção de exemplo.
L
LR
4·
Reviewed on Mar 22, 2021
Um curso excelente para dar uma visão maior sobre os padrões e onde aplica-lós.
When will I have access to the lectures and assignments?
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
What will I get if I subscribe to this Specialization?
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
Is financial aid available?
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.