Orientação a Objetos com Java

  • 4.8
Approx. 32 hours to complete

Course Summary

Learn Object Oriented Programming with Java and create applications using Java features such as encapsulation, abstraction, inheritance and polymorphism.

Key Learning Points

  • Object-Oriented Programming Fundamentals
  • Java Programming Basics
  • Java Features such as Encapsulation, Abstraction, Inheritance, and Polymorphism
  • Developing Applications using Java
  • Best practices in OOP Design

Job Positions & Salaries of people who have taken this course might have

  • Java Developer
    • USA: $81,000
    • India: ₹4,89,000
    • Spain: €26,000
  • Software Engineer
    • USA: $93,000
    • India: ₹6,30,000
    • Spain: €33,000
  • Senior Java Developer
    • USA: $115,000
    • India: ₹13,00,000
    • Spain: €44,000

Related Topics for further study


Learning Outcomes

  • Create Object-Oriented Applications using Java programming language
  • Understand OOP Fundamentals such as Encapsulation, Abstraction, Inheritance, and Polymorphism
  • Apply Best Practices in OOP Design

Prerequisites or good to have knowledge before taking this course

  • Basic knowledge of programming concepts
  • Familiarity with Java programming language

Course Difficulty Level

Intermediate

Course Format

  • Online and Self-Paced
  • Video Lectures and Quizzes
  • Hands-on Coding Assignments

Similar Courses

  • Java Programming and Software Engineering Fundamentals Specialization
  • Advanced Object-Oriented Programming in Java Specialization
  • Java Programming: Solving Problems with Software

Related Education Paths


Notable People in This Field

  • Joshua Bloch
  • James Gosling
  • Martin Fowler

Related Books

Description

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.

