Tecnólogo em Análise e Desenvolvimento de Sistemas

Documentos relacionados
POO. Programação Orientada a Objeto. Introdução a POO. Professor Jarbas Araújo

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos

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

Introdução à Programação Gráfica em Java

Classes e Objetos. Sintaxe de classe em Java

Classes e Objetos POO

1 Introdução e Conceitos básicos

Daniel Wildt

Prof. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II Java Nona aula

Reinaldo Gomes Análise/projeto estruturado

Encapsulamento e Métodos (Construtores e Estáticos) João Paulo Q. dos Santos

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS

Lista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; }

Prof. Msc. Vladimir Camelo

Linguagem de Programação III

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS

Introdução. Programação Orientada a Objetos (POO) João Paulo Q. dos Santos

Como usar o bluej. Laboratório I Prof.ª Vera Alves

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

Roteiro. Introdução. Uma Introdução à Programação Orientada a Objetos e JAVA usando NetBeans. Objetos. Princípios da Orientação a Objetos

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

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

Polimorfismo: aprendendo a prever o futuro. Polimorfismo: aprendendo a prever o futuro. Definições (2/5) Definições Tipos de Polimorfismo

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

POO Programação Orientada a Objetos

Instalação JDK. Joyce França. Professora de Ciência da Computação - IFNMG

Instalação JDK 10/03/2017

Elaborando as Interfaces dos trabalhos das aulas 28, 29 e 30.

Algoritmos e Estrutura de Dados Aula 06 Programação Orientada a Objetos em Python

Levantamento, Análise e Gestão Requisitos. Aula 03

Sabemos que a classe é responsável por definir a estrutura e o comportamento de seus objetos. Portanto, os objetos são instâncias das classes.

Linguagem de Programação Visual

Prof. Fernando V. Paulovich 25 de julho de SCC Programação Orientada a Objetos

UNIVERSIDADE PAULISTA - UNIP ICET INSTITUTO DE CIÊNCIAS EXATAS E TECNOLÓGIA

Linguagem de Programação II Implementação

Linguagem de Programação III

Linguagem de Programação IV Introdução

AULA 2 VISÃO BÁSICA DE CLASSES EM PHP

POO - Programação Orientada a Objetos

Unidade 3: Classes em Java Para Programadores C Classes, Objetos e Tratamento de Erros Prof. Daniel Caetano

Conceitos de Programação Orientada a Objetos

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

AULA 11 PROGRAMAÇÃO ORIENTADA A OBJETOS (INTRODUÇÃO) Disciplina: Programação Orientada a Objetos Professora: Alba Lopes

Java Standard Edition (JSE)

Conceitos de Programação Orientada a Objetos

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

Relacionamentos entre objetos

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

PROGRAMAÇÃO ORIENTADA A OBJETOS: OCULTAR INFORMAÇÕES E ENCAPSULAMENTO

Visibilidade e Encapsulamento

Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli

Programação Orientada a Objetos. Professor: André Luis Meneses Silva br.geocities.com/programacao2ufs

Programação Orientada a Objetos

Desenvolvimento de Aplicações Desktop

Programação Orientada a Objetos II

Introdução ao Ambiente Java

Algoritmos I Aula 13 Linguagem de Programação Java

Televisao tamanho tela emitirsom. conectarperifericos

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS

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

Fundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus

Java Standard Edition (JSE)

Linguagem de Programação Orientada a Objeto Abstração - Encapsulamento

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

POO29004 Programação Orientada a Objetos

Unidade Acadêmica: Faculdade de Computação FACOM Disciplina: Programação Orientada a Objetos I Professor: Fabiano Azevedo Dorça Prática 01

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

Polimorfismo. O que é polimorfismo?

Interfaces Gráficas (GUIs) em Java usando Swing Parte I - O básico

Classes e Objetos em Java. Algoritmos e Programação I. Classes. Classes. Modificadores de Acesso. Classes. Revisão

