Neste curso, assumimos que você já sabe projetar e desenvolver programas mais complexos em Java, com método e organização graças às boas práticas e princípios exercitados no curso anterior; mas você talvez não se sinta ainda confortável em projetar programas usando técnicas ágeis, como o desenvolvimento guiado por testes (TDD).
O objetivo deste curso é expor você aos princípios e práticas de desenvolvimento guiado por testes, tanto para modelar quanto para desenvolver aplicações e componentes de software, sem abandonar os conceitos e princípios de orientação a objetos aprendidos no curso anterior. De fato, pregamos que tais conceitos e princípios fortalecem o emprego do TDD no desenvolvimento ágil de software com mais qualidade. Este curso terá um grande foco em atividades hands-on, permitindo a você captar todos os aspectos práticos da técnica e facilitar a sua aplicação quando estiver projetando e desenvolvendo software de maneira ágil nos próximos cursos.
Os conceitos de desenvolvimento de software com Java apresentados neste curso incluem o seguinte: revisão de testes de unidade; automação de testes; desenvolvimento guiado por testes; ciclo do TDD; refatoração de código de produção; ciclo de refatoração; uso de objetos stubs e mocks; boas práticas no TDD; modelagem de software por meio do TDD.
Ao final deste curso, você terá amadurecido de tal modo suas habilidades de programação que será capaz de implementar, agora usando o TDD, versões modificadas e estendidas do componente de gamificação constante do Trabalho de Conclusão da Especialização, com base nas boas práticas exercitadas neste curso.
Olá, bem-vindo ao Curso 2 – Desenvolvimento de Software Guiado por Testes. Neste módulo você fará contato com os conceitos básicos de TDD. Ao final desta semana, você será capaz de: 1) entender como funciona o TDD e, principalmente, que o TDD é uma técnica poderosa de projeto e desenvolvimento de software; 2) será capaz de entender o papel fundamental da Refatoracão dentro do ciclo do TDD, permitindo a você alcançar um código de mais qualidade passo a passo e continuamente!
What's included
13 videos6 readings1 assignment1 peer review
Show info about module content
13 videos•Total 157 minutes
Welcome Video•1 minute
Conhecendo o TDD•7 minutes
Ciclo do TDD•15 minutes
Hands-on: Primeira Classe com TDD - Parte 1•11 minutes
Hands-on: Primeira Classe com TDD - Parte 2•10 minutes
Hands-on: Primeira Classe com TDD - Parte 3•14 minutes
Conhecendo a Refatoração: O que é?•8 minutes
Conhecendo a Refatoração: Por que refatorar?•10 minutes
Conhecendo a Refatoração: Quando refatorar?•14 minutes
Como Obter Código de Qualidade•20 minutes
TDD: Projeto Antecipado (BDUF) Versus Nenhum Projeto (NoDUF)•15 minutes
TDD: Projeto Suficiente com Modelagem CRC•17 minutes
TDD: Design Dinâmico da Aplicação•15 minutes
6 readings•Total 60 minutes
Sobre o Curso•10 minutes
Formato dos Exercícios de Programação•10 minutes
Acompanhando as Aulas de Hands-on•10 minutes
Ferramentas de Comunicação•10 minutes
Disciplina Consciente e Plágio nos Exercícios•10 minutes
ATENÇÃO - Cuidados na revisão dos trabalhos de colegas•10 minutes
1 assignment•Total 30 minutes
Como funciona o TDD?•30 minutes
1 peer review•Total 60 minutes
Quebra de Strings com CamelCase•60 minutes
Semana 2
Module 2•5 hours to complete
Module details
Olá! Bem-vindo à Semana 2 do curso sobre TDD! Nesta semana você aprofundará seu contato prático com o TDD, bem como com o ciclo de Refatoração. Ao final desta semana, você será capaz de: 1) modelar uma classe com o TDD, entendendo os princípios que estão por trás; 2) entender o papel do mau cheiro" no Ciclo da Refatoração!
What's included
13 videos3 readings1 assignment1 peer review
Show info about module content
13 videos•Total 143 minutes
O Chapéu do TDD•6 minutes
Hands-on: Tradutor com TDD - Parte 1•11 minutes
Hands-on: Tradutor com TDD - Parte 2•7 minutes
Hands-on: Tradutor com TDD - Parte 3•12 minutes
Hands-on: Tradutor com TDD - Parte 4•7 minutes
Princípios Por Trás do TDD•15 minutes
Mitos e Lendas sobre TDD•16 minutes
Conhecendo a Refatoração: O Papel do Mau Cheiro!•16 minutes
Conhecendo a Refatoração: O Ciclo da Refatoração•12 minutes
Ciclo de Refatoração: Exemplo com Múltiplos Maus Cheiros – Parte 1: Preparação•10 minutes
Ciclo de Refatoração: Exemplo com Múltiplos Maus Cheiros – Parte 2.1: Antes do Primeiro Mau Cheiro•7 minutes
Ciclo de Refatoração: Exemplo com Múltiplos Maus Cheiros – Parte 2.2: Até Segundo Mau Cheiro•10 minutes
Ciclo de Refatoração: Exemplo com Múltiplos Maus Cheiros – Parte 3: Até Quinto Mau Cheiro•15 minutes
3 readings•Total 30 minutes
George Dinwiddie - O Criador do Chapéu do TDD•10 minutes
ATENÇÃO - Cuidados na revisão dos trabalhos de colegas•10 minutes
Código de Produção e Código de Teste de Integração do SAB – Sistema de Automação de Biblioteca•10 minutes
1 assignment•Total 30 minutes
Quais os princípios do TDD?•30 minutes
1 peer review•Total 120 minutes
Refatoração do SAB•120 minutes
Semana 3
Module 3•4 hours to complete
Module details
Olá! Bem-vindo à Semana 3 do curso sobre TDD! Nesta semana você aprofundará seu contato prático com casos de teste e com dependências entre classes no contexto do TDD. Ao final desta semana, você será capaz de: 1) modelar casos de teste a partir de responsabilidades para uso no ciclo TDD; 2) testar classes com dependências por meio de mock objects.
What's included
12 videos1 reading1 assignment1 peer review
Show info about module content
12 videos•Total 139 minutes
Casos de Teste a Partir de Responsabilidades•19 minutes
Ciclo TDD no Contexto de Casos de Teste•9 minutes
Ciclo TDD no Contexto de Responsabilidades•6 minutes
Testando Classes com Dependências•10 minutes
Aceitando Mock Objects•9 minutes
Diretivas de um Mock Object•14 minutes
Quando a dependência ainda não existe...•11 minutes
Hands-on: Adições no Carrinho de Compras - Parte 1•11 minutes
Hands-on: Adições no Carrinho de Compras - Parte 2•7 minutes
Hands-on: Adições no Carrinho de Compras - Parte 3•9 minutes
Mockar ou não mockar? Eis a questão!•17 minutes
Exemplo de Definição de Casos de Teste de Responsabilidades do SAB•17 minutes
1 reading•Total 10 minutes
ATENÇÃO - Cuidados na revisão dos trabalhos de colegas•10 minutes
1 assignment•Total 30 minutes
Como está seu conhecimento sobre mock objects?•30 minutes
1 peer review•Total 60 minutes
Software de Caixa Eletrônico•60 minutes
Semana 4
Module 4•4 hours to complete
Module details
Olá! Bem-vindo à Semana 4 do curso sobre TDD! Nesta semana você aprofundará seu contato teórico e prático com técnicas de refatoração. Ao final desta semana, você será capaz de identificar alguns dos principais tipos de mau cheiro e aplicar técnicas de refatoração apropriadas para remoção segura desses maus cheiros.
What's included
11 videos2 readings1 assignment1 peer review
Show info about module content
11 videos•Total 129 minutes
Exemplo de Refatoração: Extract Method•12 minutes
Exemplo de Refatoração: Mau Cheiro "Inveja de Característica"•11 minutes
Exemplo de Refatoração: Parte Inicial do Decompose Conditional•7 minutes
Exemplo de Refatoração: Parte Final do Decompose Conditional•10 minutes
SOLID: Princípios para Projeto de Classes•13 minutes
Refatoração com SOLID: SRP•15 minutes
Hands-on - Refatorando a Video Locadora - Parte 1•9 minutes
Hands-on - Refatorando a Video Locadora - Parte 2•9 minutes
Hands-on - Refatorando a Video Locadora - Parte 3•10 minutes
Hands-on - Refatorando a Video Locadora - Parte 4•19 minutes
Hands-on - Refatorando a Video Locadora - Parte 5•12 minutes
2 readings•Total 20 minutes
ATENÇÃO - Cuidados na revisão dos trabalhos de colegas•10 minutes
Código Fonte da Video-Locadora•10 minutes
1 assignment•Total 30 minutes
Prática de refatoração•30 minutes
1 peer review•Total 60 minutes
Componente de Gamificação•60 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).
"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.7
417 reviews
5 stars
80.09%
4 stars
16.06%
3 stars
1.67%
2 stars
1.19%
1 star
0.95%
Showing 3 of 417
B
BL
4·
Reviewed on Aug 23, 2016
O curso em si foi muito bom, porém as aulas do professor Clóvis foram cansativas e percebe-se que as vezes ele se perdia.
L
LK
5·
Reviewed on Jan 12, 2017
Excelente curso! Os hands-on são práticos, simples e excelente. O que mais foi aproveitoso para mim foi o fluxo de trabalho do TDD e as técnicas de refatoração.
A
AC
5·
Reviewed on Jul 25, 2016
Muito bom o curso. São ensinados padrões de projetos interessantes para a vida profissional.
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.