Outline

  • Classes na Teoria e em Java
  • Vídeo de boas-vindas
  • Identificando Classes e Objetos
  • Comportamento e Estado das Classes
  • Criando Classes com Java
  • Hands-on: Classes e Objetos
  • Construtores de Classes
  • Hands-on: Construtores Diferentes para Mesma Classe
  • Identificando Responsabilidades
  • Identificando a Lógica das Responsabilidades
  • Identificando Colaborações
  • Cartão CRC
  • Hands-on: Compilando e Executando Programas em Java
  • Sobre o Curso
  • Formato dos Exercícios de Programação
  • Acompanhando as Aulas de Hands-On
  • Ferramentas de Comunicação
  • Disciplina Consciente e Plágio nos Exercícios
  • ATENÇÃO - Cuidados na revisão dos trabalhos de colegas
  • Como está o seu conhecimento sobre o assunto deste curso?
  • Sobre os conceitos de classe e objeto
  • O que você aprendeu sobre classes e objetos?
  • Sobre CRC
  • Mais sobre CRC
  • Classes com Java e Modelagem CRC
  • Relacionamento entre Classes
  • Hands-on: Colaborações entre Classes
  • Métodos e Atributos Estáticos
  • Hands-on: Comparando Tipos de Atributos – Estático X Instância
  • Pensando em Métodos Orientados a Objetos
  • Hands-on: Refatorando – de Funções para Métodos
  • Modelagem CRC: Identificando Classes
  • Modelagem CRC: Identificando Responsabilidades e Colaborações
  • Hands-on:Modelagem CRC– Identificando Classes
  • Hands-on: Modelagem CRC: Identificando Responsabilidades e Colaborações-
  • Hands-on: Modelagem CRC: Apresentando a Lógica das Responsabilidades
  • Hands-on: Modelagem CRC: Refinando as Responsabilidades e Classes
  • ATENÇÃO – Cuidados na revisão dos trabalhos de colegas
  • Você sabe utilizar classes?
  • Mais sobre Modelagem CRC
  • Testes de Unidade, Diagramas UML, Colaboração e Dependência
  • Importância de Testes
  • Testes Automatizados com JUnit
  • Hands-on:Testando com JUnit na Prática
  • Antes e Depois de um Teste
  • Hands-on: Métodos Before e After no JUnit
  • Preciso de Diagramas?
  • Diagrama de Classes UML: Classe, Associação e Multiplicidade
  • Diagrama de Classes UML: Navegabilidade, Agregação, Composição e Herança
  • Colaboração, Dependência e Classes Cliente e Servidora
  • Caracterizando Responsabilidade Pública
  • Caracterizando Responsabilidade Privada e Contrato de Classe
  • ATENÇÃO – Cuidados na revisão dos trabalhos de colegas
  • O que você aprendeu sobre testes?
  • Mais sobre diagrama de classes
  • Mais sobre dependência e contrato de classes
  • Herança na Teoria e em Java
  • Trabalhando com Níveis de Abstração
  • Utilizando Herança
  • Herança: Especialização e Generalização
  • Hands-on- Entendendo a Herança
  • Modificadores de Acesso
  • Hands-on: Modificadores de Acesso na Prática
  • Sobreposição de Métodos
  • Classes Abstratas
  • Cadeia de Construtores
  • Hands-on: Cadeia de Construtores na Prática
  • Hands-on: Herança na Classe Carro – Parte 1
  • Hands-on: Herança na Classe Carro – Parte 2
  • Hands-on: Herança na Classe Carro – Parte 3
  • ATENÇÃO – Cuidados na revisão dos trabalhos de colegas
  • Como funciona a herança?
  • Entendendo modificadores de acesso
  • Sabe mesmo sobre herança?
  • Encapsulamento, Acoplamento entre Classes e Interfaces do Java
  • Importância do Encapsulamento
  • Métodos de Acesso
  • Hands-on: Exemplo de Violação Encapsulamento
  • Encapsulamento de Objetos e Arrays
  • Caracterizando Acoplamento e Duas Situações de Acoplamento Alto
  • Aplicando Princípio "Tell, Don't Ask!" para Obter Acoplamento Baixo
  • Interfaces na Orientação a Objetos
  • Interfaces em Java
  • Exemplo de Interface
  • Hands-on: Usando a Interface Comparable
  • Hands-on: Problema no Encapsulamento de Arrays
  • Sobre acoplamento entre classes
  • Interfaces e Encapsulamento
  • Polimorfismo, Law of Demeter e Exceções em Java
  • Entendendo Polimorfismo
  • Hands-on: Interfaces e Polimorfismo
  • Identificando Dependências mais Complexas
  • Aplicando o Princípio "Law of Demeter"
  • Tratamento de Erros
  • Exceções em Java
  • Hands-on: Exceções na Prática
  • Stack Trace de Exceção
  • Tratando Exceções
  • Testando Exceções
  • Hands-on: Criando e Testando uma Classe que Joga Exceções
  • Apresentação do Exercício Final
  • ATENÇÃO – Cuidados na revisão dos trabalhos de colegas
  • Sobre acoplamento complexo
  • O que você aprendeu sobre exceções?

Summary of User Reviews

This course on object-oriented programming with Java is highly rated by users for its comprehensive coverage and hands-on approach. Many users found the course to be well-organized and easy to follow, with clear explanations and practical examples that help solidify concepts.

Key Aspect Users Liked About This Course

Practical examples and clear explanations

Pros from User Reviews

  • Comprehensive coverage of object-oriented programming with Java
  • Hands-on approach with practical examples
  • Clear explanations that help solidify concepts
  • Well-organized course structure
  • Engaging and knowledgeable instructors

Cons from User Reviews

  • Some users found the pace of the course to be too fast
  • A few users reported technical issues with the online platform
  • Some users felt that the course could have provided more in-depth explanations
Portuguese (Brazilian)
Available now
Approx. 32 hours to complete
Clovis Fernandes, Eduardo Guerra
Instituto Tecnológico de Aeronáutica
Coursera

Instructor

Clovis Fernandes

  • 4.8 Raiting
Share
Saved Course list
Cancel
Get Course Update
Computer Courses