JAVA TÓPICOS ESPECIAIS DE PROGRAMACAO ORIENTADA A OBJETOS

Interfaces. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno.

p Pacotes, a grosso modo, são apenas pastas ou diretórios do sistema operacional onde ficam armazenados os arquivos fonte de Java.

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

Aula 4 Encapsulamento e Relacionamento Cleverton Hentz

Aula 1 - Introdução Cleverton Hentz

1) Responda de acordo com os conceitos de orientação a objetos (0,5).

Programação Orientada a Objetos JAVA - NETBEANS

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

JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: insira as propriedades escolhidas aqui FACULDADE DE TECNOLOGIA SENAC PELOTAS

Programação Orientada a Objetos

JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: Font size Animation FACULDADE DE TECNOLOGIA SENAC PELOTAS

Linguagem de Programação II Implementação

Programação Orientada a Objetos. Aula 1.9 this e static. Prof. Bruno Moreno

Programação Orientada a Objetos JAVA - NETBEANS

Linguagem de Programação III

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

Computação II Orientação a Objetos

Classes e Objetos INTRODUÇÃO À ORIENTAÇÃO A OBJETOS COM JAVA - MÓDULO II. Classes. Objetos. Um modelo para a criação de objetos

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

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

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

Modelo do Mundo Real. Abstração. Interpretação

Introdução à Orientação a Objetos em Java

Processamento da Informação. Prof. Daniel M. Martin (2019 Q1)

AULA 8 Polimorfismo de: coerção, overloading, inclusão e paramétrico Prof. Dr. Fernando Henrique Campos

Programação Java. - Classes, Objetos, Atributos e Métodos - Marco Fagundes Marco Fagundes -


Classes e Objetos. Prof. Fernando V. Paulovich 9 de agosto de 2010

Transcrição:

Tecnólogo em Análise e Desenvolvimento de Sistemas 2017-2 Disciplina: Linguagem de Programação III - Objetivos Aplicação da Programação Orientada a Objeto na construção de sistemas computacionais Conteúdo 1. Conceitos de Programação Orientada a Objetos 2. Classes, Objetos, Atributos e Métodos 3. Encapsulamento 4. Restrições de acesso (public/private/protected) 5. Construtores 6. Herança 7. Sobreposição de métodos/polimorfismo 8. Classes concretas/abstratas x Métodos concretos/abstratos 9. Interfaces e Exceções 10. Classes de Persistência 11. Modelo MVC Desenvolvimento de exercícios Desenvolvimento de projeto Critérios de Avaliação Desenvolvimento de projetos ao longo das aulas com peso 3 Avaliação objetiva prevista em calendário com peso 7 UNILUS - Centro Universitário Lusíada Página 1 de 12

Evolução da Programação Baixo nível Realizado na linguagem do computador. Linguagem de máquina. Alto nível A programação se tornou linear, de cima para baixo. Programação estruturada Permitia pequenos pedaços de programação linear e que podem ser executadas fora da ordem. Dando origem aos sistemas. Programação modular Cria pequenos módulos estruturados em capsulas. Programação Orientada a Objetos Momento atual POO Programação Orientada a Objetos Origem da Orientação a Objetos Alan Curtis Kay, é conhecido por ter sido um dos inventores da linguagem de programação Smalltalk, e um dos pais do conceito de programação orientada a objetos. A sigla POO em português significa Programação Orientada a Objetos e em inglês Object-Oriented Programming (OOP). Os conceitos de POO tem como objetivo aproximar o mundo digital do mundo real. Alay Kay formulou o seguinte postulado: "O computador ideal deve funcionar como um organismo vivo, isto é, cada célula se relaciona com outras células a fim de alcançar um objetivo, mais cada uma funciona de forma autônoma. As células poderiam também reagrupar-se para resolver outros problemas ou desempenhar outras funções. UNILUS - Centro Universitário Lusíada Página 2 de 12

