Teste de Software: Existe Isto? Jorge Fernandes Junho de 2004

Tamanho: px
Começar a partir da página:

Download "Teste de Software: Existe Isto? Jorge Fernandes Junho de 2004"

Transcrição

1 Teste de Software: Existe Isto? Jorge Fernandes Junho de 2004

2 public class Calc { private int estadointeracao; private int operacaoselecionada; private long acumulador0; private long acumulador1; private static final int NENHUMA = 0; private static final int SOMA = 1; private static final int SUBTRACAO = 2; private static final int ACUMULANDO_0 = 0; private static final int ACUMULANDO_1 = 1; public Calc() { long soma() { operacaoselecionada = SOMA; estadointeracao = ACUMULANDO_1; return acumulador0; long um() {return numerodigitado(1); long dois() {return numerodigitado(2); long numerodigitado(int valor) { if (estadointeracao == ACUMULANDO_0) { acumulador0 = acumulador0 * 10 + valor; estadointeracao = ACUMULANDO_0; return acumulador0; else if (estadointeracao == ACUMULANDO_1) { acumulador1 = acumulador1 * 10 + valor; estadointeracao = ACUMULANDO_1; return acumulador1; return 0; long igual() { long resultado = 0; if (operacaoselecionada == SOMA) { resultado = acumulador0 + acumulador1; reset(); return resultado; long reset() { estadointeracao = ACUMULANDO_0; operacaoselecionada = NENHUMA; acumulador0 = 0; acumulador1 = 0; return acumulador0; import java.awt.*; import java.awt.event.*; public class CalcVisual extends Frame { // Cria os painéis Panel panelteclas = new Panel(); Panel panelteclastopo = new Panel(); Panel panelteclasnumericas = new Panel(); // cria os gerenciadores de layout dos painéis BorderLayout BorderLayoutPrincipal = new BorderLayout(); BorderLayout BorderLayoutTodasAsTeclas = new BorderLayout(); GridLayout gridlayoutclearcebackspace = new GridLayout(); GridLayout gridlayoutteclasnumericaseoperacoes = new GridLayout(); // cria a área de display da calculadora TextField textfielddisplay = new TextField(); // cria os botões da calculadora Button buttonbackspace = new Button(); Button buttonc= new Button(); Button buttonce = new Button(); Button button_0 = new Button(); Button button_1 = new Button(); Button button_2 = new Button(); Button button_3 = new Button(); Button button_4 = new Button(); Button button_5 = new Button(); Button button_6 = new Button(); Button button_7 = new Button(); Button button_8 = new Button(); Button button_9 = new Button(); Button button_pontodecimal = new Button(); Button button_igual = new Button(); Button button_soma =new Button(); Button button_subtracao = new Button(); Button button_mult = new Button(); Button button_divisao = new Button(); Button button_percento = new Button(); Button button_raiz = new Button(); Button button_invertesinal = new Button(); Button button_reciproco = new Button(); // cria o "modelo de dados", isto é, o próprio objeto calculadora // que irá efetivamente realizar os cálculos Calc calc = new Calc(); // construtor da parte visual da calculadora public CalcVisual() { try { buildgui(); catch (Exception e) { e.printstacktrace(); /** * Constroi os elementos da interface grafica da calculadora Software Teste de Software: Existe Isto? Por // os Jorge dois paineis H de C teclas Fernandes menores 2004 */ private void buildgui() throws Exception { button_9.setlabel("9"); button_soma.setlabel("+"); button_igual.setlabel("="); // adiciona alguns botões no painel de teclas superior gridlayoutclearcebackspace.setcolumns(3); panelteclastopo.setlayout(gridlayoutclearceb ); ackspace); // cria o tratador de evento para o botão "-" panelteclastopo.add(buttonbackspace, null); panelteclastopo.add(buttonce, null); button_subtracao.addactionlistener(new panelteclastopo.add(buttonc, null); java.awt.event.actionlistener() { public void actionperformed(actionevent e) { // adiciona alguns botões no painel de teclas inferior button_subtracao_actionperformed(e); gridlayoutteclasnumericaseoperacoes.setrows(4); gridlayoutteclasnumericaseoperacoes.setcolumns(5); ); gridlayoutteclasnumericaseoperacoes.sethgap(4); // cria o tratador de evento para o botão "*" gridlayoutteclasnumericaseoperacoes.setvgap(4); button_mult.addactionlistener(new java.awt.event.actionlistener() { panelteclasnumericas.setlayout (gridlayouttecla snumericaseoperacoes); panelteclasnumericas.add(button_7, null); panelteclasnumericas.add(button_8, null); panelteclasnumericas.add(button_9, null); panelteclasnumericas.add(button_divisao, null); panelteclasnumericas.add(button_raiz, null); panelteclasnumericas.add(button_4, null); panelteclasnumericas.add(button_5, null); panelteclasnumericas.add(button_6, null); panelteclasnumericas.add(button_mult, null); panelteclasnumericas.add(button_percento, null); panelteclasnumericas.add(button_1, null); panelteclasnumericas.add(button_2, null); panelteclasnumericas.add(button_3, null); panelteclasnumericas.add(button_subtracao, null); panelteclasnumericas.add(button_reciproco, null); panelteclasnumericas.add(button_0, null); panelteclasnumericas.add(button_invertesinal, null); panelteclasnumericas.add(button_pontodecimal, null); ); panelteclasnumericas.add(button_soma, null); panelteclasnumericas.add(button_igual, null); // cria o tratador de evento para o botão "2" button_2.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed(actionevent e) { button_2_actionperformed(e); ); // cria o tratador de evento para o botão "+" button_soma.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed(actionevent e) { button_soma_actionperformed(e); public void actionperformed(actionevent e) { button_mult_actionperformed(e); ); // cria o tratador de evento para o botão "/" button_divisao.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed(actionevent e) { button_divisao_actionperformed(e); ); // cria o tratador de evento para o botão "=" button_igual.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed(actionevent e) { button_igual_actionperformed(e); // cria o tratador de evento para o comando de janelas window close // (ALT+F4 no windows) // adiciona ao painel geral de todas as teclas this.addwindowlistener(new java.awt.event.windowadapter() { public void windowclosing(windowevent e) { // ajusta as propriedades dos gerenciadores de layout this_windowclosing(e); panelteclas.setlayout(borderlayouttodasasteclas);

3 public class Calc { private int estadointeracao; private int operacaoselecionada; private long acumulador0; private long acumulador1; private static final int NENHUMA = 0; private static final int SOMA = 1; private static final int SUBTRACAO = 2; private static final int ACUMULANDO_0 = 0; private static final int ACUMULANDO_1 = 1; public Calc() { long soma() { operacaoselecionada = SOMA; estadointeracao = ACUMULANDO_1; return acumulador0; long um() {return numerodigitado(1); long dois() {return numerodigitado(2); long numerodigitado(int valor) { if (estadointeracao == ACUMULANDO_0) { acumulador0 = acumulador0 * 10 + valor; estadointeracao = ACUMULANDO_0; return acumulador0; else if (estadointeracao == ACUMULANDO_1) { acumulador1 = acumulador1 * 10 + valor; estadointeracao = ACUMULANDO_1; return acumulador1; return 0; long igual() { long resultado = 0; if (operacaoselecionada == SOMA) { resultado = acumulador0 + acumulador1; reset(); return resultado; long reset() { estadointeracao = ACUMULANDO_0; operacaoselecionada = NENHUMA; acumulador0 = 0; acumulador1 = 0; return acumulador0; import java.awt.*; import java.awt.event.*; public class CalcVisual extendsframe { // Cria os painéis Panel panelteclas = new Panel(); Panel panelteclastopo = new Panel(); Panel panelteclasnumericas = new Panel(); // cria os gerenciadores de layout dos painéis BorderLayout BorderLayoutPrincipal= new BorderLayout(); BorderLayout BorderLayoutTodasAsTeclas= new BorderLayout(); GridLayout gridlayoutclearcebackspace = new GridLayout(); GridLayout gridlayoutteclasnumericaseoperacoes = new GridLayout(); // cria a área de display da calculadora TextField textfielddisplay = new TextField (); // cria os botões da calculadora Button buttonbackspace = new Button (); Button buttonc = new Button(); Button buttonce= new Button(); Button button_0 = new Button (); Button button_1 = new Button (); Button button_2 = new Button (); Button button_3 = new Button (); Button button_4 = new Button (); Button button_5 = new Button (); Button button_6 = new Button (); Button button_7 = new Button (); Button button_8 = new Button (); Button button_9 = new Button (); Button button_pontodecimal = new Button(); Button button_igual =new Button (); Button button_soma = new Button(); Button button_subtracao = new Button(); Button button_mult = new Button(); Button button_divisao = new Button (); Button button_percento = new Button(); Button button_raiz = new Button(); Button button_invertesinal = new Button(); Button button_reciproco = new Button(); Você Testa Software? // cria o "modelo de dados", isto é, o próprio objeto calculadora // que irá efetivamente realizar os cálculos Calc calc = new Calc(); // construtor da parte visual da calculadora public CalcVisual () { try { buildgui(); catch (Exception e) { e.printstacktrace(); /** * Constroi os elementos da interface grafica da calculadora */ private void buildgui() throws Exception { // ajusta as propriedades display textfielddisplay.settext ("0"); // modifica cores de alguns botões buttonbackspace.setforeground(color.red ); buttonc.setforeground (Color.red); buttonce.setforeground (Color.red); // atribui rótulos aos botões da calculadora buttonc.setlabel ("C"); buttonce.setlabel ("CE"); buttonbackspace.setlabel("backspace"); button_0.setlabel("0"); button_1.setlabel("1"); button_2.setlabel("2"); button_3.setlabel("3"); button_4.setlabel("4"); button_5.setlabel("5"); button_6.setlabel("6"); button_7.setlabel("7"); button_8.setlabel("8"); button_9.setlabel("9"); button_soma.setlabel ("+"); button_igual.setlabel("="); // adiciona alguns botões no painel de teclas superior gridlayoutclearcebackspace.setcolumns (3); panelteclastopo.setlayout(gridlayoutclearcebackspace); panelteclastopo.add(buttonbackspace, null); panelteclastopo.add(buttonce, null); panelteclastopo.add(buttonc, null); // adiciona alguns botões no painel de teclas inferior gridlayoutteclasnumericaseoperacoes.setrows (4); gridlayoutteclasnumericaseoperacoes.setcolumns (5); gridlayoutteclasnumericaseoperacoes.sethgap (4); gridlayoutteclasnumericaseoperacoes.setvgap (4); panelteclasnumericas.setlayout(gridlayoutteclasnumericaseoperacoes); panelteclasnumericas.add(button_7, null ); panelteclasnumericas.add(button_8, null ); panelteclasnumericas.add(button_9, null ); panelteclasnumericas.add(button_divisao, null ); panelteclasnumericas.add(button_raiz, null); panelteclasnumericas.add(button_4, null ); panelteclasnumericas.add(button_5, null ); panelteclasnumericas.add(button_6, null ); panelteclasnumericas.add(button_mult, null); panelteclasnumericas.add(button_percento, null); panelteclasnumericas.add(button_1, null ); panelteclasnumericas.add(button_2, null ); panelteclasnumericas.add(button_3, null ); panelteclasnumericas.add(button_subtracao, null); panelteclasnumericas.add(button_reciproco, null); panelteclasnumericas.add(button_0, null ); panelteclasnumericas.add(button_invertesinal, null); panelteclasnumericas.add(button_pontodecimal, null); panelteclasnumericas.add(button_soma, null); panelteclasnumericas.add(button_igual, null ); // adiciona ao painel geral de todas as teclas // os dois paineis de teclas menores // ajusta as propriedades dos gerenciadores de layout panelteclas.setlayout(borderlayouttodasasteclas ); panelteclas.add(panelteclastopo, BorderLayout.NORTH); panelteclas.add(panelteclasnumericas, BorderLayout.CENTER); // ajusta propriedades gerais visuais da interface this.setsize(250, 275); this.setresizable(false); this.setlayout(borderlayoutprincipal); // adiciona o painel geral de teclas ao centro frame (this) this.add(panelteclas, BorderLayout.CENTER); // adiciona o display ao topo do frame (this) this.add(textfielddisplay, BorderLayout.NORTH); /** * cria os vários tratadores de evento */ // cria o tratador de evento para o botão C (clear) buttonc.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed (ActionEvent e) { buttonc_actionperformed (e); ); // cria o tratador de evento para o botão "1" button_1.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed (ActionEvent e) { button_1_actionperformed (e); ); // cria o tratador de evento para o botão "2" button_2.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed (ActionEvent e) { button_2_actionperformed (e); ); // cria o tratador de evento para o botão "+" button_soma.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed (ActionEvent e) { button_soma_ actionperformed (e); ); // cria o tratador de evento para o botão "-" button_subtracao.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed (ActionEvent e) { button_subtracao _actionperformed (e); ); // cria o tratador de evento para o botão "*" button_mult.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed (ActionEvent e) { button_mult_actionperformed (e); ); // cria o tratador de evento para o botão "/" button_divisao.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed (ActionEvent e) { button_divisao_actionperformed (e); ); // cria o tratador de evento para o botão "=" button_igual.addactionlistener(new java.awt.event.actionlistener() { public void actionperformed (ActionEvent e) { button_igual_actionperformed (e); ); // cria o tratador de evento para o comando de janelas windowclose // (ALT+F4 no windows) this.addwindowlistener(new java.awt.event.windowadapter() { public void windowclosing (WindowEvent e) { this_windowclosing(e); ); // mostra a interface grafica para o usuário show(); // métodos que implementam o tratamento de eventos void this_windowclosing(windowevent e) { System.exit(0); void button_soma_ actionperformed (ActionEvent e) { this.textfielddisplay.settext("" + calc.soma()); void button_subtracao_actionperformed (ActionEvent e) { this.textfielddisplay.settext("" + calc.sub()); void button_mult_actionperformed (ActionEvent e) { this.textfielddisplay.settext("" + calc.mult()); void button_divisao _actionperformed (ActionEvent e) { this.textfielddisplay.settext("" + calc.div()); void button_igual_actionperformed (ActionEvent e) { this.textfielddisplay.settext("" + calc.igual()); void button_1_actionperformed (ActionEvent e) { this.textfielddisplay.settext("" + calc.um()); void button_2_actionperformed (ActionEvent e) { this.textfielddisplay.settext("" + calc.dois()); void buttonc _actionperformed (ActionEvent e) { this.textfielddisplay.settext("" + calc.reset()); public static void main (String[] args) { CalcVisual CalcVisual1 =new CalcVisual();

4 Software ou Sistema? Win32 Windows Device Drivers Hardware

5 Sistema um conjunto de elementos inter-relacionados que interagem no desempenho de uma função Sistema econômico mantém os recursos da economia em circulação Sistema Computacional atende a uma determinada necessidade de processamento de informações de usuários Sistema Solar Manter os planetas girando em torno do sol Sistema de injeção eletrônica regular a mistura ótima de combustível e ar para o funcionamento do motor Sistema digestivo incorporar, ao corpo de um animal, a energia e matéria contidas em alimentos Biosfera manter a vida sobre a terra

6 Um Sistema De Computador é uma Máquina O Usuário Conversa com a Máquina Sistema de Computador (Estendido Pelo Software) Saída (output) Entrada (input) Usuário

7 Um Sistema para Desenhar ou Máquina de Desenhar

8 Um Sistema ou Máquina para Tratar Imagens

9 Um Sistema ou Máquina, que Simula um Celular, que simula um jogo de damas

10 Várias Máquinas Coexistem em um Sistema de Computador em um Mesmo Instante de Tempo

11 Um Sistema de Computador Programável é uma Fábrica de Máquinas Extensível E cada software descreve como fábricar uma máquina E o programador constrói estas descrições de máquinas conforme especificações do que a máquina deve fazer quando em funcionamento

12 O uso da Máquina é feito por uma Conversa, que é Baseada uma Linguagem Linguagem A (Conversar com Celular) Linguagem B (Conversar com Paint) Linguagem C (Conversar com Calculadora)

13 A Linguagem da Máquina Paint

14 A Linguagem da Máquina Calculatora

15 Vamos conversar com Algumas Máquinas? Converse com o Paint Converse com o GIMP Converse com o Powerpoint! Converse com o sistema operacional

16 No que consiste o conversar? Num diálogo com a máquina Na locução de frases que são construídas numa linguagem com sintaxe e semântica próprias

17 Quando uma máquina faz sucesso? Quando a conversa entre usuário e máquina é produtiva Quando do diálogo são produzidos resultados que satisfazem as necessidades do usuário

18 Máquinas Complexas e Hierarquizadas

19 Usuário Uso Máquina n+1 Interpretação do Software Software Carga Máquina n

20 Um Sistema Computacional Usual Máquina n ( MCSW) Software em Execução Interpretação... Máquina 2 ( MCSW) Software em Execução Uso Software Carga... Software Carga Interpretação Máquina 1 ( MCSW) Software em Execução Interpretação Uso Software Carga Máquina 0 MPU Uso

21 Usuários e máquinas Usuário Final Uso Máquina intermediadora Usuário Uso Uso Máquina n+1... Software n Carga Softwaren em Execução Interpretação Máquina n... Uso... Software 2 Software 1 Carga Carga Máquina 2 Software1 em Execução u Interpretação Máquina 1 Software0 em Execução Uso Software 0 Carga Interpretação Máquina 0 Hardware Uso

22 Hierarquia de Máquinas e Linguagens 6 - Interpretação De ED2? Usuário 2? 7 - Entrada de Dados 2 ED2? (sentença escrita em linguagem L2, criada pelo Usuário 1?) Usuário 1 5- Entrada de Dados 1 ED1 (sentença escrita em linguagem L1, criada pelo programador.) 2 Solicita Carga do Programa P0 Saída de Dados (Processo P2?) (Possível execução de ED1, Reconhece ED2 escrita em L2?) 6 - Interpretação de ED1 Processo P1 (Resulta da Execução de ED0, Reconhece ED1 escrita em L1) 4 - Interpretação de ED0 Programa P0, Armazenado 3 Entrada de Dados 0 ED0 (ED0 é uma cópia do programa P0) Máquina Computável M0 (Reconhecedor de ED0) 1 - Programa P0, sentença escrita em uma linguagem computável L0 Programador

23 Checkpoint

24 Definições Software Sistema Ambiente Configuração Linguagem Diálogo Frases Hierarquia

25 Evolução Histórica do Software Linguagem máquina desejada Restrições De tempo e custo cliente Descrição Construtiva de máquina Problemas e Necessidades Máquina possuída Linguagem máquina desejada Restrições De tempo e custo cliente Descrição Construtiva de máquina Problemas e Necessidades Máquina possuída desenvolvedor Satisfação final usuário desenvolvedor Satisfação final usuário Tempo 0 Tempo 1 Novos problemas e necessidades A linguagem da máquina desejada é expandida Novas descrições são construídas, sobre as antigas

26 Grandes Limitações do Teste de Software 1 Você não pode testar o software em todos os sistemas nos quais ele será carregado Solução: testar em (configurações) de sistemas padronizadas 2 Você não pode dialogar com a máquina até a exaustão, porque a linguagem é finita, mas os diálogos são infinitos Solução: técnicas de cobertura de testes

27 Teste de software Análise da satisfação dos requisitos do sistema, definidos por cliente e usuário, feitas por uma máquina constrúida sob coordenação de um software Se qualquer parte da máquina muda a análise deve ser repetida Software Hardware SGBD Rede Pessoal Se os requisitos mudam, a máquina mudará para atendê-los, e deve ser testada novamente

28 Teste de Software é 30% da indústria!

29 Sumário de Teste de software Técnica sistemática para construção de diálogos com uma máquina, e observação dos resultados do diálogo, buscando assegurar que os comportamentos da máquinas serão conformes ao esperado (pelo usuário) Se o sistema no qual o software será interpretado é controlado e previsível, então espera-se que o software executado em sistemas similares também se comportará previsívelmente

30 Teste de Software: Existe Isto? Jorge Fernandes Junho de 2004

Natureza do Software e dos Sistemas

Natureza do Software e dos Sistemas Natureza do Software e dos Sistemas Jorge H C Fernandes Diferença Fundamental entre Engenharia de Software e outras Engenharias! Os materiais são diferentes As teorias fundamentais são diferentes Dificuldades

Leia mais

Encerrando Introdução a Objetos e Classes Redefinição de Métodos (1)

Encerrando Introdução a Objetos e Classes Redefinição de Métodos (1) Encerrando Introdução a Objetos e Classes Redefinição de Métodos (1) Overriding x Overload Métodos de diferentes classes que possuem uma relação de herança. Métodos possuem mesmo nome, mesma assinatura

Leia mais

Criando interfaces com o usuário. Continuação

Criando interfaces com o usuário. Continuação Criando interfaces com o usuário Continuação A diferença básica entre um objeto Window e um objeto JFrame é que o JFrame representa a janela principal de uma aplicação e o Window apenas uma janela a mais.

Leia mais

Programação Java. Construção de Interface gráfica. Processo Básico: OO + Eventos. Exemplo

Programação Java. Construção de Interface gráfica. Processo Básico: OO + Eventos. Exemplo Programação Java Construção de Interface gráfica Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Processo Básico: OO + Eventos Instanciar os componentes de interface por exemplo,

Leia mais

Lista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos

Lista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos Lista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos 1. Para a construção de uma aplicação gráfica se faz necessário conceber a interface de aplicação, identificando-se

Leia mais

Aula 2 Even e to t s d o M ouse

Aula 2 Even e to t s d o M ouse Aula 2 Eventos do Mouse Sumário Considerações iniciais Elementos de uma aplicação Principais tipos de eventos em Java: (WindowEvent, MouseEvent, ActionEvent, KeyEvent) Capturando os eventos: Definindo

Leia mais

Tratamento de Erros. Sérgio Luiz Ruivace Cerqueira

Tratamento de Erros. Sérgio Luiz Ruivace Cerqueira Tratamento de Erros Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Agenda Introdução Try, catch, finally Unchecked Exceptions Como levantar exceções Boas práticas O problema Calculadora numero1:

Leia mais

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em: Aulas 16, 17, e 18

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em:  Aulas 16, 17, e 18 Elaborando Interfaces Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 16, 17, e 18 1 Todos os componentes JLabel JTextField JButton Além do próprio JFrame2 Todos os

Leia mais

Prof. Msc. Vladimir Camelo

Prof. Msc. Vladimir Camelo APLICATIVOS DE LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS (ALPOO) PADRÃO MVC (Model-View-Controller) Prof. Msc. Vladimir Camelo O padrão arquitetural MVC (Model-View-Controller) foi criado no contexto

Leia mais

Java Deployment Course

Java Deployment Course Java Deployment Course Atividade Prática Programação Visual com JBuilder Jorge H. C. Fernandes Recife, 12 de Maio de 1999 Tópicos Modelo da Aplicação Interface da Aplicação Conexão entre Modelo e Interface

Leia mais

MÓDULO 4 SWING Parte 3

MÓDULO 4 SWING Parte 3 Aplicações de Linguagem de Programação Orientada a Objetos 2ºsem/2011 (Professores: Tiago e Daniele) // Exemplo11 Ação do Mouse import javax.swing.*; import java.awt.*; import java.awt.event.actionevent;

Leia mais

MODEL-VIEW-CONTROLER. Prof. Fellipe Aleixo

MODEL-VIEW-CONTROLER. Prof. Fellipe Aleixo MODEL-VIEW-CONTROLER Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) O Que é MVC? Modelo de arquitetura de software Separar dados ou lógica de negócios (Model) da interface do usuário (View) e do fluxo

Leia mais

Aplicações de Linguagem de Programação Orientada a Objeto

Aplicações de Linguagem de Programação Orientada a Objeto Aplicações de Linguagem de Programação Orientada a Objeto Eventos Professora Sheila Cáceres Programação Orientada a Eventos No modelo imperativo tradicional, o programador determina a ordem de entrada

Leia mais

Introdução à Programação de Computadores Parte I

Introdução à Programação de Computadores Parte I Introdução à Programação de Computadores Parte I Prof. Dr. Edson Pimentel Centro de Matemática, Computação e Cognição Objetivos Compreender os componentes básicos de um programa... Objetivos Bacharelado

Leia mais

Aula Prática Criando Views e Controles

Aula Prática Criando Views e Controles Aula Prática Criando Views e Controles Criando a interface utilizando Swing Paulo Ricardo Lisboa de Almeida 1 Criando uma UI Simples Vamos criar uma view simples no braço utilizando swing Existem opções

Leia mais

Programação III. Interface Gráfica - Swing. Interface Gráfica Swing Jocélio Passos joceliodpassos@bol.com.br. Interface Gráfica - Swing

Programação III. Interface Gráfica - Swing. Interface Gráfica Swing Jocélio Passos joceliodpassos@bol.com.br. Interface Gráfica - Swing Programação III Interface Gráfica Swing Jocélio Passos joceliodpassos@bol.com.br Deitel Capítulo 11 : Imagens gráficas e Java 2D Capítulo 12 : Componentes Básicos Capítulo 13 : Componentes Avançados GUI

Leia mais

Prof. Responsáveis Wagner Santos C. de Jesus

Prof. Responsáveis Wagner Santos C. de Jesus Curso Disciplina Linguagem de Programação II Curso Engenharia da Computação Estudos do pacote awt ; Classe Frame;Estrutura básica de implementação de uma iterface gráfica;criação de container para posicionamento

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula de Revisão para AV1

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula de Revisão para AV1 Aula de Revisão para AV1 Conteúdo Programático desta aula Rever os principais conceitos apresentados Resolução de Exercícios para a prova Quantas bibliotecas de GUI existem em Java: a) Uma: Swing b) Duas:

Leia mais

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

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável O controlo da execução do programa é transferido

Leia mais

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

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 6 Exceções Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável O controlo da execução do programa

Leia mais

Responda às questões abaixo: 1 a Questão: Indique todos casos de não determinismo do AFN acima

Responda às questões abaixo: 1 a Questão: Indique todos casos de não determinismo do AFN acima Exercícios 04 CENTRO UNIVERSITÁRIO DE BRASÍLIA - UniCEUB O Autômato Finito Não Determinístico (AFN) abaixo reconhece sentenças da linguagem L, definida sobre o alfabeto Σ = {0, 1, onde as sentenças: possuem

Leia mais

Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção.

Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. 6 Exceções Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável - O controlo da execução do programa

Leia mais

LPII Programando uma Cálculadora Simples Módulo III

LPII Programando uma Cálculadora Simples Módulo III Abra o Eclipse e crie um projeto de nome calculadorasimples. Em seguida crie um frame de nome calculadora na opção New >> Other que apresenta a tela: Inclua os componentes button e TextField, conforme

Leia mais

Model-View-Controller (MVC)

Model-View-Controller (MVC) Model-View-Controller (MVC) por Rodrigo Rebou ças de Almeida Objetivo Separar dados ou lógica de negócios (Model) da interface do usuário (View) e do fluxo da aplicação (Control) A idéia é permitir que

Leia mais

Gerenciadores de Layout

Gerenciadores de Layout Gerenciadores de Layout Mário Antonio Meireles Teixeira DEINF UFMA Baseado em material original de João Carlos Pinheiro CEFET/MA 1 Objetivos Apresentar os gerenciadores de layout: FlowLayout BorderLayout

Leia mais

Layout. Programação Orientada a Objetos Java. Prof. Geraldo Braz Junior. Baseado em material original de João Carlos Pinheiro CEFET/MA

Layout. Programação Orientada a Objetos Java. Prof. Geraldo Braz Junior. Baseado em material original de João Carlos Pinheiro CEFET/MA Layout Programação Orientada a Objetos Java Prof. Geraldo Braz Junior Baseado em material original de João Carlos Pinheiro CEFET/MA Objetivos Apresentar os gerenciadores de layout: FlowLayout BorderLayout

Leia mais

Programação Gráfica em Java Alguns Componentes javax.swing

Programação Gráfica em Java Alguns Componentes javax.swing Programação Gráfica em Java Alguns Componentes javax.swing Objetivo: Ao final da aula o aluno deverá ser capaz de empregar alguns componentes visuais do pacote javax.swing para produzir interfaces gráficas.

Leia mais

Elaborando as Interfaces Aulas 43, 44 e 45

Elaborando as Interfaces Aulas 43, 44 e 45 Elaborando as Interfaces Aulas 43, 44 e 45 RESOLUÇÃO DOS EXERCÍCIOS, MÉTODOS E JPROGRESSBAR Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 43, 44 E 45. 1 ATIVIDADE

Leia mais

Vector Java. Empregado.java

Vector Java. Empregado.java Vector Java Empregado.java /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools Templates * and open the template in the editor.

Leia mais

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

Interfaces Gráficas (GUIs) em Java usando Swing Parte I - O básico Interfaces Gráficas (GUIs) em Java usando Swing Parte I - O básico Prof. Esp. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/aulas/java/aulajava07a09.pptx Existe grande quantidade de funcionalidades

Leia mais

Arquitetura de Tratamento de Eventos em Programas com GUI - Graphical User Interface

Arquitetura de Tratamento de Eventos em Programas com GUI - Graphical User Interface Arquitetura de Tratamento de Eventos em Programas com GUI - Graphical User Interface Jorge H. C. Fernandes (jorge@dimap.ufrn.br) UFRN Abril de 2002 Programas com GUI Separação De Abstrações Arquitetura

Leia mais

Tratamento de Eventos em Programas com GUI - Graphical User Interface. Jorge H. C. Fernandes UFRN Junho de 2001

Tratamento de Eventos em Programas com GUI - Graphical User Interface. Jorge H. C. Fernandes UFRN Junho de 2001 Tratamento de Eventos em Programas com GUI - Graphical User Interface Jorge H. C. Fernandes (jorge@dimap.ufrn.br) UFRN Junho de 2001 Programas com GUI Separação De Abstrações Arquitetura em Camadas Necessidade

Leia mais

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

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Graphical user Interfaces Objetivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs - Utilizar classes do package javax.swing - Usar um modelo de programação

Leia mais

Programação II. Cassio Diego

Programação II. Cassio Diego Programação II Cassio Diego 1 Aula de hoje UNIDADE 1 1. Criação de interfaces gráficas usando as JFC/Swing 1.1. Introdução (revisão de orientação a objetos) 1.2. Hierarquia de classes 1.3. Modelos de desenvolvimento

Leia mais

Especialização em Engenharia de Software - CEUT

Especialização em Engenharia de Software - CEUT Até aqui Programação com interfaces gráficas Sérgio Soares scbs@cin.ufpe.br Criamos a infra-estrutura para a aplicação bancária classes que representam os tipos de conta classe que implementa regras de

Leia mais

Aplicações Gráficas com AWT

Aplicações Gráficas com AWT Aplicações Gráficas com AWT O AWT fornece um conjunto de elementos de interface gráfica padrão (botões, janelas, menus, campos de edição, campos de seleção e outros) incluindo o sistema de tratamento de

Leia mais

Gerenciamento de Layout

Gerenciamento de Layout Gerenciamento de Layout Gerenciamento de layout consiste no processo de determinar o tamanho e a posição dos componentes. Ele pode ser feito usando-se posicionamento absoluto, como fazíamos no VC++, Delphi

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação GGI030 Programação Orientada a Objetos 2o. Semestre de 2017 Prof.

Universidade Federal de Uberlândia Faculdade de Computação GGI030 Programação Orientada a Objetos 2o. Semestre de 2017 Prof. Universidade Federal de Uberlândia Faculdade de Computação GGI030 Programação Orientada a Objetos 2o. Semestre de 2017 Prof. Renato Pimentel Laboratório 10 Interface gráfica Atividade individual. 1 Introdução

Leia mais

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

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Graphical user Interfaces Objetivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs - Utilizar as classes JFrame, JButton, JLabel, ImageIcon, JTextField,

Leia mais

Tratamento de Exceção. Programação Orientada a Objetos Java (Rone Ilídio)

Tratamento de Exceção. Programação Orientada a Objetos Java (Rone Ilídio) Tratamento de Exceção Programação Orientada a Objetos Java (Rone Ilídio) Tratamento de exceção Exceção é uma contração de Evento de Exceção Evento de exceção impede a execução normal de um programa Quando

Leia mais

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

JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: Font size Animation FACULDADE DE TECNOLOGIA SENAC PELOTAS JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: Font size Animation FACULDADE DE TECNOLOGIA SENAC PELOTAS Nome do aluno: Guilherme Faria Quental Identificação da Turma: Análise e Desenvolvimento de Sistemas

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Alexandre César Muniz de Oliveira Entrada e Saída Parte IV Entrada e Saída Módulo de Interface com o usuário Dividir trabalho Separar processamento de E/S Entrada e Saída

Leia mais

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em: Aulas 19, 20 e 21

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em:  Aulas 19, 20 e 21 Elaborando Interfaces Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 19, 20 e 21 1 PARAMOS AQUI NA AULA PASSADA Elabore a tela abaixo: (Valor 2,0 pontos) 2 Algumas

Leia mais

Tecnólogo em Análise e Desenvolvimento de Sistemas

Tecnólogo em Análise e Desenvolvimento de Sistemas 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

Leia mais

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

Elaborando as Interfaces dos trabalhos das aulas 28, 29 e 30. Elaborando as Interfaces dos trabalhos das aulas 28, 29 e 30. Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 28, 29 e 30. 1 Exercício Crie uma tela com os menus Menu

Leia mais

Exercício 1: Criar um programa que utiliza que desenha uma interface gráfica tal como descrito na Figura 1.1.

Exercício 1: Criar um programa que utiliza que desenha uma interface gráfica tal como descrito na Figura 1.1. 9ª LISTA DE EXERCÍCIOS INTERFACES GRÁFICAS DE USUÁRIO Disciplina: PC-II Exercício 1: Criar um programa que utiliza que desenha uma interface gráfica tal como descrito na Figura 1.1. Figura 1.1: Primeira

Leia mais

MANIPULAÇÃO DE EVENTOS

MANIPULAÇÃO DE EVENTOS MANIPULAÇÃO DE EVENTOS Ao término desse capítulo você terá aprendido: Tipos de eventos; Manipulação de eventos de componentes; Manipulação de eventos do mouse; Manipulação de eventos do teclado; Interfaces

Leia mais

Laboratório de Programação. Aula 12 Java 5COP088. Aula 12 Exceções Prof. Dr. Sylvio Barbon Junior. Sylvio Barbon Jr

Laboratório de Programação. Aula 12 Java 5COP088. Aula 12 Exceções Prof. Dr. Sylvio Barbon Junior. Sylvio Barbon Jr 5COP088 Laboratório de Programação Aula 12 Exceções Prof. Dr. Sylvio Barbon Junior 1 Sumário: 1) Manipulação de Exceções; 1) Try e Catch 2) Finally 3) Propagação (Throw e Throws) 2) Erros e Exceções Comuns;

Leia mais

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

1) Responda de acordo com os conceitos de orientação a objetos (0,5). Avalição II (Teórica) 22/06/2017 Disciplina Linguagem de Programação II Prof. Wagner, dos Santos C. de Jesus Curso Engenharia da Computação Questões Solução da Avaliação 1) Responda de acordo com os conceitos

Leia mais

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

Prof. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II Java Nona aula Programação Orientada a Objetos II Java Nona aula 1 Programação Orientada a Objeto II Interface Gráfica AWT E SWING Criação de interfaces gráficas básicas Exercícios 2 Interface gráfica em Java As aplicações

Leia mais

Programação de Computadores II TCC /Turma A 1

Programação de Computadores II TCC /Turma A 1 Programação de Computadores II TCC 00.174/Turma A 1 Professor Leandro A. F. Fernandes http://www.ic.uff.br/~laffernandes Conteúdo: Tratamento de exceções Material elaborado pelos profs. Anselmo Montenegro

Leia mais

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

Introdução à Programação Gráfica em Java Introdução à Programação Gráfica em Java U N I V E R S I D A D E T E C N O L Ó G I C A F E D E R A L D O P A R A N Á D E P A R T A M E N T O A C A D Ê M I C O D E E L E T R Ô N I C A P R O F. V I T O R

Leia mais

Programação Estruturada e Orientada a Objetos

Programação Estruturada e Orientada a Objetos INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Programação Estruturada e Orientada a Objetos Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@ifrn.edu.br

Leia mais

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

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract

Leia mais

. Uma instância da classe JTextField gera uma instância da classe ActionEvent quando o objecto está activo e o utilizador pressiona a tecla ENTER.

. Uma instância da classe JTextField gera uma instância da classe ActionEvent quando o objecto está activo e o utilizador pressiona a tecla ENTER. Interfaces Gráficas e Eventos - 18 A classe JTextField. Um campo de texto, permite ao utilizador introduzir uma única linha de texto. Uma instância da classe JTextField gera uma instância da classe ActionEvent

Leia mais

UNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas

UNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA Pilhas Estrutura de Dados A Estrutura de Dados Pilha Pilha é uma estrutura de dados usada em programação, que tem uma regra

Leia mais

Um Modelo Semântico para a Linguagem Java Jorge Henrique Cabral Fernandes CIC-UnB Junho de Introdução

Um Modelo Semântico para a Linguagem Java Jorge Henrique Cabral Fernandes CIC-UnB Junho de Introdução Um Modelo Semântico para a Linguagem Java Jorge Henrique Cabral Fernandes CIC-UnB Junho de 2004 Introdução Este texto apresenta um modelo semântico inicial para um subconjunto da linguagem Java. A Figura

Leia mais

Notas de Aula 09: Tratamento de exceções

Notas de Aula 09: Tratamento de exceções Notas de Aula 09: Tratamento de exceções Objetivos da aula: Compreender o conceito de exceção Aprender a tratar exceções nos programas Entender a hierarquia das exceções Criar e lançar uma exceção proprietária

Leia mais

Aula 1 POO 1 Prática. Profa. Elaine Faria UFU

Aula 1 POO 1 Prática. Profa. Elaine Faria UFU Aula 1 POO 1 Prática Profa. Elaine Faria UFU - 2019 Introdução Java Linguagem de programação poderosa Utiliza o paradigma Orientado a Objetos Muito utilizada em aplicativos para Internet e para redes Difundida

Leia mais

Agenda. JFC (Java FoundaNon Classes) Interfaces Gráficas: layout manager JFC. Componentes do Swing. Pluggable Look and Feel

Agenda. JFC (Java FoundaNon Classes) Interfaces Gráficas: layout manager JFC. Componentes do Swing. Pluggable Look and Feel Agenda Interfaces Gráficas: layout manager joao@ecomp.uefs.br JFC (Java FoundaNon Classes) Swing componentes Gerênciamento de Layout BoderLayout, FlowLayout,... Departamento de Ciências Exatas Universidade

Leia mais

Interfaces Gráficas POO. Prof. Márcio Delamaro

Interfaces Gráficas POO. Prof. Márcio Delamaro Interfaces Gráficas POO Prof. Márcio Delamaro Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 1/83 GUI Interface Gráfica do Usuário Em Java usamos o pacote Swing javax.swing Possui um conjunto

Leia mais

Tratamento de Exceções

Tratamento de Exceções Fundamentos de Programação Tratamento de Exceções Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br O que é??? É um evento que interrompe o fluxo normal de

Leia mais

Aula 3. Objetivos Sequências de escapes ; Um aplicativo que adiciona inteiro; Aritmética.

Aula 3. Objetivos Sequências de escapes ; Um aplicativo que adiciona inteiro; Aritmética. Objetivos Sequências de escapes ; Um aplicativo que adiciona inteiro; Aritmética. Sequências de escape \n Nova linha. Posiciona o cursor de tela no início da próxima linha. \t Tabulação horizontal. Move

Leia mais

1) De acordo com o trecho de código escrito na linguagem JAVA, responda a questão abaixo:

1) De acordo com o trecho de código escrito na linguagem JAVA, responda a questão abaixo: 1) De acordo com o trecho de código escrito na linguagem JAVA, responda a questão abaixo: boolean[][] bool = new boolean[5][5]; for(int v = 0; v < bool.length; v++) { for(int f = 0; f < bool[v].length;

Leia mais

Tratamento de Exceções. Grupo de Linguagens de Programação Departamento de Informática PUC-Rio

Tratamento de Exceções. Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Tratamento de Exceções Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Terminologia Definições: Exceção é a ocorrência de uma condição anormal durante a execução de um método Falha

Leia mais

Elaborando as Interfaces dos trabalhos das aulas 25, 26 e 27.

Elaborando as Interfaces dos trabalhos das aulas 25, 26 e 27. Elaborando as Interfaces dos trabalhos das aulas 25, 26 e 27. Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 25, 26 e 27. 1 Na aula da semana passada ficaram para

Leia mais

Programação Java. Tratamento de Exceções

Programação Java. Tratamento de Exceções Programação Java Tratamento de Exceções Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Motivações para Exceções Um método pode detectar uma falha mas não estar apto a resolver sua

Leia mais

Tratamento de Exceções

Tratamento de Exceções Tratamento de Exceções Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Introdução Exceções São eventos que

Leia mais

Roteiro. Introdução. Uma Introdução à Programação Orientada a Objetos e JAVA usando NetBeans. Objetos. Princípios da 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 Uma Introdução à Programação Orientada a Objetos e JAVA usando NetBeans Roteiro Introdução Conceitos de Oientação a Objetos A Linguagem Java NetBeans (www.netbeans.org) Fernando Vieira Paulovich paulovic@icmc.usp.br

Leia mais

Programação de Computadores II

Programação de Computadores II Programação de Computadores II TCC- 00.174 Profs.: Leandro A. F. Fernandes (A1) & Marcos Lage (B1) & Isabel RosseJ (C1) (Turma A1) www.ic.uff.br/~laffernandes (Turma B1) www.ic.uff.br/~mlage (Turma C1)

Leia mais

Exceções. Criando suas exceções

Exceções. Criando suas exceções Exceções Criando suas exceções Tratamento de Exceções O tratamento de exceções em Java permite o gerenciamento de erros em tempo de execução. Uma exceção em Java é um objeto que descreve uma condição de

Leia mais

Programação Orientada a Objetos SANTOS, Rafael (PLT)

Programação Orientada a Objetos SANTOS, Rafael (PLT) Programação Orientada a Objetos SANTOS, Rafael (PLT) Possibilita atribuições em sequência na mesma instrução Retorna o valor atribuído Atribuições compostas: incluem a própria variável: +=, *=, -=, etc

Leia mais

Aula 2 Eventos do Mouse by Pearson Education do Brasil

Aula 2 Eventos do Mouse by Pearson Education do Brasil 1 11 Aula 2 Eventos do Mouse 11.13 Tratamento de evento de mouse 2 Eventos de mouse: Cria um objeto MouseEvent. Tratado por MouseListeners e MouseMotionListeners. MouseInputListener combina as duas interfaces.

Leia mais

Adding User Interaction

Adding User Interaction Adding User Interaction if62c - Fundamentos de Programação 1/2014 professores Danillo Leal Belmonte (belmonte@utfpr.edu.br) e Robinson Vida Noronha (vida@utfpr.edu.br) 1 Estratégias Adicionar ações isoladas

Leia mais

Tratamento de Exceções

Tratamento de Exceções Tratamento de Exceções Carlos Bazilio Isabel Rosseti Depto de Ciência e Tecnologia Pólo Universitário de Rio das Ostras Universidade Federal Fluminense Motivação prever na implementação do sistema situações

Leia mais

Template de classe. class vetor { int *arranjo; int limite; public: vetor(int=100); int & operator[ ](int n); };

Template de classe. class vetor { int *arranjo; int limite; public: vetor(int=100); int & operator[ ](int n); }; Template de classe! Idéia é semelhante ao template de função! Usando a classe vetor que foi desenvolvida anteriormente: class vetor { int *arranjo; int limite; public: vetor(int=100); int & operator[ ](int

Leia mais

Processo Básico: OO + Eventos. Java First-Tier: Aplicações. Construção de Interface gráfica. Exemplo. Exemplo. Exemplo. Hierarquia de Composição

Processo Básico: OO + Eventos. Java First-Tier: Aplicações. Construção de Interface gráfica. Exemplo. Exemplo. Exemplo. Hierarquia de Composição Java First-Tier: Aplicações Construção de Interface gráfica Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Processo Básico: OO + Eventos Instanciar os componentes de interface por

Leia mais

8. Interfaces Gráficas de Usuário

8. Interfaces Gráficas de Usuário Vamos discutir como construir aplicações com interface gráfica de usuário (conhecida como GUI - Graphical User Interface). Numa interface gráfica existem botões, caixas de texto, painéis, barras de rolagem,

Leia mais

22/9/16. Agenda. Erros. Erros. Exceções. Mecanismo de exceções

22/9/16. Agenda. Erros. Erros. Exceções. Mecanismo de exceções Agenda Desenvolvimento OO com Java Exceções Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza Apresentar o mecanismo de tratamento de exceções de Java; Explicar os diferentes

Leia mais

Singleton. Como a maioria dos programadores organizaria o código para acessar informação de configuração? Eis um exemplo:

Singleton. Como a maioria dos programadores organizaria o código para acessar informação de configuração? Eis um exemplo: Introdução Como a maioria dos programadores organizaria o código para acessar informação de configuração? Eis um exemplo: public class Config { public static final String DEFAULT_READ_COMMUNITY_NAME =

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS -INTERFACES GRÁFICAS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

PROGRAMAÇÃO ORIENTADA A OBJETOS -INTERFACES GRÁFICAS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br PROGRAMAÇÃO ORIENTADA A OBJETOS -INTERFACES GRÁFICAS Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO 2. Programação visual com a IDE Netbeans Projetos Tipos de projetos Desenvolvimento

Leia mais

Introdução à Tecnologia Java 02/2012. Java Aula 02 15/08/2012. Celso Olivete Júnior.

Introdução à Tecnologia Java 02/2012. Java Aula 02 15/08/2012. Celso Olivete Júnior. Java Aula 02 GUI - Interfaces gráficas 15/08/2012 Celso Olivete Júnior olivete@fct.unesp.br 1 Na aula passada Introdução Entrada e saída de dados System.out... Scanner JOptionPane Estruturas de controle

Leia mais

Interface Gráfica. LPG II Java Interface Gráfica AWT. Introdução. AWT - Abstract Window Toolkit

Interface Gráfica. LPG II Java Interface Gráfica AWT. Introdução. AWT - Abstract Window Toolkit Interface Gráfica LPG II Java Interface Gráfica AWT Introdução AWT Construção de uma Aplicação Gráfica A Classe Componente e sua Hierarquia Gerenciadores de Layout Modelo de Eventos Componentes Básicos

Leia mais

private void btapresentanomeactionperformed(java.awt.event.actionevent evt) {

private void btapresentanomeactionperformed(java.awt.event.actionevent evt) { Jorge Ferreira 1 NOTAS DE AULA JAVA 5 E NETBEANS 5 Seguindo as configurações iniciais do formulário, devemos definir o comportamento de apresentação da janela quando executarmos o programa. Para tanto,

Leia mais

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 9 Tratamento de Exceções Assertivas 1 Programa Capítulo 9 Tratamento

Leia mais

Recapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... }

Recapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... } Recapitulando Orientação a objetos: programas organizados em torno da definição de classes, instanciação de objetos e troca de mensagens. Declaração de variáveis de referencia: Circle c; Criação/instanciação

Leia mais

Introdução. Por que desenvolver ALGORITMO?

Introdução. Por que desenvolver ALGORITMO? Introdução Programa Computacional busca da necessidade de solução de um problema particular: a geração automática de documentos, o controle de um equipamento eletrodoméstico, a transmissão de informações

Leia mais

Linguagens de Programação Classificação

Linguagens de Programação Classificação Classificação Classificação A proximidade que a linguagem de programação tem com a humana determina sua classe (o nível): Linguagem de máquina (primeira geração) Linguagem assembly - de montagem (segunda

Leia mais

Componente JOptionPane Layout Null Tratamento de Eventos. Action Listener

Componente JOptionPane Layout Null Tratamento de Eventos. Action Listener Interface Gráfica Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Agenda Componente JOptionPane Layout Null Tratamento de Eventos Action Listener Componente JOptionPane javax.swing.joptionpane

Leia mais

Exercício 1 : As classes abaixo serão utilizadas neste exercício: public class Ponto { int x; int y; public Ponto(int x, int y){ this.

Exercício 1 : As classes abaixo serão utilizadas neste exercício: public class Ponto { int x; int y; public Ponto(int x, int y){ this. Exercício 1 : As classes abaixo serão utilizadas neste exercício: public class Ponto { int x; int y; public Ponto(int x, int y){ this.x = x; this.y = y; public String tostring(){ return "(" + x + "," +

Leia mais

Linguagem de Programação Visual

Linguagem de Programação Visual Linguagem de Programação Visual Unidade 4 - Introdução à API Swing - JOptionPane Curso Técnico em Informática SUMÁRIO INTRODUÇÃO... 3 API SWING... 3 A CLASSE JOPTIONPANE... 3 PRINCIPAIS MÉTODOS DA CLASSE

Leia mais

9 Classes Abstractas e Interfaces

9 Classes Abstractas e Interfaces 9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract

Leia mais

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Andrew Diniz da Costa andrew@les.inf.puc-rio.br Programa Capítulo 9 Tratamento de Exceções Assertivas Programa Capítulo

Leia mais

Fundamentos de Programação 1

Fundamentos de Programação 1 Fundamentos de Programação 1 Slides N. 2 D / Prof. SIMÃO Slides elaborados pelo Prof. Robson Linhares elaborados pelo Prof. Robson Linhares http://www.dainf.ct.utfpr.edu.br/~robson/ Jean Marcelo SIMÃO

Leia mais

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

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS Data final de entrega 16/09/2014, até às 23h59min Enviar o arquivo de respostas em formato PDF e o arquivozip com códigos fontes para o e-mail motafernandomaia@gmailcom, insira no assunto do e-mail [Lista

Leia mais

Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação

Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação LP: Laboratório de Programação Apontamento 14 Prof. ISVega Maio de 2004 Mecanismo de Exceções em Java CONTEÚDO 14.1Erros,

Leia mais

Módulo 1. Introdução. Programação Orientada a Objetos I Java (Rone Ilídio)

Módulo 1. Introdução. Programação Orientada a Objetos I Java (Rone Ilídio) Módulo 1 Introdução Programação Orientada a Objetos I Java (Rone Ilídio) Dados Importantes E-mail: rone@ufsj.edu.br Página: www.ronepage.com Deitel, H. M., Deitel, T. J., Java, editora Bookman, 6ª edição

Leia mais

Programação Orientada por Objectos 2007/2008

Programação Orientada por Objectos 2007/2008 Programação Orientada por Objectos 2007/2008 Segundo Teste, 30/6/2008, Duração 1h30 (20 valores) 1 [2v] Considere que pretende desenvolver uma função num jogo que trata uma colisão entre dois objectos

Leia mais