Sobre esta disciplina

Período: 6º Período · Núcleo: Profissionalizante · Carga Horária: 60h Tópicos: Desenvolvimento de software de complexidade média utilizando o paradigma de orientação a objetos. Estudo e análise dos conceitos de herança e polimorfismo.

CampoValor
CódigoCSECBJI.45
NúcleoProfissionalizante
Carga Horária60
Período6º Período
Pré-requisitosCSECBJI.13 - Algoritmos e Técnicas de Programação, CSECBJI.38 - Paradigmas de Linguagem de Programação

🔒 Trancas

📋 Ementa

Desenvolvimento de software de complexidade média utilizando o paradigma de orientação a objetos. Estudo e análise dos conceitos de herança e polimorfismo. Discussão de aspectos avançados sobre classes. Discussão sobre empacotamento e distribuição de aplicações. Implementação de estruturas de dados encadeadas. Uso de bibliotecas de coleções. Projeto de sistemas orientados a objetos.

🎯 Objetivos

  • ● Conhecer e utilizar de forma precisa conceitos e termos relacionados ao paradigma de orientação a
  • bjetos.
  • ● Desenvolver as competências e habilidades para a criação de sistemas de complexidade média, formado por múltiplos componentes, e expressar estas soluções na forma de um sistema de classes em uma linguagem de programação.
  • ● Descrever sistemas utilizando diagramas e código.
  • ● Construir abstrações para tipos de dados, usando os conceitos de classe, objeto, mensagem, herança e interface.

📖 Conteúdo Programático

  1. Classes e Objetos
  • Conceito
  • Atributos e Operações: Classe e Instância
  • Tipo de Dados: Referência e Valor
  • Visibilidade de Atributos e Operações
  • Encapsulamento
  • Construtores e Destrutores g. Sobrecarga de Operação h. Associação e Composição
  1. Herança e Polimorfismo
  • Relacionamento de Generalização/Especialização
  • i. Hierarquia de Herança
  • ii. O Princípio da Substituição
  • iii. Sobrescrita de Métodos
  • Polimorfismo
  • i. Conceito
  • ii. Classes Abstratas
  • iii. Interfaces
  • Parametrização de Tipos
  1. Entrada e Saída e Tratamento de Exceções
  • Tratamento de Exceções
  • i. Lançamento de Exceções
  • ii. Captura de Exceções
  • iii. Hierarquia de Exceções
  • Leitura e Escrita de Arquivos
  • i. Leitura de Dados
  • ii. Gravação de Dados
  • iii. Formatação de Dados
  • iv. Armazenamento e Recuperação de Objetos
  1. Coleções
  • Listas
  • Conjuntos
  • Mapas

📚 Materiais de Apoio (acesso aberto)

Todos os materiais abaixo são de distribuição legal e gratuita — pode baixar e compartilhar.

📕 Bibliografia Básica

  1. JUNIOR, P. J. Java: Guia do Programador. 3ª Edição. São Paulo: Novatec, 2015.
  2. SANTOS, R. Introdução à programação orientada a objetos usando Java. 2ª Edição. Rio de Janeiro:
  3. Elsevier: Campus, 2013.
  4. SIERRA, K.
  5. BATES, B. Use a cabeça! Java. 2ª Edição. Rio de Janeiro: Alta Books, 2007.

📗 Bibliografia Complementar

  1. BLOCH, J. Java Efetivo: As Melhores Práticas para a Plataforma Java. Rio de Janeiro: Alta Books, 2019.
  2. DEITEL, P. J., DEITEL, H. M. Java, como programar. 10ª Edição. São Paulo: Pearson, 2016.
  3. FREEMAN, E.; FREEMAN, E. Use a cabeça! padrões e projetos. 2ª Edição. Rio de Janeiro: Alta Books,
  4. FURGIERI, S. Java 8 Ensino Didático: Desenvolvimento e Implementação de Aplicações. São Paulo:
  5. Érica, 2015.
  6. SILVEIRA, P. Introdução à arquitetura e design de software: uma visão sobre a plataforma Java. Rio de Janeiro: Elsevier, 2012.