Na linguagem de programação orientada a objetos o foco esta nas funcionalidades e ações de cada parte do objeto. Principais vantagens de programa em POO Confiável O isolamento entre as partes gera software seguro. Ao alterar uma parte, nenhuma outra é afetada. Oportuno Ao dividir tudo em partes, várias delas podem ser desenvolvidas em paralelo. Manutenível Atualizar um software é mais fácil. Uma pequena modificação vai beneficiar todas as partes que usarem o objeto. Extensível O software não é estático. Ele deve crescer para permanecer útil Reutilizável Podemos usar objetos de um sistema que criamos em outro sistema futuro. Natural Mais fácil de entender. Você se preocupa mais na funcionalidade do que nos detalhes de implementação.? UNILUS - Centro Universitário Lusíada Página 3 de 12

O que é um objeto Definição Coisa material ou abstrata que pode ser percebida pelos sentidos e descrita por meio das suas característica, comportamento e estado atual. Classifique se são objetos: Carro Celular Venda Computador Aluno Mouse Joystick Horário no dentista Compromisso na agenda Botão na tela do celular Observação: Tudo que possui característica, comportamento e estado é considerado um objeto. Análise a definição de objetos e responda Exemplo: Compromisso de você marcou Ele tem característica? Ele tem comportamento? Ele tem um Estado? UNILUS - Centro Universitário Lusíada Página 4 de 12

Compromisso de você marcou Ele tem característica? Horário, Dia, Tipo de roupa Ele tem comportamento? Marcado, Adiado, Desmarcado, Cancelado Ele tem um Estado? Suspenso, Remarcado, Cancelado Exemplo: Caneta É uma coisa material? Pode ser percebida pelos sentidos? Pode ser descrita ou classifica de acordo com suas características, comportamento e estado atual? Tipos do objeto caneta Caneta azul Caneta vermelha Caneta preta Caneta verde Seguem a mesma forma, o mesmo formato, a mesma classificação. Estes objetos estão baseados numa mesma classificação. Definindo Classe Tem que responder 3 perguntas... Coisa que eu tenho (Atributos) Modelo Cor Tamanho de ponta Quantidade de carga Tampada ou não Coisas que eu faço (Métodos) Escrever Poder rabiscar Pode pintar Posso tampar e destampar Como eu estou agora (Estado) 50% de carga Tem a ponta fina É azul Esta destampada e escrevendo UNILUS - Centro Universitário Lusíada Página 5 de 12

Todo objeto: Tem Atributos, Métodos e Estado Vem a partir de uma classe (a partir de um molde) Para criar um objeto antes é necessário criar uma classe (molde). Antes de criar o objeto é necessário planejar. O planejamento (classificação) é a CLASSE. Classe Caneta modelo: Caractere cor: Caractere ponta: Real carga: Inteiro tampada: Logico Metodo rabiscar() Se (tampada) então Escreva("ERRO") senão Escreva("Rabisco") FimSe FimMetodo Identificar quais são os atributos, as características Método é uma função / rotina Metodo tampar() tampada = verdadeiro FimMetodo FimClasse Ensinando o computador o que é um objeto Atributos Modelo : Bic Crital Cor : Azul Ponta : 0,5 Carga : 90 Tampada : falso Métodos Escrever Rabiscar Pintar Tampar Destampar Estado (É definido a partir das configurações dos atributos) Destampada Azul 90% de carga UNILUS - Centro Universitário Lusíada Página 6 de 12

Instanciar Gerar um objeto a partir de uma classe. Exemplo: c1 = nova Caneta Objeto (Nome do objeto) c1.cor = "Azul" c1.ponta = 0.5 c1.tampada = falso c1.rabiscar() Atributos Cor, Ponta, Tampada Método Rabiscar() Instanciando outro objeto (não tem ligação nenhuma com o objeto c1. Com atributos diferentes) c2 = nova Caneta c2.cor = "Vermelho" c2.ponta = 1.0 c2.tampada = falso c2.tampar() Definições oficiais Classe Define os atributos e métodos comuns que serão compartilhados por um objeto. Objeto É uma instância da classe. UNILUS - Centro Universitário Lusíada Página 7 de 12

