Programação Distribuída em Java Aula 02. 2 Na aula passada vimos: Introdução –O que podemos fazer na rede Conceito de Rede –Máquinas conectadas Protocolos.

Slides:



Advertisements
Apresentações semelhantes
Python: Entrada e Saída
Advertisements

I/O Carlos Bazilio Depto de Ciência e Tecnologia
Sockets Marco Antonio – marcoreis.net Arquiteto de Software Dezembro/2007.
Entrada e Saída Marco Antonio Arquiteto de Software Dezembro/2007.
Comunicação entre processos distribuídos
Técnicas para operações E/S
Persistência de objetos em arquivo texto usando Java
Streams Java.
Prof. Luis Otavio Alvares
Modificadores de tipos e Arquivos
Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Programação Orientada a Objetos I Material IV-Bimestre Criando um.
1 Introdução aos Sockets (Java) Tiago Semprebom DAS – Departamento de Automação e Sistemas UFSC – Universidade Federal de Santa Catarina.
Arquivos. 2 Namespace System.IO Toda as classes relacionadas com dispositivos de entrada e saída encontram-se em System.IO Incluir no início do programa:
Excepções e Streams em Java
Sistemas Operacionais SISTEMA DE ENTRADA E SAÍDA
Classes e objetos P. O. O. Prof. Grace.
Capítulo 10 Strings & File I/O. Strings Strings são um conjunto de Caracteres ASCII. No Controle de Instrumentação pode-se converter valores numéricos.
Unidade I: “Dê um mergulho rápido”
Interconexão e Transporte em Redes
Aula prática 13 Orientação a Objetos – C++ Parte 1
Infra-Estrutura de Comunicação (IF678) Aula Prática 02 – CIn/UFPE Davi Duarte Denyson José Eduardo Souza Ivan França Rafael Lima.
Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012.
Nazareno Andrade (baseado no material de Hyggo Almeida)
Streams –input e output
Programa Expresso de Capacitação Módulo J2ME Aula 5 – Record Management System.
Java Avançado Luiz Carlos d´Oleron SJCP Java Sockets.
Comunicação Entre Processos Sockets - Java
Linguagens de Programação II Aula 04 – Entendendo Classes
Arquivos if669 - Introdução à Programação Monitoria de IP Igor Ebrahim (ies) Nicole Sultanum (nbs2) Paulo Borba (phmb)
Linguagens de Programação – DEL-Poli/UFRJ Prof. Miguel Campista Linguagens de Programação Prof. Miguel Elias Mitre Campista
BC-0502 Metodologia e Algoritmos Computacionais Santo André, Abril de Arquivos em Java.
Aulas 2 e 3 – Java – Prof. Marcelo Heitor # O método main e argumentos na linha de comando; # Fluxo padrão de entrada e saída; # A classe JOptionPane;
Stream – Fluxo I/O Manipulação de arquivos texto
Concorrência e thread Petrônio Júnior(pglj) Márcio Neves(mmn2)
1 JAVA I/O (Entrada e Saída em JAVA) Prof. Alexandre Monteiro Recife.
Profa. Patrícia A. Jaques
Implementando comunicação em JAVA via Sockets Alcides Calsavara - Leonardo R. Nunes -
Capítulo 5 Entrada/Saída 5.1 Princípios do hardware de E/S
Programação I Aula 3 (Entrada de Dados) Prof. Gilberto Irajá Müller Última atualização 11/3/2009.
Polimorfismo.
Aula Prática 1 Monitoria IP/CC (~if669). Roteiro 1.Polimorfismo 2.Superclasses Abstratas 3.Dúvidas 4.Exercício.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 10: Interface de Sistemas de Arquivos.
April 05 Prof. Ismael H. F. Santos - 1 Modulo II – Tópicos em Java - IO Prof. Ismael H F Santos.
Linguagem I Strings.
Lógica e Estrutura de Dados Fundamentais Professor: Eduardo O. Teles
Aula Prática 11 Operações com Arquivos Monitoria
Redes de Computadores I Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -
Aula Prática 1 Monitoria IP/CC (~if669) (A partir do slide elaborado por Luís Gabriel)
Socket em Java.
Programação Distribuída em Java Aula Na aula passada vimos: I/O Streams Filtros Readers and Writers.
Programação Distribuída em Java Aula Na aula passada vimos: I/O Sockets.
Programação Distribuída em Java Aula 09 - JSP. Na aula passada vimos: Aspectos gerais de segurança em Java policytool Instalação de políticas de segurança.
1 Programação Distribuída em Java Aula Na aula de hoje veremos: Introdução Conceito de Rede Protocolos Modelo ISO/OSI Modelo TCP/IP Modelo Cliente/Servidor.
Programação Distribuída em Java Aula Na aula passada vimos Domain Name Server –Funcionamento básico O pacote java.net –Sua finalidade A classe InetAddress.
Programação Computacional Aula 8: Entrada e Saída pelo Console Prof a. Madeleine Medrano
Introdução ao C++ para programadores OO Instrutores: Francisco Carvalho, João Paulo do Monte, Renato Viana Ferreira {fcfl, jpsml,
Classes abstratas São classes das quais não se pode instanciar objetos. São classes das quais não se pode instanciar objetos. Seu objetivo é ser herdada.
Arquivos. Os computadores utilizam os arquivos como estruturas de dados para armazenamento de longo prazo de grandes volumes de dados. Dados mantidos.
© Copyright 2008 Algoritmos e Estruturas de Dados 1 IF672 - Algoritmos e Estruturas de Dados CIn - UFPE Adriana Libório Fernandes Lins Arthur Cavalcanti.
UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis
INTRODUÇÃO THOBER CORADI DETOFENO, MSC. Aula 02 JOINVILLE 2015 Universidade do Estado de Santa Catarina – CCT/UDESC.
Aula Prática 1 Monitoria IP/CC (~if669) (A partir do slide elaborado por Luís Gabriel)
Programação II Arquivos Autoria: Ernani Santos Modificação: Clebson Oliveira Adaptação: Claudia Boeres.
Aula: Arquiteturas de redes: modelo de referência OSI 04/12/2010.
Capítulo 10. Stream – Fluxo I/O  Introdução  Principais Exceptions  Arquivos binários java.io.InputStream java.io.FileInputStream java.io.ByteArrayInputStream.
Capítulo 14 Camada 6 A Camada de Apresentação. Sumário A Camada de Apresentação.
SOCKET - É um canal de comunicação entre processos que estabelece uma conexão entre eles na forma de cliente-servidor. Por meio de sockets, os computadores.
Herança em Java Curso: Informática Disciplina: Programação Orientada a Objetos Prof. Abrahão Lopes
Capítulo 2 Redes de computadores e a Internet Camada de aplicação Prof. Gustavo Wagner.
Transcrição da apresentação:

Programação Distribuída em Java Aula 02

2 Na aula passada vimos: Introdução –O que podemos fazer na rede Conceito de Rede –Máquinas conectadas Protocolos –Conceito e exemplos

3 Na aula passada vimos: Modelo ISO/OSI –Aplicação –Apresentação –Sessão –Transporte –Rede –Enlace –Física TCP/IP –Uma simplificação do OSI

4 Na aula passada vimos: Modelo Cliente/Servidor –Formato de interação entre máquinas

5 O que você deve ter fixado: Funcionamento básico de uma rede Modelo de camadas Interação cliente/servidor

6 Na aula de hoje veremos: I/O

7 A maior parte do que um programa em rede faz é simples entrada e saída Ler a informação enviada por um servidor é muito parecido com a leitura de um arquivo do sistema local

8 I/O I/O em Java é basicamente manipulação de streams Depois que um stream é criado podemos até ignorar o seu tipo original graças ao polimorfismo

9 java.io.OutputStream Classe abstrata que fornece os métodos fundamentais para escrita de dados em um meio particular Todas as subclasses de OutputStream têm o mesmo comportamento –Se você sabe usar a superclasse deverá entender o funcionamento das subclasses

CharGenerator.java10 java.io.OutputStream Métodos básicos: –public abstract void write (int b) trows IOException –public abstract void write (byte [] data) trows IOException –public abstract void write (byte [] data, int offset, int length ) trows IOException –public void flush() trows IOException –public void close()

11 java.io.OutputStream Quando utilizar o método flush() sobre OutputStreams? Sempre! Streams podem ser armazenados em buffer flush força o envio de dados que do contrário seriam perdidos

12 java.io.InputStream Classe abstrata que fornece os métodos fundamentais para leitura de dados em um meio particular

13 java.io.InputStream Métodos básicos: –public abstract read() –public int read (byte[] input) –public int read (byte[] input, int offset, int length) –public long skip() –public int available() –public void close() –Todos lançam IOException

SaveLoad.java14 java.io.InputStream read () bloqueia a execução do programa até que um byte esteja disponível Entrada e saída tendem a ser processos lentos É recomendável que ocorram em threads dedicadas

15 java.io.InputStream Para garantir que todos os bytes sejam lidos você deve colocar read() em loop byte[] input = new byte[1024]; int bytesRead = in.read(input); int bytesRead = 0; int bytesToRead = 1024; byte[] input = new byte[bytesToRead]; while( bytesRead < bytesToRead ) { bytesRead += in.read(input, bytesRead, bytesToRead – bytesRead); }

16

17 Filter Streams Input e OutputStream permitem apenas a inscrição e leitura de bytes... e só Devido à existência de formatos de dados muito comuns, existem classes que dão tratamento especializado para os mesmos

18 Filter Streams Filtros manipulam streams fazendo compressão, criptografia, conversão para caracteres, buffer e etc... Filtros podem modificar os dados enquanto são lidos ou escritos –e.g. filtro de compressão ou criptografia

19 Filter Streams Vários filtros podem ser encadeados Na maioria das vezes devemos usar o último filtro da cadeia para ler ou escrever dados

20 Filter Streams FileInputStream fis = new FileInputStream(data.txt); BufferedInputStream bis = new BuferredInputStream(fis); DataInputStream dis = new DataInputStream(bis); Mas quem fará a leitura? InputStream in = new FileInputStream(data.txt); in = new BuferredInputStream(in); in = new DataInputStream(in); in.read(); Essa é uma melhor opção

21

ListIt.java22 Readers and Writers Assim como Input e OutputStream usam bytes, readers e writers usam caracteres Unicode veja: São chamadas “classes espelho”, pois têm basicamente os mesmos métodos que InputStream e OutputStream

23 java.io.OutputStreamWriter Recebe caracteres Unicode e os converte para bytes É análoga a OutputStream Como exercício compare os métodos dessa classe com os de OutputStream

24 java.io.InputStreamReader Análoga a InputStream Seus métodos podem ser entendidos comparando-os aos de InputStream

25 InputStreamReader GZIPInputStream CipherInputStream BufferedInputStream TelnetInputStream Network Application Suponha que você receba dados compactados e criptografados. Qual seriam os passos para tratar esses dados desde que chegam da rede até que possam ser lidos?

26

Save and Load.java27 In short: Obtenha um stream Trate-o com um filtro apropriado Conclua a sua manipulação com um reader ou writer

28 O que você precisa saber... Tratamento básico de entrada e saída em Java Encadeamento de filtros

29 Na próxima aula veremos: Sockets ServerSockets