Processando dados com

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

Download "Processando dados com"

Transcrição

1 hadoop_ Processando dados com Hadoop é um sistema de persistência e proces- distribuído, escrito em Java e desenvol- samento É, portanto, um projeto de código aberto e de livre distribuição. Seu desenvolvimento foi idealizado e liderado por Doug Cutting, inspirado em um modelo - em uma abordagem de processamento distribuído genheiros do Google e publicado em um paper de - Twitter, que têm o Hadoop como peça crítica de sua - mais algumas ferramentas adicionais que facilitam - ção de clusters a componentes para integração com NoSQL sobre o Hadoop e até mesmo ferramentas de - Linux funcione com a sua plataforma de computação em Projetado para ser instalado em servidores cor- HDFS e o MapReduce de arquivos similar ao de um sistema operacional - tail, cat, rm, grep), onde os dados são armazenados ção entre eles. Detalhes relacionados ao gerenciamento de replicação de arquivos, divisão em blocos, / 38

2 André Luiz Forchesatto - Wellington Ramos Chevreuil Engenheiro de Computação, SCJP, SCJD, SCMAD, SCWCD, SCBCD, SCEA. Atualmente utilizando hadoop e mapreduce em projetos A popularização do uso de serviços de internet ocorrida ao longo da última década, alinhada com a evolução da capacidade de armazenamento de dados no mundo corporativo, propiciou a ascensão de empresas que enfatizaram a importância da análise de dados - - ter a qualidade da análise dos dados de uma carga crescente de - - apresentaremos neste artigo os conceitos básicos por trás de sua simulação de um cluster Hadoop em um ambiente de desenvolvi- Hadoop. toda a cargo do Hadoop, aliviando o desenvolvedor processamento distribuído dos algoritmos desenvolvidos. Para tanto, esses algoritmos devem seguir a abordagem MapReduce apresentada pelo Google, e op, o mesmo tem que implementar ou estender algu- doop, provendo uma espécie de framework java para de ser escrito em Java, o Hadoop também permite dos. Essa alternativa é chamada streamjob). - uma versão do Hadoop em modo pseudodistribuído 39 \

3 - Conceitos básicos - - essas características através de redundância e otimização do uso de recursos, e o gerenciamento dos diversos nós do cluster é feito de forma a tornar os mesmos o menos dependente possível uns dos outros. Em - rodando no nó falho), e clientes que estejam usan- do Hadoop é a capacidade de redimensionamento do cluster sem necessidade de reinicialização de sistema, ou seja, nós podem ser adicionados/removidos do cluster sem nenhuma parada de sistema. Um cluster Hadoop em funcionamento consiste cutando como Daemons, cada qual com uma respon- - - vidades). No caso da persistência, o sistema composto pelo nado namenode, e mantém um registro de onde os arquivos estão armazenados nos nós escravos. Um serão replicados nos diferentes nós do cluster. Essa escravos do HDFS são chamados de datanode, e sem- - HDFS é estratégica para o processamento paralelo. Logo, para que haja realmente ganho no paralelismo, os arquivos a serem salvos no HDFS devem ser gran- blocos, os quais, então, poderão ser consumidos ao mesmo tempo. também segue a abordagem de mestre e escravos. No caso do mestre, o daemon é chamado de jobtracker, processamento, escalonando as tarefas entre os nós tasktrackers Cliente Cluster Hadoop Namemode JobTracker DataNode DataNode DataNode TaskTracker TaskTracker TaskTracker Figura 1. Componentes de um Cluster Hadoop. / 40

4 mesmo nó do cluster), porém eles rodam em uma tasktracker estão juntos, nem dois datanodes estão juntos também). Distribuídos dessa maneira, uma subtarefa de um programa mapreduce processando dados do HDFS - -blocos de dados sendo analisados por essa tarefa es- quina do tasktracker, evitando o consumo de rede. Na e seus relacionamentos. Hadoop na prática - contendo apenas artefatos do próprio Hadoop. No poníveis para download podem ser encontradas no seguinte link: releases.html#download Instalação e funcionamento possam rodar o Hadoop. che, descompacte o mesmo para uma pasta qualquer vel JAVA_HOME no arquivo hadoop-env.sh, disponível no diretório conf HADO- OP_HOME). - - Listagem 1. <property> <name>fs.default.name</name> <value>hdfs://localhost:9000</value> </property> gurar o nível de replicação dos arquivos para apenas - hdfs-site. xml Listagem 2. bloco de arquivo inserido no cluster. <property> <name>dfs.replication</name> <value>1</value> </property> - -Reduce, conhecido como JobTracker. Essa proprie- dades, nesse caso, o mapred-site.xml Listagem 3. duce (JobTracker). <property> <name>mapred.job.tracker</name> <value>localhost:9001</value> </property> teja devidamente instalado. É importante ressaltar que o Hadoop não usa SSH para a comunicação interna dos seus componentes. feita via RPC SSH apenas padrão do cluster em modo pseudodistribuído, conectando os respectivos daemons. Como trabalhamos em uma 41 \