Abstração É a habilidade de concentrar nos aspectos essenciais de um contexto qualquer, ignorando características menos importantes ou acidentais. Em modelagem orientada a objetos, uma classe é uma abstração de entidades existentes no domínio do sistema de software. Os atributos que serão utilizados naquele momento. Identificar os atributos importantes para o seu negócio. Exercícios 1) Preste atenção no ambiente que você está. Pegue um papel / caneta. Identifique dois objetos físicos no ambiente. Classifique-os (criar a classe que deu origem a este objeto). O que posso fazer com ele. O estado atual do objeto. 2) Agora identifique dois objetos conceituais (abstratos) do seu dia-a-dia e classifique-os. UNILUS - Centro Universitário Lusíada Página 8 de 12

Instale o JDK Siga estas etapas para fazer o download e instalar o JDK: 1. Em Downloads do Java SE, clique no link: http://www.oracle.com/technetwork/java/javase/downloads/index.html, para exibir a página de download da última versão do JDK. 2. Concorde com os termos da licença. 3. Em Java SE Development Kit, escolha o download que corresponda a seu sistema operacional. 4. Após o download é só instalar. Exemplos em Java Exemplo 1 import javax.swing.joptionpane; public class Calculadora { public static void main(string args[]){ int valor1; int valor2; int total; valor1=2; valor2=3; total = valor1 + valor2; JOptionPane.showMessageDialog(null,"Total da soma : " + total); UNILUS - Centro Universitário Lusíada Página 9 de 12

Exemplo 2 public class Hello { public static void main(string[] args) { System.out.println("Olá Mundo!"); System.exit(0); Exemplo 3 import javax.swing.jframe; public class MeuPrimeiroPrograma { public static void main(string args[]){ JFrame janela = new JFrame(); janela.setsize(500, 300); janela.settitle("calculadora"); janela.setvisible(true); public Modificador de acesso do método - Pode ser acessado por qualquer classe dentro (e fora) do projeto. static Define o método como estático, isso quer dizer que a classe não precisa ser instanciada para chamar este método. void É tipo de retorno do método. Este tipo de retorno significa vazio/nada, o método não dá retorno nenhum. main É o nome do método. É o primeiro método a ser executado. Exemplo 4 import javax.swing.joptionpane; public class EntradaDado { public static void main(string args[]){ JOptionPane.showInputDialog(null, "Digite seu nome", "Cadastro cliente",3); UNILUS - Centro Universitário Lusíada Página 10 de 12

Exemplo 5 import java.awt.*; import java.awt.event.*; public class Janela extends Frame { class WindowHandler extends WindowAdapter { public void windowclosing(windowevent we) { dispose(); System.exit(0); public void windowactivated(windowevent we) { we.getwindow().validate(); public Janela() { this("janela"); public Janela(String titulo) { settitle(titulo); setsize(320,200); addwindowlistener(new WindowHandler()); public static void main(string[] args) { Janela j = new Janela(); j.setvisible(true); UNILUS - Centro Universitário Lusíada Página 11 de 12

Exercícios 1. Criar um programa para manipular variáveis. Para exibir na tela o seu nome, endereço, uma variável com valor inteiro e outra com valor real definidos. 2. Determine qual é a idade que o usuário faz no ano atual. Para isso solicite o ano de nascimento do usuário e o ano atual. 3. A partir de 3 notas fornecidas de um aluno, informe se ele foi aprovado, ficou de recuperação ou foi reprovado. Média de aprovação é >= 7.0; Média de recuperação é >= 5.0 e < 7.0; e Média do reprovado é < 5.0. UNILUS - Centro Universitário Lusíada Página 12 de 12