Bienvenidos a un nuevo bloque dedicado
a la programación en Java, en este apartado vamos a ver un nuevo concepto: los
streams. Como hasta ahora los posts los voy haciendo lo más prácticos posibles
para que se os haga más ameno y no tengáis que estar leyendo los posts como si
fuera una novela. Si queréis que al final del post ponga el código completo de
la práctica o ejemplo que estamos realizando en los posts me enviáis un correo
a amizba@gmail.com o directamente me lo indicáis
en los comentarios del blog.
Por otra parte, algunos me habéis
escrito a mi correo comentando que algunos ejercicios no siguen los mismos
pasos que las prácticas o ejemplos que realizo en el tutorial, esto es debido a
que también quiero que veáis otra forma de escribir código siempre y cuando el
resultado sea el mismo. En muchos de los ejercicios no creo la clase que hereda
de JFrame, sino, que creo el objeto JFrame directamente, al ser ejercicios
básicos y no muy avanzados es una manera de acortar y picar código.
Para proyectos más extensos sí que
recomiendo que no se cree el objeto JFrame directamente, sino, que se cree la
clase y herede de JFrame igual que se cree la clase y herede de JPanel… en el
menú de Proyectos lo podéis comprobar. Los que me seguís en el tutorial y en
ejercicios ya sabéis a que me refiero.
Así que dicho esto no me enrollo más y
empezamos el bloque de los streams.
Los streams también llamados secuencias o flujos de datos sirven para
enviar información de un programa Java a un sitio remoto a través de la red,
para acceder a ficheros externos para leer información que haya en un fichero
dentro de nuestro ordenador o para poder escribir en un fichero que podamos
tener dentro de nuestro ordenador.
¿Por
qué el uso de ficheros?
Hasta ahora en nuestros programas de
Java hemos almacenado la información en variables, en arrays, en objetos… esta
información que almacenamos es temporal se guarda en la memoria RAM del
ordenador, la memoria RAM es una memoria volátil que significa que cuando un
programa termina su ejecución lo que hay dentro de esa memoria volátil se
elimina.
Algunas veces al crear aplicaciones
Java surge la necesidad de almacenar la información no de forma temporal sino
de forma permanente para que en un futuro podamos acceder a esa información.
Si queremos almacenar la información
de forma permanente en lugar de almacenarla en la RAM del equipo necesitaremos
un dispositivo físico, por ejemplo, el disco duro del ordenador, en un
pendrive, etc., para hacer esta operación necesitamos manejar streams, secuencias o manejo de datos.
Si en un futuro tenemos que acceder a
esa información como esta guardada en un dispositivo físico podremos acceder a
ella que normalmente estará en un fichero.
Formas
de abordar los streams
Podemos abordarlo de dos formas:
·
Flujo de bytes
·
Flujo de caracteres
Es decir, a la hora de acceder a un
fichero donde puede haber información o donde queremos escribir información lo
podemos hacer utilizando bytes o caracteres.
Cuando utilizar una u otra depende de
lo que queramos hacer, a veces es más cómodo utilizar una forma y otras veces
es más cómodo utilizar la otra. Si queremos almacenar información para luego
leerla utilizaremos streams de caracteres, si queremos enviar
información que genera el programa de Java a través de la red a un sitio remoto
se utilizará un flujo de bytes.
Si usáramos el flujo de bytes
utilizaríamos dos clases:
·
InputStream à Secuencia de entrada
·
OutputStream à Secuencia de salida
Utilizaríamos InputStream en el caso que quisiéramos ver la información
almacenada en un fichero.
OutputStream la utilizaríamos para escribir
información en bytes en un fichero.
Para trabajar con el flujo de
caracteres utilizaremos dos clases:
·
Reader à Secuencia de entrada
·
Writer à Secuencia de salida
Con esta breve introducción de lo que
son los streams creo que se ha quedado bastante claro, sino, ya sabéis que me
lo podéis indicar a través de los comentarios del blog, os espero en el próximo
para empezar a ver los streams mediante ejemplos y prácticas. Hasta pronto!
11.2 DEBUGGING << >> 12.2 LEYENDO FICHEROS
No hay comentarios:
Publicar un comentario