Orientação a Objetos com Java
Offered By: Instituto Tecnológico de Aeronáutica via Coursera
Course Description
Overview
Neste curso, assumimos que você já sabe desenvolver programas pequenos em Java, mas você talvez não se sinta ainda confortável em projetar programas mais complexos com método e organização.
O objetivo deste curso é fazer você compreender os princípios de orientação a objetos por meio da linguagem Java e saber como eficientemente aplicar esses princípios na prática quando projetando e desenvolvendo software de maneira ágil. Os conceitos discutidos e experimentados por você neste curso serão a base para você poder compreender os novos conceitos apresentados nos cursos seguintes desta especialização.
Os conceitos Java apresentados neste curso incluem o seguinte: revisão de conceitos básicos de orientação a objetos, tais como classes, objetos, métodos e atributos, variáveis de instância e de classe; responsabilidades, colaborações e cartões CRC; testes de unidade, uso de plataforma IDE como o Eclipse; herança, classes concretas e abstratas, interfaces, modificadores de acesso, encapsulamento, métodos de acesso; aprofundamento nos conceitos de polimorfismo, sobrecarga e sobreposição; associação de classes, agregação e composição; exceções, delegação e acoplamento abstrato. Em seguida, vocês serão apresentados aos principais princípios usados para organizar o desenvolvimento de programas orientados a objetos com qualidade, dentre os quais, os princípios "Tell, Don't Ask!" e "Law of Demeter". Sempre que conveniente, cada conceito será representado por meio de diagramas UML. Você será exposto a propriedades e anotações em Java.
Ao final deste curso, você terá amadurecido de tal modo suas habilidades de programação que você será capaz de implementar versões iniciais do componente de gamificação constante do Trabalho de Conclusão da Especialização, com base nas boas práticas exercitadas neste curso.
Syllabus
- Classes na Teoria e em Java
- Neste módulo você será capaz de identificar, definir e diferenciar os conceitos básicos de orientação a objetos, tanto em teoria quanto em Java: classes, objetos, atributos de classes, construtores de classes, responsabilidades, colaborações e cartões CRC
- Classes com Java e Modelagem CRC
- Olá! Bem-vindo à semana 2 do curso Orientação a Objetos com Java! Nesta semana você aprofundará seu contato com classes e métodos, bem como com modelagem CRC. Ao final desta semana, você será capaz de: 1) modelar o comportamento de classes com métodos em Java; 2) projetar novas classes para uma aplicação por meio da modelagem CRC
- Testes de Unidade, Diagramas UML, Colaboração e Dependência
- Olá! Bem-vindo à semana 3 do curso Orientação a Objetos com Java! Nesta semana você aprofundará seu contato com Testes de Unidade e Diagramas de Classe da UML, bem como com os conceitos de dependência e contrato de classe. Ao final desta semana, você será capaz de: 1) testar com JUnit o comportamento de classes em Java; 2) projetar e representar classes com diagrama de classes da UML
- Herança na Teoria e em Java
- Olá! Bem-vindo à semana 4 do curso Orientação a Objetos com Java! Nesta semana você aprofundará seu contato com Herança e Modificadores de Acesso. Ao final desta semana, você será capaz de 1) projetar e estruturar programas Java com base em boas práticas no uso de herança, 2) além de garantir acoplamento baixo entre classes pelo uso adequado de modificadores de acesso
- Encapsulamento, Acoplamento entre Classes e Interfaces do Java
- Olá! Bem-vindo à semana 5 do curso Orientação a Objetos com Java! Nesta semana você aprofundará seu contato com os conceitos de Encapsulamento, Acoplamento entre Classes e Interfaces em Java. Ao final desta semana, você será capaz de 1) projetar e estruturar programas Java evitando quebras de encapsulamento e propiciando acoplamento baixo entre classes, 2) além de garantir acoplamento abstrato entre classes pelo uso adequado de interfaces em Java
- Polimorfismo, Law of Demeter e Exceções em Java
- Olá! Bem-vindo à semana 6 do curso Orientação a Objetos com Java! Nesta semana você aprofundará seu contato com o conceito de Polimorfismo, princípio "Law of Demeter" e Exceções em Java. Ao final desta semana, você será capaz de 1) projetar e estruturar programas Java mais flexíveis e com acoplamento baixo, 2) além de garantir o tratamento adequado de exceções em Java
Taught by
Eduardo Guerra and Clovis Fernandes
Tags
Related Courses
A Simple Picture Storing App with Java and Android StudioCoursera Project Network via Coursera Advanced Data Structures in Java
University of California, San Diego via Coursera Advanced Java Concurrency
Vanderbilt University via Coursera Advanced Monitoring and Optimizing with DynamoDB (Spanish)
Amazon Web Services via AWS Skill Builder Advanced Monitoring and Optimizing with DynamoDB (Simplified Chinese)
Amazon Web Services via AWS Skill Builder