5 Listagem 4. $ sudo su - # ssh-keygen -t dsa -P -f ~/.ssh/id_dsa # cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys minal como root, deve-se formatar o sistema de ar- rio Hadoop administrativos. Um desses comandos é o format do sistema de arquivos limpo e pronto para usar. Figura 2. Interface Web do NameNode. Listagem 5. Formatando HDFS. <value>hdfs://localhost:9000</value> # HADOOP_HOME/bin/hadoop namenode -format instalação em modo pseudodistribuído, a inicializa- - do Hadoop. Figura 3. Listagem 6. Comando para iniciar o Hadoop. # HADOOP_HOME/bin/start-all.sh lizados corretamente, pode-se usar o comando jps, daemons namenode, secondarynamenode, datanode, jobtracker, tasktracker. para monitoramento do cluster, e uma vez inicializa- navegador de internet, através das seguintes URLs, JobTracker e do HDFS, respectivamente: faces web. cipal atribuição do Hadoop é o processamento de a partir de dezenas ou centenas de Gigabyets, Petabytes ou mesmo Terabytes de dados) disponível no - - veis entrevistados em diferentes pesquisas, gerando como resultado a média salarial por região, em cada da suposta entrevista, dados de idade, a residência e - - / 42

6 Listagem 7. Formato da base de dados-exemplo, usando # como separador de colunas. 1980#31#Sul#Santa Catarina#Xanxerê# #33#Sul#Santa Catarina#Xanxerê# #28#Sul#Santa Catarina#Xanxerê# #19#Sul#Santa Catarina#Xanxerê# #19#Sul#Santa Catarina#Xanxerê# #19#Sul#Santa Catarina#Xanxerê# #39#Suldeste#São Paulo#Campinas# Para visualizar o conteúdo do arquivo direto no de comando usando o comando cat, conforme Lis- Listagem 11. Comando de visualização de arquivo no HDFS. #HADOOP_HOME/bin/./hadoop dfs cat /mundoj/ censo/censo.data Uma vez que o arquivo de entrada foi criado, o mesmo deve ser enviado para o HDFS. Conforme feito para formatar o HDFS, qualquer interação via conso- Hadoop mato do comando sempre segue o seguinte padrão: Hadoop [tipo do comando] [comando] [possíveis parâmetros]. Para prepararmos a entrada dos dados dados do censo, bem como enviar o arquivo para o HDFS. Primeiramente, criaremos a estrutura de dire- dfs, que indica que iremos interagir com o HDFS, o mkdir / mundoj/censo, para criarmos essa estrutura de pas- Listagem 8. Comando de criação de diretórios no HDFS. #HADOOP_HOME/bin/./hadoop dfs mkdir /mundoj/ censo HDFS mostrada anteriormente, ou diretamente pela linha de comando usando o comando ls, conforme Listagem 9. Comando de listagem de arquivos e diretórios no HDFS. #HADOOP_HOME/bin/./hadoop dfs ls / Com a estrutura de diretórios criada, agora basta enviar o arquivo com os dados do censo, conforme put Listagem 10. Comando para envio de arquivos ao HDFS. #HADOOP_HOME/bin/./hadoop dfs put /home/user/ Documents/censo.data /mundoj/censo Figura 4. Terminal bash com exemplo de comando do Hadoop. Implementando um MapReduce classes que facilitam a implementação de processos que consumam dados do HDFS. Para a implementa- ponibiliza a classe Mapper níveis no HDFS) em linhas no formato de chave/valor. Cada linha de um arquivo de entrada representa um registro para o Map. Na versão atual, chaves são geradas automaticamente pelo hadoop como objetos quivo. É possível mudar esse formato usando a classe gistro seja formada por elementos da própria linha do arquivo, onde todos os caracteres que estiverem parâmetros do método map da classe Mapper, onde deve ser implementada a lógica de processamento Hadoop permite que esse comportamento seja con- provê a classe Reducer, cujo método reduce deve ser usado para se implementar a lógica de combinar os resultados dos processamentos gerados pelos dife- sultado do processo em si, e é gerado um arquivo de saída no HDFS contendo esses dados processados. CensoMapper 43 \

