PDS Aula 1.2 Introdução a Java, POO e Composição. Prof. Bruno Moreno

Documentos relacionados
FIC-POO. Aula 1.2 Introdução a Java e POO. Prof. Dr. Bruno Moreno

Aula II Orientação a Objetos. Pedro Baesse Alves Pereira

Programação Estruturada e OO Aula 1.2 Introdução a Paradigmas de Programação. Prof. Bruno Moreno

Introdução à Programação Orientada a Objetos. Prof. Leonardo Barreto Campos 1

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

Técnico em Informática. Web JavaScript. Profª Ana Paula Mandelli

Daniel Wildt

Informática. Professor: Diego Oliveira. Conteúdo 04: Orientação a Objetos

Aula 1 - Introdução Cleverton Hentz

Desenvolvimento de Software I

Aula 2 POO 1 Introdução. Profa. Elaine Faria UFU

AULA 02. OBJETIVO: Características da Linguagem Orientada a Objetos.

Programação Orientada a Objetos

A figura abaixo representa uma classe denominada Carteira. Esta classe é composta dos métodos depositar(valor) e retirar(valor) e do atributo saldo.

Linguagem de Programação II Programação Orientada a Objetos. Orientação a Objetos

Orientação a Objetos Parte I. Introdução a POO (Programação Orientada a Objetos)

1 Introdução e Conceitos básicos

Introdução ao Java. Prof. Herbert Rausch Fernandes

Introdução a orientação a objetos

Nosso Primeiro Programa Java

Televisao tamanho tela emitirsom. conectarperifericos

Linguagem de Programação I Apresentação da Disciplina

(Características fundamentais de Codificação de programas)

Desenvolvimento de Aplicações Desktop

IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli

Introdução à Programação Orientada a Objetos

Programação Orientada a Objetos

Programação Orientada a Objetos

Java Básico. Aula 1 por Thalles Cezar

Linguagem de Programação IV Introdução

Conceitos de Orientação a Objetos

Tópicos da Aula. Conceitos de programação orientada a objetos. Projeto orientado a objetos com UML

Java Standard Edition (JSE)

Prof: Ricardo Quintão Site:

AULA 1 INTRODUÇÃO AO JAVA

Universidade da Beira Interior Cursos: Engenharia Informática, Matemática /Informática e Ensino da Informática

CONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO

ORIENTAÇÃO A OBJETOS Histórico:

Programação Orientada a Objetos

Grupo de Usuários Java do Noroeste Paulista. Introdução à tecnologia Java

Requisitos de sistemas

Introdução ao paradigma da orientação a objetos

Java e Orientação a Objetos (aula 2) Prof. Sérgio Ricardo

Programação Orientada a Objetos SANTOS, Rafael

Programação Orientada a Objetos

Introdução ao Desenvolvimento de

Introdução à Programação Orientada a Objetos. Programação Estruturada vs Programação Orientada a Objetos

Aula 04 Introdução à Programação Orientada à Objetos

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Introdução ao ambiente Java

Introdução. PCO / PPO Departamento de Informática Faculdade de Ciências da Universidade de Lisboa

SEMINÁRIOS INTEGRADOS EM SISTEMAS DE INFORMAÇÃO. Luiz Leão

Programação para Games II. Professor Ariel da Silva Dias Orientação a Objetos

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 15 PROFª BRUNO CALEGARO

Conceitos de Orientação a Objetos. Objeto Atributo Classe Método

Aplicação Prática de Classes e Objetos JAVA

Programação Orientada a Objetos

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS

Programação Orientada a Objetos Classes e Objetos. Prof. Vicente Paulo de Camargo

[Desenvolvimento OO com Java] O que é Java?

Orientação a Objetos e UML

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

[Desenvolvimento OO com Java] O que é Java?

Introdução ao Ambiente Java

Algoritmos e Programação II

Sobre a KTEC KTEC Escola de Tecnologia

POO Programação Orientada a Objetos

Java Básico. Aula 1 por Thalles Cezar

A linguagem Java foi projetada tendo em vista os seguintes objetivos:

Programação Orientada a Objetos. Conceitos Básicos

Análise de Sistemas. Aula 5

Conceitos de Programação Orientada a Objetos

Grupo de Usuários Java do Noroeste Paulista. Tópicos Avançados em Java

FIC-POO. Aula 1.1 Apresentação do Curso e Introdução aos Paradigmas de Programação. Prof. Dr. Bruno Moreno

