Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouMariana Da Cunha Alterado mais de 10 anos atrás
1
Desenvolvimento de Sistemas Orientados a Objetos
METODOLOGIA PARA DESENVOLVIMENTO DE SISTEMAS Prof. Dr. rer. nat. Daniel D. Abdala
2
Objetivos Fixar os diversos aspectos da orientação a objetos via exemplos; Introduzir os conceitos de: Modificadores de acesso; Métodos de acesso; Classes abstratas. Exercitar os tópicos visto em aula via o exemplo Geometrix.
3
Revisando OO Objetos x Classes x Instâncias Objetos
Estado Funcionalidades Identificação Única Objetos interagem via troca de mensagens Mensagens x Métodos (public x private) Especialização x Agregação
4
Ambiente de Desenvolvimento
IDE – Integrated Development Environment NetBeans Eclipse
5
IDE - Eclipse
6
IDE - NetBeans
7
Classes Abstratas Definem uma interface (conjunto de métodos) que devem ser definidos por todas as classes que especializem esta classe
8
Classes Abstratas ////////////////////////////////////////////////// //FiguraGeometrica // //Desc: Define uma interface unificada que todos // os objetos filhos devem implementar public abstract class FiguraGeometrica extends Object{ public abstract void printIt(); public abstract void drawIt(); }
9
////////////////////////////////////////////////// //Ponto // //Desc: Implementa o objeto ponto em 3 dimensões public class Ponto extends FiguraGeometrica{ //atributos private double x; private double y; private double z; //construtor public Ponto(){ x = 0; y = 0;z = 0; } public Ponto(double nx, double ny, double nz){ x = nx; y = ny;z = nz;
10
//interface especifica do objeto public void movePara(double nx, double ny, double nz){ x = x + nx; y = y + ny; z = z + nz; } public double distancia(Ponto p){ double distX = p.getx() - x; double distY = p.gety() - y; double distZ = p.getz() - z; return Math.sqrt(distX*distX + distY*distY); //metodos de acesso public void setponto(int nx, int ny, int nz){ x = nx; y = ny; z = nz; public double getx(){ return x;
11
public double gety(){ return y; } public double getz(){ return z; //implementação da interface abstrata public void printIt(){ System.out.print(x); System.out.print(y); System.out.print(z); System.out.print("\n"); public void drawIt(){ //TODO: decidir em que ambiente o ponto deve ser desenhado
12
////////////////////////////////////////////////// //Retangulo // public class Retangulo extends Object{ private Ponto p1; private Ponto p2; public Retangulo(Ponto np1, Ponto np2){ p1 = np1; p2 = np2; } public void printIt(){ public void drawIt(){ public double area(){ double a = p2.getx() - p1.getx(); double b = p2.gety() - p1.gety(); return a * b; }}
13
Exercício Crie classes para representar:
Elipses Círculos Quadrados Polígonos Liste os métodos e atributos que devem estar contidos em cada um dos objetos antes de definir as classes;
14
Exemplo da Aula - Calculadora
15
Projeto Calculadora Projeto pequeno, nem todos os diagramas serão necessários: Documento de escopo Documentos de descrição do projeto Levantamento de Requisitos Levantamento de Objetos Modelagem Programação
16
Escopo Uma empresa que cria programas para supermercados deseja adicionar a seu sistema já existente uma calculadora para cálculos simples. O programa deve ser criado embora já existam calculadoras em computador porque o sistema roda em hardware dedicado sem acesso direto ao sistema operacional. O programa calculadora deve permitir a entrada de números de até oito dígitos. O cálculo resultante deve ter no máximo nove dígitos. O programa deve aceitar tanto entrada de dados via teclado quanto via cliques de mouse. Para as operações binárias, um dos operandos é assumido como o número existente no display no momento em que os sinais +, - , * ou / são selecionados. Após a seleção de uma operação, o segundo número será assumido como o número no display no momento em que se preciona o sinal =, +, -, * ou /. A seleção de “CE” ou “C” devem limpar ambos os operandos. Para os operadores unários, %, 1/x ou √, operador único deve ser assumido como sendo o número atual no display. Todos os cálculos efetuados na calculadora devem ser salvos em um Log para que os mesmos possam ser auditados posteriormente.
17
Definição de requisitos via Interface
O display deve ser limpo Opera apenas com o número no display Requer que um segundo número seja informado Requer que o cálculo binário seja efetuado
18
Estados do Objeto Calculadora
%, 1/x, √ Primeiro n. sendo digitado Buffer 1 Definido +, - , *, / Display vazio C, CE Primeiro n. sendo digitado C, CE =, +, - , *, / Mostra resultado C, CE
19
Atributos do Objeto Calculadora
Display Buffer1 Buffer2 Memória Log
20
Mensagens do Objeto Calculadora
checaOperandoValido calculaMais calculaMenos calculaVezes calculaDivisao calculaPercentagem calculaRaiz calculaInv salvaParaMemoria recuperaDaMemoria
21
Exercício Modele o Objeto Log que registrará todos os cálculos feitos na calculadora
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.