7 - - representam os tipos dos dados de entrada e os dois método map(text key, Text value, Context con- text) - map possui três parâmetros: key, va- resultado do processamento de cada linha. como uma interação de um loop de leitura dos arquivos de entrada. Dessa forma, cada linha lida de arquivo de entrada é processada em uma chamada do map. da do método map o algoritmo interpreta uma linha - recebido como parâmetro value. Como o objetivo do MapReduce é calcular a média salarial de cada região mesmo ano e região devem ser agrupados em uma mesma estrutura para se obter a média posterior- - - lue é então convertida em String e associada à vari- junto de elementos String armazenados em um array nomeando valores, usando o método split da própria gião e concatena-se a mesma com o ano para formar a chave de saída do mapper, e salvamos essa chave Listagem 12. Classe CensoMapper para dados censo. public class CensoMapper extends Mapper <Text, Text, Text, public void map(text key, Text value, Context context) throws IOException, InterruptedException { // a linha é formada por todos os caracters apos o // separador da chave, // neste exemplo: chave=>1980, valor=> // 31#Sul#Santa Catarina#Xanxere# String linha = value.tostring(); String[] valores = linha.split( # ); Text chavesaidamapper = new Text(); // monta a chave resultante como [ano]-[região] ex: // 1980-Sul chavesaidamapper.set(key.tostring() valores[1]); //grava um valor de salário para essa chave context.write(new Text(chaveSaidaMapper), new DoubleWritable(new Double(valores[4]))); CensoReducer recebe o resultado do mapper - dia é implementado de forma simples no método reduce(text key, Iterable<DoubleWritable> values, Context context), onde a chave de saída do mapper estão disponíveis no parâmetro values. Com esses da- values - presente na coleção values. Listagem 13. Classe CensoReducer para dados censo. public class CensoReducer extends Reducer <Text, Text, Text, Text> { public void reduce(text key, Iterable<Text> values, Context context) throws IOException, InterruptedException{ double soma = 0, total=0; for(text salario: values){ soma+=salario.get(); total++; if(soma > 0 && total>0){ double media = soma/total; context.write(key, new DoubleWritable(media)); do pelo Hadoop. Essa classe é comumente denominada Driver, e é ela que deve ser informada no coman- o framework do Hadoop, um Driver deve estender a / 44

8 classe e implementar a interface Tool, - início do programa. CensoDriver main cução, o qual delega o processamento para o método run- Tool. Esse método mação dos caminhos de entrada e saída dos arquivos no HDFS. Listagem 14. Driver de execução do MapReduce. public class CensoDriver extends implements Tool public int run(string[] args) throws Exception { if (args == null args.length < 2) { System.err.println( Modo de uso: CensoDriver <input-path> + <output-path> ); return -1; getconf(); conf.set( key.value.separator.in.input.line, # );

9 Job job = new Job(conf); job. (CensoDriver.class); job.setjobname( Censo ); job.setmapperclass(censomapper.class); job.setreducerclass(censoreducer.class); job. (Text.class); job. (DoubleWritable.class); job.setinputformatclass( KeyValueTextInputFormat.class); job. (TextOutputFormat.class); FileInputFormat.setInputPaths(job, new Path(args[0])); FileOutputFormat. (job, new Path(args[1])); boolean success = job.waitforcompletion(true); sendo passado como primeiro parâmetro o jar con- anteriormente). Como último parâmetro, o caminho do arquivo de saída contendo os resultados do Map- o arquivo de saída como parâmetro, ou navegar pela alth.jsp, mostrado anteriormente. return (success? 0 : 1); public static void main(string[] args){ { int ret = ToolRunner.run(new CensoDriver(), args); System.exit(ret); catch (Exception ex) { ex.printstacktrace(); criar um arquivo jar contendo a classe Mapper, a clas- anteriormente para interação com o HDFS), mostra- Listagem 15. Executando o primeiro programa. #HADOOP_HOME/bin/./hadoop jar /home/user/ mundoj-censo-mr.jar mundoj.censo.mr.censodriver / mundoj/censo/censo.data /mundoj/output/output-01 Figura 5. / 46

10 cientes para que o leitor possa instalar um cluster Hadoop em modo pseudodistribuído, interagir com o Java do Hadoop para escrever seus primeiros programas MapReduce. Porém, muitos detalhes arquiteturais do Hadoop importantes para o planejamento e instalação de um cluster realmente distribuído não abordagem pode ser aplicada como solução, e mos- deste artigo introdutório, ferramentas úteis para integração do Hadoop com outros sistemas, bem como toramento de clusters Hadoop foram apenas citados na introdução deste artigo. É evidente, portanto, que rem cobertos por artigos futuros. /referências > > com/ > > > > > >

MapReduce. Capítulo 2. Renato Gomes Borges Júnior

MapReduce. Capítulo 2. Renato Gomes Borges Júnior MapReduce Capítulo 2 Renato Gomes Borges Júnior Sumário Introdução Exemplo: um conjunto de dados climáticos Analisando os dados Map and Reduce Java MapReduce Fluxo de dados Executando MapReduce distribuído

Leia mais

Apache Hadoop É hoje que vai instalar o seu primeiro cluster?

Apache Hadoop É hoje que vai instalar o seu primeiro cluster? Apache Hadoop É hoje que vai instalar o seu primeiro cluster? Date : 16 de Março de 2016 Como processar grandes quantidades de dados de forma rápida e a baixo custo? A resposta é Hadoop! Esta framework

Leia mais

Funcionamento e Recursos

Funcionamento e Recursos hadoop_ MapReduce Detalhado MapReduce Detalhado Funcionamento e Recursos Na edição anterior da MundoJ, foi apresentado um artigo introdutório sobre o Hadoop, explicando de forma básica os seus principais

Leia mais

PrIntCloud. Disciplina: Procedência de Dados e Data Warehousing. Aluna: Shermila Guerra Santa Cruz. 16/04/13

PrIntCloud. Disciplina: Procedência de Dados e Data Warehousing. Aluna: Shermila Guerra Santa Cruz. 16/04/13 PrIntCloud Disciplina: Procedência de Dados e Data Warehousing. Aluna: Shermila Guerra Santa Cruz. 16/04/13 Roteiro 1. Fundamentação Teórica A.- Cloud Computing B.- Hadoop C.- MapReduce D.- NoSql 2. Proposta

Leia mais

Programação em Sistemas Distribuídos MEI-MI-MSI 2015/16. MapReduce: Hadoop. Prof. António Casimiro. MapReduce

Programação em Sistemas Distribuídos MEI-MI-MSI 2015/16. MapReduce: Hadoop. Prof. António Casimiro. MapReduce Programação em Sistemas Distribuídos MEI-MI-MSI 2015/16 MapReduce: Hadoop Prof. António Casimiro MapReduce MapReduce.2 Tópicos Analise e Armazenamento de Grandes Quantidades de Dados Google pioneira Processamento:

Leia mais

QUESTIONÁRIO SOBRE HADOOP LEITURA DO MATERIAL FORNECIDO ALUNO/GRUPO ;

QUESTIONÁRIO SOBRE HADOOP LEITURA DO MATERIAL FORNECIDO ALUNO/GRUPO ; QUESTIONÁRIO SOBRE HADOOP LEITURA DO MATERIAL FORNECIDO ALUNO/GRUPO ; LEIA O MATERIAL ANTES DE FAZER O EXEMPLO DIDÁTICO. AS QUESTÕES ABAIXO PODEM SER RESPONDIDAS, USANDO, PREFERENCIALMENTE, SUA PRÓPRIAS

Leia mais

Bruno Antunes da Silva UFSCar - Sorocaba

Bruno Antunes da Silva UFSCar - Sorocaba Bruno Antunes da Silva UFSCar - Sorocaba Introdução HDFS Arquitetura Leitura e escrita Distribuição de nós Controle de réplicas Balancer MapReduce Conclusão Aplicações web com grandes quantidades de dados

Leia mais

Tutorial Hadoop - HBase

Tutorial Hadoop - HBase Tutorial Hadoop - HBase O que é o Hadoop? O Hadoop é uma plataforma utilizada para realização de projetos distribuídos, que tratam de grandes quantidades de dados. É uma plataforma voltada para cluster

Leia mais

Aprenda a criar um "supercomputador" com vários Raspberry PI

Aprenda a criar um supercomputador com vários Raspberry PI Aprenda a criar um "supercomputador" com vários Raspberry PI Date : 6 de Abril de 2016 O Apache Hadoop é uma Framework/Plataforma desenvolvida em Java, para computação distribuída, usada para processamento

Leia mais

PLATAFORMA SIGA RIO DAS VELHAS MANUAL DO CÓDIGO FONTE

PLATAFORMA SIGA RIO DAS VELHAS MANUAL DO CÓDIGO FONTE PLATAFORMA SIGA RIO DAS VELHAS MANUAL DO CÓDIGO FONTE ATO CONVOCATÓRIO Nº 006/2016 CONTRATO DE GESTÃO IGAM Nº 002/IGAM/2012 09/2017 1 PLATAFORMA SIGA RIO DAS VELHAS MANUAL DO CÓDIGO FONTE ATO CONVOCATÓRIO

Leia mais

Estes passos foram testados no Linux Ubuntu (parece que a versão não importa)

Estes passos foram testados no Linux Ubuntu (parece que a versão não importa) Instalando o Hadoop Estes passos foram testados no Linux Ubuntu (parece que a versão não importa) Instalação da rede Todas as máquinas do cluster devem estar na mesma rede e serem mutuamente acessíveis.

Leia mais

Haddop, MapReduce e Spark

Haddop, MapReduce e Spark Haddop, MapReduce e Spark Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Conceitos Básicos 2. MapReduce 3. Spark 4. Transformações Básicas 5. Ações Básicas 1 Conceitos Básicos Hadoop

Leia mais

RESPOSTA: import java.util.arraylist; import java.util.list; class CarrinhoDeCompras2 { List<Produto> produtos;

RESPOSTA: import java.util.arraylist; import java.util.list; class CarrinhoDeCompras2 { List<Produto> produtos; Fundação CECIERJ - Vice Presidência de Educação Superior a Distância Curso de Tecnologia em Sistemas de Computação Disciplina: Programação Orientada a Objetos AP2 2 semestre de 2016. Nome Assinatura Observações:

Leia mais

5 Modelo de Programação

5 Modelo de Programação 38 5 Modelo de Programação 5.1 Visão Geral O modelo de programação do McCloud foi inspirado no Map/Reduce, originalmente proposto em 2004 por Jeff Dean e Sanjay Ghemawat [16], para suportar o processamento

Leia mais

Agilizando o processo de redeploy de aplicações Java

Agilizando o processo de redeploy de aplicações Java classghost_ ClassGhost Agilizando o processo de redeploy de aplicações Java Conheça a funcionalidade deste framework que contribui para a agilidade e produtividade no processo processo de redeploy de aplicações

Leia mais

Threads. O que é uma Thread? Paralelismo

Threads. O que é uma Thread? Paralelismo Threads em Java 1 O que é uma Thread? Paralelismo Threads Multi- threading é o mecanismo de concorrência suportado explicitamente pela linguagem Java. Os mecanismos de gerenciamento e sincronização de

Leia mais

Informática Parte 10 Prof. Márcio Hunecke

Informática Parte 10 Prof. Márcio Hunecke Escriturário Informática Parte 10 Prof. Márcio Hunecke Informática CONCEITOS DE MAPREDUCE E HDFS/HADOOP/YARN 2.7.4 Big Data O termo Big Data refere-se a um grande conjunto de dados armazenados e baseia-se

Leia mais

Algoritmos de Junção Estrela em MapReduce

Algoritmos de Junção Estrela em MapReduce Algoritmos de Junção Estrela em MapReduce Jaqueline Joice Brito 09 de junho de 2015 1 Modelo Relacional Dados armazenados em um conjunto de tabelas Amplamente utilizado Junção Recuperação de dados de duas

Leia mais

Passo-a-passo para desenvolver um Programa usando a Linguagem Python

Passo-a-passo para desenvolver um Programa usando a Linguagem Python Cursos: Engenharia de Produção / Tecnólogo em Gestão da Qualidade Disciplina: Informática Professora: Flávia Pereira de Carvalho Passo-a-passo para desenvolver um Programa usando a Linguagem Python 1)

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Aula 1 REST em Java JAX-RS (Jersey) Material de suporte às aulas de Sistemas Distribuídos Copyright DI FCT/ UNL / 1 REST : REPRESENTATIONAL STATE TRANSFER Padrão arquitetural para

Leia mais

Vamos transformar os seus Raspberry PI num cluster (Parte 2)

Vamos transformar os seus Raspberry PI num cluster (Parte 2) Vamos transformar os seus Raspberry PI num cluster (Parte 2) Date : 31 de Março de 2016 O Apache Hadoop é uma Framework/Plataforma desenvolvida em Java, para computação distribuída, usada para processamento

Leia mais

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

Objetivos. Responder o que é Java; Mostrar as vantagens e desvantagens do Java; Compilar e executar um programa simples. O que é Java Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/ 1 Objetivos Responder o

Leia mais

Linguagem de Programação II Implementação

Linguagem de Programação II Implementação Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Implementação em Java Variáveis Palavras reservadas Pacotes Identificador this Acessando membros de outros objetos API Java Nossa

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos RPC Remote Procedure Call 1 Fonte: Alcides Calsavara e Thais V. Batista Chamada de Procedimentos Remotos (RPC) Motivação: comunicação baseada em operações de entrada/saída Ideal:

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Threads em Java Paulo Ricardo Lisboa de Almeida 1 Temos várias interfaces e classes que podem facilitar nossa vida Runnable Callable Thread... 2 Para a aula de sistemas operacionais,

Leia mais

Informática Parte 11 Prof. Márcio Hunecke

Informática Parte 11 Prof. Márcio Hunecke Escriturário Informática Parte 11 Prof. Márcio Hunecke Informática FERRAMENTAS DE INGESTÃO DE DADOS (SQOOP 1.4.6, FLUME 1.7.0, NIFI 1.3.0 E KAFKA 0.11.0) Visão geral sobre os quatro componentes Fazem

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

Apache. Conceitos teóricos e práticos, evolução e novas possibilidades

Apache. Conceitos teóricos e práticos, evolução e novas possibilidades Apache Conceitos teóricos e práticos, Prof. Dr. Alfredo Goldman Prof. MS. Ivanilton Polato By Alfredo Goldman, Fabio Kon, Francisco Pereira Junior, Ivanilton Polato e Rosângela de Fátima Pereira. These

Leia mais

CETEC Centro Paula Souza

CETEC Centro Paula Souza Atualização da Competição Maratona de Programação 2018 2º Semestre Finalidade Este documento tem por finalidade informar aos professores responsáveis pelos times das unidades participantes da Maratona

Leia mais

Tratamento de Exceções em Java

Tratamento de Exceções em Java Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Tratamento de Exceções em Java Professor: César Melo Slides baseados em materiais preparados pela Profa.

Leia mais

Desenvolvimento de Software no Contexto Big Data

Desenvolvimento de Software no Contexto Big Data Universidade de Brasília - UnB Faculdade UnB Gama - FGA Engenharia de Software Desenvolvimento de Software no Contexto Big Data Autor: Guilherme de Lima Bernardes Orientador: Prof. Dr. Fernando William

Leia mais

UNIDADE V UM EXEMPLO DIDÁTICO DE APLICAÇÃO HADOOP

UNIDADE V UM EXEMPLO DIDÁTICO DE APLICAÇÃO HADOOP INE5645 PROGRAMAÇÃO PARALELA E DISTRIBUÍDA UNIDADE V UM EXEMPLO DIDÁTICO DE APLICAÇÃO HADOOP 3.1 INTRODUÇÃO O grande avanço na última década, do aumento na quantidade e complexidade dos serviços oferecidos

Leia mais

Android e Bancos de Dados

Android e Bancos de Dados (Usando o SQLite) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do

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

BUSINESS INTELLIGENCE E DATA WAREHOUSE. Big Data Conceitos, Técnicas, Ferramentas e Arquitetura. tutorpro.com.br cetax.com.br

BUSINESS INTELLIGENCE E DATA WAREHOUSE. Big Data Conceitos, Técnicas, Ferramentas e Arquitetura. tutorpro.com.br cetax.com.br BUSINESS INTELLIGENCE E DATA WAREHOUSE Big Data Conceitos, Técnicas, Ferramentas e Arquitetura tutorpro.com.br cetax.com.br Quem somos 2 3 Objetivos do Curso de Big Data 4 Alinhamento das expectativas

Leia mais

IO.println(a+" * "+b+" = "+produto); } }

IO.println(a+ * +b+ = +produto); } } Departamento de Ciência da Computação Universidade de Brasília Computação Básica. Professor Jorge H. C. Fernandes Lista de Exercícios Programação Básica em Java Resolva os exercícios abaixo usando a Linguagem

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

Simulado de Linguagem de Programação Java

Simulado de Linguagem de Programação Java Simulado de Linguagem de Programação Java 1. Descreva o processo de criação de programas em Java, desde a criação do código-fonte até a obtenção do resultado esperado, por meio de sua execução. Cite as

Leia mais

Desenvolvendo aplicações Java

Desenvolvendo aplicações Java José Roberto Madureira Junior Adaní Cusin Sacilotti Adriana Rodrigues Reginaldo Sacilotti Desenvolvendo aplicações Java Primeira Edição São Paulo 2017 Sumário 1 INTRODUÇÃO AO JAVA... 1 1.1 A PLATAFORMA

Leia mais

Benjamin Bengfort Jenny Kim

Benjamin Bengfort Jenny Kim Benjamin Bengfort Jenny Kim Novatec Authorized Portuguese translation of the English edition of Data Analytics with Hadoop, ISBN 9781491913703 2016 Benjamin Bengfort, Jenny Kim. This translation is published

Leia mais

JUnit. Alexandre Menezes Silva Eduardo Manuel de Freitas Jorge

JUnit. Alexandre Menezes Silva Eduardo Manuel de Freitas Jorge JUnit Alexandre Menezes Silva alexandre_crvg@hotmail.com Eduardo Manuel de Freitas Jorge emjorge1974@gmail.com 0 Sumário O que é?... 2 Pra que serve?... 2 Arquitetura... 2 Método de comparação assertequals...

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

Organizando seus Testes Funcionais AUMENTANDO A MANUTENIBILIDADE DE TESTES FUNCIONAIS ATRAVÉS DA ORIENTAÇÃO A OBJETOS.

Organizando seus Testes Funcionais AUMENTANDO A MANUTENIBILIDADE DE TESTES FUNCIONAIS ATRAVÉS DA ORIENTAÇÃO A OBJETOS. page objects_ PAGE OBJECTS Organizando seus Testes Funcionais AUMENTANDO A MANUTENIBILIDADE DE TESTES FUNCIONAIS ATRAVÉS DA ORIENTAÇÃO A OBJETOS. Testes são parte fundamental do processo de desenvolvimento

Leia mais

LÓGICA DE PROGRAMAÇÃO (JAVA) VARIÁVEIS. Professor Carlos Muniz

LÓGICA DE PROGRAMAÇÃO (JAVA) VARIÁVEIS. Professor Carlos Muniz LÓGICA DE PROGRAMAÇÃO (JAVA) String String é uma classe contida no pacote java.lang e que descende da classe java.lang.object. De forma conceitual podemos dizer que é uma sequência de caracteres usada

Leia mais

JAVA. Professor: Bruno Toledo

JAVA. Professor: Bruno Toledo JAVA Professor: Bruno Toledo Funcionamento de uma LP Em uma Linguagem de Programação (LP) como C e Pascal, temos o seguinte quadro quando vamos compilar um programa. Código fonte em c Teste.c Gera código

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

Preparação do ambiente para desenvolvimento em Java

Preparação do ambiente para desenvolvimento em Java Buscar comentários post favorito (1) Preparação do ambiente para desenvolvimento em Java Veja neste artigo a preparação do ambiente para desenvolvimento de aplicações com a linguagem Java, vendo desde

Leia mais

Tipos, Literais, Operadores

Tipos, Literais, Operadores Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não

Leia mais

Tipos, Literais, Operadores

Tipos, Literais, Operadores Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não

Leia mais

Tratamento de Exceções, Multithreads e arquivos (em Java) Programação Orientada a Objetos

Tratamento de Exceções, Multithreads e arquivos (em Java) Programação Orientada a Objetos Tratamento de Exceções, Multithreads e arquivos (em Java) Programação Orientada a Objetos Nesta unidade vamos ver os últimos assuntos de interesse em java. O primeiro deles, bem simples, é o tratamento

Leia mais

Prof. A. G. Silva. 13 de novembro de Prof. A. G. Silva INE5603 Introdução à POO 13 de novembro de / 1

Prof. A. G. Silva. 13 de novembro de Prof. A. G. Silva INE5603 Introdução à POO 13 de novembro de / 1 INE5603 Introdução à POO Prof. A. G. Silva 13 de novembro de 2017 Prof. A. G. Silva INE5603 Introdução à POO 13 de novembro de 2017 1 / 1 Introdução à manipulação de arquivos Prof. A. G. Silva INE5603

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

Apostila - Desenvolvimento web com PHP

Apostila - Desenvolvimento web com PHP José Roberto Madureira Junior Adaní Cusin Sacilotti Reginaldo Sacilotti Apostila - Desenvolvimento web com PHP Primeira Edição São Paulo 2017 Sumário 1 INTRODUÇÃO AO PHP... 1 1.1 PREPARAÇÃO DO AMBIENTE

Leia mais

ach 2147 desenvolvimento de sistemas de informação distribuídos

ach 2147 desenvolvimento de sistemas de informação distribuídos ach 2147 desenvolvimento de sistemas de informação distribuídos mapreduce Daniel Cordeiro 30 de maio e 1º de junho de 2017 Escola de Artes, Ciências e Humanidades EACH USP definição do inst. nacional de

Leia mais

Processamento de INDUSTRIA 4.0. Big Data. Aula #10 - Processamento distribuído de dados FONTE: DELIRIUM CAFE EDUARDO CUNHA DE ALMEIDA

Processamento de INDUSTRIA 4.0. Big Data. Aula #10 - Processamento distribuído de dados FONTE: DELIRIUM CAFE EDUARDO CUNHA DE ALMEIDA INDUSTIA 4.0 Processamento de Big Data FONTE: DELIIU CAFE Aula #10 - Processamento distribuído de dados EDUADO CUNHA DE ALEIDA Agenda - Divisão do problema - apeduce - Hadoop - SQL-on-Hadoop: Hive 2 Divisão

Leia mais

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

p Pacotes, a grosso modo, são apenas pastas ou diretórios do sistema operacional onde ficam armazenados os arquivos fonte de Java. Pacotes e Jar 1 Pacotes p Usamos pacotes em java para organizar as classes semelhantes. p Pacotes, a grosso modo, são apenas pastas ou diretórios do sistema operacional onde ficam armazenados os arquivos

Leia mais

Usando o Eclipse - Fundamentos. Professor Vicente Paulo de Camargo

Usando o Eclipse - Fundamentos. Professor Vicente Paulo de Camargo Usando o Eclipse - Fundamentos Professor Vicente Paulo de Camargo O Eclipse é um ambiente de desenvolvimento integrado (IDE) É a ferramenta mais utilizada pelas empresas, visto que pode ser configurada

Leia mais

Big Data Open Source com Hadoop

Big Data Open Source com Hadoop Big Data Open Source com Hadoop Palestrante: Marcio Junior Vieira marcio@ambientelivre.com.br Realização: Marcio Junior Vieira 14 anos de experiência em informática, vivência em desenvolvimento e análise

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

Interfaces e Classes Internas

Interfaces e Classes Internas e Classes Internas SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade

Leia mais

NoSQL como suporte à análise de dados nãonormalizados. volume

NoSQL como suporte à análise de dados nãonormalizados. volume NoSQL como suporte à análise de dados nãonormalizados e de grande volume Joel Alexandre Orientador: Professor Luís Cavique Motivação Grande quantidade de registos Tudo é registado Internet of things tudo

Leia mais

MapReduce Mapeando e reduzindo

MapReduce Mapeando e reduzindo MapReduce Mapeando e reduzindo Prof. Fabrício Olivetti de França Universidade Federal do ABC Motivação Vimos até então que nosso maior problema é a quantidade de dados. O processamento não pode ser distribuído

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

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Tipos Parametrizados ou Genéricos Os tipos parametrizados ou genéricos são a solução para esse problema

Leia mais

Ubiratam Carvalho de Paula Junior Rafaelli de Carvalho Coutinho

Ubiratam Carvalho de Paula Junior Rafaelli de Carvalho Coutinho Universidade Federal Fluminense Pólo Universitário de Rio das Ostras Faculdade Federal de Rio das Ostras Bacharelado em Ciência da Computação Ubiratam Carvalho de Paula Junior Rafaelli de Carvalho Coutinho

Leia mais

Uma introdução ao Apache Hama

Uma introdução ao Apache Hama Uma introdução ao Apache Hama O modelo BSP nas nuvens Thiago Kenji Okada 1 1 Departamento de Ciências da Computação (DCC) Instituto de Matemática e Estatística (IME) Universidade de São Paulo (USP) MAC5742

Leia mais

Executa em qualquer plataforma que possua o Java (JDK) da Oracle

Executa em qualquer plataforma que possua o Java (JDK) da Oracle Recurso Benefícios Multiplataforma Executa em qualquer plataforma que possua o Java (JDK) da Oracle Utiliza base de dados Oracle, Microsoft SQL ou MySql Utiliza os principais bancos de dados de mercado

Leia mais

Manipulação de arquivos. João Paulo Q. dos Santos

Manipulação de arquivos. João Paulo Q. dos Santos Manipulação de arquivos João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Introdução Uma das principais facilidades em Java, comparando com outras linguagem de programação, é a facilidade na leitura e

Leia mais

Interfaces POO. Prof. Marcio Delamaro

Interfaces POO. Prof. Marcio Delamaro Interfaces POO Prof. Marcio Delamaro Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 1/41 O que é interface É um template de classe Outras classes podem seguir esse template Chamamos isso

Leia mais

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação Java Remote Method Invocation Java Remote Method Invocation () é um protocolo Java para comunicação entre processos Permite objetos Java invocar transparentemente métodos de outros objetos (que podem estar

Leia mais

Conexão do Banco de Dados localhost

Conexão do Banco de Dados localhost Conexão do Banco de Dados localhost Ligar Xampp e Instalar Workbench Observe que o MySQL direciona para a porta 3306, pois estamos trabalhando no computador local. É necessário ligar o MySQL no XAMPP.

Leia mais

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO Bacharelado em Sistemas de Informação. Processamento Paralelo Threads. Aluno: Wagner Palacio

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO Bacharelado em Sistemas de Informação. Processamento Paralelo Threads. Aluno: Wagner Palacio UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO Bacharelado em Sistemas de Informação Processamento Paralelo Threads Aluno: Wagner Palacio Turma: 3º período Professor: Giordano Cabral Recife, 29 de maio de 2012

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

Programação Concorrente com Thread Java. Luiz Affonso Guedes Sistemas Distribuidos

Programação Concorrente com Thread Java. Luiz Affonso Guedes Sistemas Distribuidos Programação Concorrente com Thread Java Luiz Affonso Guedes Sistemas Distribuidos Definições Básicas Threads são sub-procesos no sistema operacional. É menos custoso gerenciar threads do que processos.

Leia mais

Algoritmos I Aula 13 Linguagem de Programação Java

Algoritmos I Aula 13 Linguagem de Programação Java Algoritmos I Aula 13 Linguagem de Programação Java Professor: Max Pereira http://paginas.unisul.br/max.pereira Ciência da Computação IDE Eclipse IDE (Integrated development environment) Criar um projeto

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

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

Manual de Integração Prestashop TrayCheckout

Manual de Integração Prestashop TrayCheckout Manual de Integração Prestashop TrayCheckout Versão 1.0 CONTEÚDO 1. MÓDULO INTEGRAÇÃO PRESTASHOP E TRAYCHECKOUT... 1 1.1. Instalação do Método de pagamento TrayCheckout (com pacote )... 1 1.2. Configurar

Leia mais

Hadoop - HDFS. Universidade Federal de Goiás Ciência da Computação

Hadoop - HDFS. Universidade Federal de Goiás Ciência da Computação Hadoop - HDFS Universidade Federal de Goiás Ciência da Computação O que é Hadoop? Um framework para lidar com aplicações distribuídas que fazem uso massivo de dados Originalmente construído para a distribuição

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

Vetores Unimensionais

Vetores Unimensionais Vetores Unimensionais Objetivos Entender a importância e a necessidade do uso de Vetores Definição de Manipulação de Vetores Inserir elementos em um vetor (usando laços ou não) Acessar elementos de um

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

Vetores Unimensionais

Vetores Unimensionais Vetores Unimensionais Objetivos Entender a importância e a necessidade do uso de Vetores Definição de Manipulação de Vetores Inserir elementos em um vetor (usando laços ou não) Imprimir elementos de um

Leia mais

Agenda. Instalação e configuração. Processamento de comandos SQL com JDBC. Driver JDBC Criação da classe de conexão

Agenda. Instalação e configuração. Processamento de comandos SQL com JDBC. Driver JDBC Criação da classe de conexão Agenda Instalação e configuração Driver JDBC Criação da classe de conexão Processamento de comandos SQL com JDBC Gerenciamento de conexões Execução simples de consultas Tratamento de exceções Instalação

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

Fundamentos de programação

Fundamentos de programação Fundamentos de programação Métodos Modularização de código Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno O que é um método? Um método é um trecho de código identificado Possuem um

Leia mais

Desenvolvimento de Software no Contexto Big Data

Desenvolvimento de Software no Contexto Big Data Universidade de Brasília - UnB Faculdade UnB Gama - FGA Engenharia de Software Desenvolvimento de Software no Contexto Big Data Autor: Guilherme de Lima Bernardes Orientador: Prof. Dr. Fernando William

Leia mais

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

Instalação JDK. Joyce França. Professora de Ciência da Computação - IFNMG Instalação JDK Joyce França Professora de Ciência da Computação - IFNMG Máquina Virtual Java utiliza-se do conceito de máquina virtual, onde existe uma camada extra entre o sistema operacional e a aplicação,

Leia mais

RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em:

RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em: RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em: http://www.oxnar.com.br/aulas/java ATIVIDADE ELABORAR O PROGRAMA DE CÁLCULOS DE ÁREAS USANDO

Leia mais

Instrução de Trabalho: Instalar Client

Instrução de Trabalho: Instalar Client Instrução de Trabalho Instrução de Trabalho: Instalar Client 1. Objetivos Estabelecer procedimento para a atividade Instalar client. 2. Definições 3. Aplicação Aplicável á todos os envolvidos na Implantação

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

Fabiano Moreira.

Fabiano Moreira. Fabiano Moreira professor@fabianomoreira.com.br Um pouco de história Java 1.02 (250 classes, lenta) Java 1.1 (500 classes, um pouco mais rápida) Java 2, versões 1.2-1.4 (2300 classes, muito mais rápida)

Leia mais

Paradigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura

Paradigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura Java First-Tier: Aplicações Orientação a Objetos em Java (I) Paradigmas de Programação Programação Funcional Programação Procedural Programação Orientada por Objetos Grupo de Linguagens de Programação

Leia mais

APIs Java: Tratamento de exceções e Coleções

APIs Java: Tratamento de exceções e Coleções APIs Java: Tratamento de exceções e Coleções POO29004 Engenharia de Telecomunicações Prof. Emerson Ribeiro de Mello http://docente.ifsc.edu.br/mello/poo 16 DE ABRIL DE 2019 Tratamento de Exceções Um simples

Leia mais

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

Classes e Objetos. Prof. Fernando V. Paulovich  9 de agosto de 2010 Classes e Objetos SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade

Leia mais

TRATAMENTO DE EXCEÇÕES

TRATAMENTO DE EXCEÇÕES Uma exceção em Java é um sinal que alguma condição excepcional aconteceu; Algo de errado aconteceu! Exemplos: solicitação de abertura de um arquivo não encontrado; índice de um array fora de faixa; uma

Leia mais

Instalação JDK 10/03/2017

Instalação JDK 10/03/2017 1 Instalação JDK 10/03/2017 Máquina Virtual Java utiliza-se do conceito de máquina virtual, onde existe uma camada extra entre o sistema operacional e a aplicação, responsável por traduzir o que sua aplicação

Leia mais