Curso: Tecnologia em Sistemas para Internet • 2º semestre

Introdução à Orientação a Objetos (ARQINOO)

Aula 01 — Apresentação da Disciplina e Introdução OO e Java


Prof. José Rodolfo Beluzo

Sumário

  • Ementa, objetivos e conteúdo programático
  • Bibliografia
  • Critérios de avaliação e frequência
  • Horário de atendimento do docente
  • Intr. à Orientação a Objetos com Java

Ementa

Fundamentos e princípios do paradigma orientado a objetos no desenvolvimento de software.

Objetivos

  • Desenvolver sistemas de software baseados no paradigma orientado a objetos.
  • Aplicar conceitos e princípios de orientação a objetos para obter códigos que enfoquem manutenibilidade, extensibilidade e reuso.

Conteúdo Programático

  • Classe, objeto, atributos e métodos
  • Modificadores de acesso e encapsulamento
  • Construtores
  • Sobrecarga de métodos e construtores
  • Pacotes, constantes e membros estáticos
  • Arrays, listas e tipos genéricos
  • Manipulação de números, strings e datas
  • Composição e herança
  • Classes abstratas e interfaces
  • Polimorfismo

Bibliografia Básica

  • FÉLIX, R. Programação Orientada a Objetos. São Paulo: Pearson, 2016.
  • SIERRA, K. Use a cabeça! Java. 2. ed. Rio de Janeiro: Alta Books, 2010.
  • WINDER, R.; ROBERTS, G. Desenvolvendo Software em Java. 3. ed. Rio de Janeiro: LTC, 2009.

Bibliografia Complementar

  • BELL, P.; BEER, B. Introdução ao GitHub. São Paulo: Novatec, 2014.
  • FREEMAN, E.; FREEMAN, E.; SIERRA, K.; BATES, B. Use a cabeça! Padrões de Projetos. 2. ed. Rio de Janeiro: Alta Books, 2009.
  • JUNIOR, P. J. Java – Guia do Programador. 3. ed. São Paulo: Novatec, 2015.
  • SANTOS, R. Introdução à Programação Orientada a Objetos usando Java. 2. ed. Rio de Janeiro: Elsevier, 2013.
  • SCHILDT, H. Java para Iniciantes. 6. ed. Porto Alegre: Bookman, 2015.

Instrumentos e Critérios de Avaliação da Aprendizagem

A avaliação será realizada por meio de três instrumentos:

  • Prova: questões teóricas (sem consulta) e questões práticas (com consulta).
  • Exercícios práticos: implementação de atividades de fixação, em sala e extraclasse.
  • Projeto: desenvolvimento de software aplicando os conceitos estudados.

Cálculo da Média Semestral (MS):


            MS = (PR * 0.40) + (EX * 0.30) + (PJ * 0.30)
        

Legenda:
MS = Média Semestral
PR = Prova prática com consulta
EX = Exercícios
PJ = Projeto

Os critérios para aprovação, reprovação e IFA (Instrumento Final de Avaliação) são definidos pela Organização Didática dos Cursos Superiores do IFSP (Resolução IFSP nº 147/2016).

Horário de atendimento:

Sala J207: Seg, Qua e Qui: 18h-19h

Por que estudar Orientação a Objetos?

  • Paradigma dominante no desenvolvimento de software
  • Facilita a modelagem do mundo real
  • Promove reuso de código e manutenção
  • Base para linguagens modernas (Java, C#, Python, etc.)

Conceitos Fundamentais de OO

  • Classe – molde que define atributos e comportamentos
  • Objeto – instância de uma classe
  • Atributos – dados/estado de um objeto
  • Métodos – comportamentos/ações

Pilares da Orientação a Objetos

  • Encapsulamento
  • Herança
  • Polimorfismo
  • Abstração

Por que Java?

  • Linguagem orientada a objetos “pura”
  • Portabilidade (JVM)
  • Ampla utilização no mercado
  • Grande ecossistema (bibliotecas, frameworks)

Instalação do Java

  • JDK – Java Development Kit
  • JRE – Java Runtime Environment
  • JVM – Java Virtual Machine
  • Compilador: javac
  • Execução: java

JVM (Java Virtual Machine)

  • Interpreta e executa o bytecode.
  • Permite portabilidade: "Write once, run anywhere".
  • Gerencia memória e Garbage Collector.
  • É o “motor” que roda o programa.

JRE (Java Runtime Environment)

  • Contém a JVM + bibliotecas padrão do Java.
  • Ambiente necessário para executar programas Java.
  • Não inclui ferramentas de desenvolvimento.
  • Indicado para usuários que apenas rodam aplicações.

JDK (Java Development Kit)

  • Contém o JRE + compilador (javac) e ferramentas.
  • Usado para desenvolver programas Java.
  • Necessário para programadores.
  • É o kit completo para criar, compilar e depurar.

Relação entre JDK, JRE e JVM

JDK (Java Development Kit)
🔹 Kit de desenvolvimento (compilador, debugger, etc.)
JRE (Java Runtime Environment)
🔹 Ambiente de execução
Inclui bibliotecas + arquivos de suporte
JVM (Java Virtual Machine)
🔹 Executa o bytecode

Estrutura Básica de um Programa Java


public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Olá, mundo!");
    }
}
        

Primeiros Exercícios

  • Criar um programa que exiba seu nome
  • Criar um programa que some dois números inteiros
  • Criar um programa que calcule a média de três notas

Discussão e Encerramento

  • Revisão dos conceitos apresentados
  • Dúvidas e perguntas