ESQUEMA AULA PRÁTICA 0 Familiarização com o Ambiente de Desenvolvimento NetBeans Construção do primeiro programa em java.

Programação Orientada a Objetos

Engenharia de Software. Aula 10 Representação dos Conceitos de Orientação a Objetos. Prof. Me. Rogério Ferreira

Especificação de Sistemas de Software e a UML

Paradigmas de Linguagens de Programação. Suporte para Programação Orientada a Objeto

Linguagem de Programação II

Programação Orientada a Objetos JAVA - NETBEANS

Conceitos de Programação Orientada a Objetos

Programação Orientada a Objetos. Prof. MsC Sílvio Bacalá Júnior

Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces

Aula 1 Conceitos Básicos

15/04/2013. Pensar Orientado a Objetos. Projeto Orientado a Objetos. Características de Objetos. Classe de Objetos. Comunicação entre Objetos

Aula 3 POO 1 Classe e Objeto. Profa. Elaine Faria UFU

Programação Orientada a Objetos

Curso teórico: Orientação a Objetos. Matemática computacional Marcos Aurelio Wozhiak Jr webzhiak.com.br

Introdução à Computação: Máquinas Multiníveis

Fundamentos de Programação 1

Técnicas de Reutilização. Reutilização em Programação Orientada a Objetos. Considere três classes... Reuso de Classes.

Introdução à Análise e Projeto de Sistemas

Objetivos. Responder o que é Java; Mostrar as vantagens e desvantagens do Java; Compilar e executar um programa simples.

Programação I 2º Bimestre (material 1)

Programação Orientada a Objetos (DPADF 0063)

Transcrição:

PDS Aula 1.2 Introdução a Java, POO e Composição Prof. Bruno Moreno bruno.moreno@ifrn.edu.br

JAVA: Introdução, Histórico, Conceitos Básicos 2

Introdução O que é Java? Linguagem de programação OO Década de 90 Sun Microsystems Multiplataforma: bytecodes Máquina Virtual Java 3

Bibliografia 4

Histórico Green Project 1991 A Sun decidiu lançar uma nova versão do Oak para a Internet: applets Oak Java JDK 1.0 1995 1996 JDK 1.1 JDK 1.2 1997 1998 Java Swing e segurança J2SE, J2EE e J2ME 1999 JDK para linux O *7 foi desenvolvido usando uma linguagem específica: Oak. 5

Histórico Robo enviado a Marte com JAVA Abertura do código de Java 2000 2001 2002 2003 2007 Mais de 50 milhões de celulares com J2ME IDE Eclipse; J2ME para Linux; J2EE patterns 400 grupos de usuários no mundo; JavaOne com mais de 25 mil desenvolvedores; Netbeans open-source 6

Histórico Em 2010, a Oracle comprou a Sun MicroSystems 7

Princípios para criação de Java 1. Simples, OO e familiar 2. Robusta e segura 3. Portável e independente de arquitetura 4. Deve ser executável com alta performance 5. Interpretada, multi-tarefa e dinâmica 8

O que você entende por Modelo? 9

Modelos São representações simplificadas de objetos, pessoas, itens, tarefas, processos, etc usados comumente por pessoas no seu dia-a-dia Independente do uso de computadores 10

Modelos Modelo: abstração de uma realidade Só é considerado o que é relevante. Algo (entidade) a ser representado no computador. 11

Modelos Considere um modelo de um restaurante Restaurante Caseiro Mesa 1 Mesa 2 Mesa 3 Kg refeição Kg refeição Kg refeição Sobremesa Sobremesa Sobremesa Bebida Bebida Bebida 12

Modelos Um modelo representa dados e informações Itens e a quantidade dos pedidos; Um modelo contém operações Inclusão de um pedido; Modificação do status de um pedido; Encerramento de um pedido; Apresentação da conta para os clientes; 13

Modelos Modelos podem conter submodelos; Modelos podem ser parte de outros modelos; Restaurante Caseiro Mesa 1 Mesa 2 Mesa 3 Kg refeição Kg refeição Kg refeição Sobremesa Sobremesa Sobremesa Bebida Bebida Bebida Submodelo que representa uma mesa 14

Modelos Modelos podem simplificar informações; Algumas informações podem (ou devem) ser ocultadas; Em um modelo, informações sobre determinado conceito pode ser feita diferentemente, dependendo do contexto Pessoa como paciente de uma clínica Atributos: nome, o sexo, a idade, a altura, o peso e o históricoconsultas Operação verificaobesidade. Pessoa como contato comercial Atributos: nome, o telefone, o cargo e a empresa Operação mostrartelefone. 15

