Академический Документы
Профессиональный Документы
Культура Документы
Abstrao Procedural...
Em
programao imperativa, programas so modelados como algoritmos mais estrutura de dados; Algoritmos so desenvolvidos atravs de duas idias complementares:
Uso
Abstrao Procedural...
Abstrao
Procedural - permite ao programador se preocupar principalmente com a interface entre a funo e o que ela calcula, ignorando os detalhes de como o clculo realizado;
Abstrao Procedural...
Refinamento
Gradual desenvolver o programa passo-a-passo, indo de sua forma mais geral a sua forma mais especfica;
Ex: Uma funo de Interface textual com o Usurio em Java: Inicialmente temos a chamada para a funo:
interfaceUsuario();
Abstrao Procedural...
Criao
da funo: public static void interfaceUsuario(){ } Preenchimento do algoritmo da funo o que a funo faz; public static void interfaceUsuario(){ //LOOP //MENU //USURIO DIGITA A OPO DESEJADA //AO //FIM LOOP }
5
Abstrao Procedural...
Preenchimento Passo
1 loop: public static void interfaceUsuario(){ int opcao; do{ //MENU //USURIO DIGITA A OPO DESEJADA //AO }while(opcao != 5); }
Abstrao Procedural...
Passo
2 menu: public static void interfaceUsuario(){ int opcao; do{ menu(); //USURIO DIGITA A OPO DESEJADA //AO }while(opcao != 5); }
Abstrao Procedural...
Passo
3 usurio digita a opo desejada: public static void interfaceUsuario(){ int opcao; Scanner sc = new Scanner(System.in); do{ menu(); opcao = sc.nextInt(); //AO }while(opcao != 5); }
8
Abstrao Procedural
Passo
4 ao: public static void interfaceUsuario(){ int opcao; Scanner sc = new Scanner(System.in); do{ menu(); opcao = sc.nextInt(); realizaAcao(opcao); }while(opcao != 5); }
9
de abstrao procedural; Abstrai no apenas funes, mas tambm tipos; Mesmo tipos primitivos possuem abstrao;
Ex: float em Java operaes no dependem de sua representao concreta para serem realizadas;
Abstrao
10
um mecanismo que permite que constantes logicamente relacionadas, tipos, variveis, mtodos, etc, sejam agrupados em uma nova entidade;
Ex:
Estruturas; Classes;
11
programao imperativa, os tipos abstratos so passivos, as operaes so realizadas em cima deles, e no eles quem realizam as operaes; Exemplo:
Entidade Aluno realiza matricula, entre outras operaes; Exemplo em C++ exemplo em programao imperativa.
12
Modelo Objeto
Problemas
Programao
Orientada a Objetos existe desde a dcada de 60, mas s se tornou popular na dcada de 80;
14
Inicializao dos dados; Finalizao dos dados; Estender uma abstrao adicionando novas operaes algo complexo; Modelagem complexa de tipos especficos de programao, como Interfaces Grficas de Usurio e programao de sistemas embarcados;
na programao imperativa:
Classe...
uma declarao de tipo que encapsula constantes, variveis e funes para manipulao dessas variveis;
Uma
15
Classe...
Variveis
classe; Construtores inicializam uma instncia de uma classe; Destrutores finalizam uma instncia de uma classe; Mtodos outras funes da instncia; Objetos Instncia de uma classe;
16
Classe...
public class Aluno{ String nome; int numMatricula; boolean estahMatriculado; ... void realizaMatricula(){ estahMatriculado = true; } ... }
17
Classe...
Uma
funo do construtor garantir que todas as variveis de instncia sejam corretamente inicializadas;
Um
No exemplo Aluno para linguagem imperativa, para cada instncia se faz necessrio preencher todos os dados do Aluno, um por um; No construtor, voc encapsula isso em um mtodo, e obriga que esse mtodo seja chamado na criao do objeto;
Classe...
Exemplo
de Construtor para Aluno: public Aluno(String nome1, int matricula1){ nome = nome1; matricula = matricula1; estahMatriculado = false; }
Exemplo
Classe...
Destruidores
C++
Garbage Collection (Coletor de Lixo) serve para retirar automaticamente objetos que no sero mais utilizados no programa; Vantagens: evita que o programador tenha que se preocupar com isso, e aumenta a segurana; Desvantagem: deixa o software mais lento;
possui destruidores;
20
Classe...
Mtodos
Resqucios da programao imperativa; So chamados pelo nome da classe; Exemplos de mtodos de classe da API Java:
21
Classe...
Mtodos
22
Classe
Mtodos
o seguinte formato em Java: <visibilidade> <tipo de retorno> <nome> (<parmetros>) Exemplo de chamada: Aluno x = new Aluno(); x.realizaMatricula();
23
Visibilidade...
O
nvel de visibilidade de uma varivel, mtodo ou classe o quanto esse elemento est visvel ao mundo exterior a classe; Java possui 4 nveis de visibilidade, do maior nvel ao menor nvel:
24
Visibilidade
public
permite que o elemento seja acessvel de qualquer lugar; Recomenda-se no usar em variveis; protected permite que o elemento seja acessvel apenas em classes de mesmo pacote e por subclasses; default permite que o elemento seja acessvel apenas em classes de mesmo pacote; No possui um nome especfico no cdigo; private no permite visualizao fora da classe;
25