A Programação Orientada a Objetos está intimamente ligada a definição de modelos 16

Programação OO X Programação Estruturada 17

Programação Estruturada Baseada em Estruturas sequenciais + Estruturas de decisão + Estruturas de iteração Vantagens Fácil compreensão Execução mais rápida Desvantagens Baixa reutilização de código Códigos confusos: dados misturados com comportamento 18

Programação OO Baseada em Classes + Objetos Vantagens Melhor organização do código Alto reaproveitamento de código Desvantagens Desempenho mais baixo do que o paradigma estruturado Mais difícil compreensão no início 19

Programação OO Usa classes e objetos criados a partir de modelos para representar e processar dados; Classes são estruturas das linguagens que é um determinado modelo Possui dados e operações; São moldes (ou formas) que representam um objeto do mundo real; 20

Programação OO Um objeto é uma materialização de uma classe Pode ser utilizado para representar dados e executar operações; 21

Definição de POO Uma nova maneira de se pensar problemas usando conceitos do mundo real Uma coleção de objetos do mundo real que interagem entre si Fundamentos do paradigma OO 22

Fundamentos da POO Um modelo é uma abstração de algo do mundo real! 23

Abstração Se concentrar nos aspectos essenciais do problema; Ignorar o que é supérfluo, detalhes; Transformar o que vemos na realidade para a virtualidade; A POO permite representar conceitos do mundo real, sejam eles concretos ou abstratos. 24

Abstração Concretos Cachorro; Carro; Produto; Prateleira; Abstratos Música; Venda; Transação Bancária; Classes e Objetos 25

Classes e Objetos Classes são modelos que representam determinado objeto do mundo real Um objeto é uma instância daquele modelo, ou classe; Classes possuem características (atributos) e comportamentos (métodos, operações); 26

Classes e Objetos OBJETOS CLASSES Cachorro Carro Produto Prateleira Música Venda Transação Bancária Laika Fiat Uno Refrigerante Prateleira do corredor 1 Lepo-lepo Venda as 15:32 Transação as 15:32 27

Classes e Objetos Classes Características (atributos) Operações (métodos) Definem o comportamento de um objeto; Identidade Definem o estado de um objeto; Dois objetos com estado e operações idênticas não são iguais; Quando os atributos de um objeto são modificados, o estado do objeto muda; 28

Métodos e Atributos Classe: Cachorro Objeto Atributos Nome: Laika Raça: Husky Siberiano Sexo: Feminino Métodos Latir Comer Dormir 29

Métodos e Atributos Classe: Carro Objeto Atributos Modelo: Fusca Ano: 1966 Cor: Verde Métodos Acelerar Frear Passar marcha 30

Classes e Objetos Uma classe é a forma para criação de objetos; Um objeto representa uma instância de uma classe Representação concreta de uma classe; Objetos de uma mesma classe possuem Características semelhantes; Comportamento comum; Capacidade de interagir com outros objetos; 31

Classes e Objetos GATO g1 = new GATO(); g1 Raça: Savannah Nome: Gatuno Peso: 2,5 quilos Idade: 2 anos GATO g2 = new GATO(); g2 Raça: Maine Moon Nome: Listrado Peso: 3 quilos Idade: 5 anos Nome da classe: GATO GATO g3 = new GATO(); g3 Raça: Siamês Nome: Bichano Peso: 4 quilos Idade: 3 anos 32

Classes e Objetos em UML OBJETOS CLASSE 33

Composição 34

Composição A composição (ou delegação) é um mecanismo de reuso da POO; Com a composição, uma instância de uma classe existente é utilizada como componente de outra classe Na prática, uma classe é o tipo do atributo de outra classe; 35

Classe Data Atributos: dia, mes e ano; Qual o tipo desses atributos? Métodos: Data(dia, mes, ano) dataehvalida(dia, mes, ano) Construtor da classe; Avalia se dia, mes e ano são valores que representam uma data válida; tostring() Método sobreposto da classe Object. 36

Deus amou tanto o mundo que deu seu Filho, seu único filho, pela seguinte razão: para que ninguém precise ser condenado; para que todos, crendo nele, possam ter vida plena e eterna. João 3:16 (A Mensagem) 37