1. REPÚBLICA BOLIVARIANA DE VENEZUELA
INSTITUTO UNIVERSITARIO POLITÉCNICO
“SANTIAGO MARIÑO”
Autor:
Ordaz Noriega, Carlos Eduardo
C.I: 20.903.710.
Porlamar, Enero de 2013
2. INTRODUCCION
Java es un lenguaje de programación orientado a objetos,
multiplataforma lo cual nos permite desarrollar aplicaciones de
manera flexible, es decir, sin preocupaciones de que nuestro sistema
operativo no reconozca la aplicación.
Como todo lenguaje de programación java emplea ciertos métodos,
clases y funciones para la lectura y escritura de datos, esta
abstracción java la define como flujo de datos, estos flujos se
manejan a través de las clases InputStream para la entrada de datos
y la clase OutputStream para la salida de datos.
Las clases InputStream y OutputStream hacen referencia a todo
origen y destino de datos en la aplicación que se esta creando, por
ende todos los objetos deben hacer referencia a ellas cuando trabajan
con flujos de E/S.
3. ENTRADA Y SALIDA DE DATOS EN JAVA
El manejo de datos de entrada y salida en java se hace a
través de clases que emplean el método stream para el tratamiento
de los mismos.
El stream puede definirse como un puente o conexión entre una
aplicación java y la fuente de donde provienen los datos para ser
tratados en la aplicación o bien sea el origen de los datos que se
tratan en la aplicación.
Fuente o
Stream o
Aplicación destino de
conexión
datos
4. CLASES DE JAVA PARA LA LECTURA Y ESCRITURA DE DATOS
Los procesos de entrada y salida de datos en el entorno de
desarrollo java se manejan a través de estas 2 clases abstractas:
• InputStream: es la clase contenida en la librería java.io , la cual se
usa para definir la entrada de datos en una aplicación java.
Algunas de las clases que emplean directamente el recurso del
InputStream son:
- AudioInputStream.
- FilterInputStream.
- ObjectInputStream.
• OutputStream: al igual que la clase de entrada de datos
InputStream esta se encuentra contenida en la librería java.io. Esta
clase se usa para definir la salida de datos en una aplicación java.
También cuenta con clases de uso directo como FileOutputStream
y ByteArrayOutputStream.
5. ENTRADA Y SALIDA ESTANDAR (TECLADO Y PANTALLA)
Java tiene en su paquete o librería java.io una serie de
recursos que facilitan el tratamiento de datos en las aplicaciones, en
el caso de la entrada y salida estándar cuenta con:
• System.out: Se reconoce como un flujo de bytes de salida, es usado
para impresiones en pantalla.
• Métodos de impresión de datos:
- print(), println()
- flush() , hace un vaciado en el buffer e imprime en pantalla
• System.in: Esta clase se define como un flujo de bytes de entrada,
es usado para leer datos introducidos por teclado.
• Métodos para esta clase
- read() permite leer un byte de la entrada como entero
- skip(n ) ignora n bytes de la entrada
- available() número de bytes disponibles para leer en la
entrada
6. LECTURA Y ESCRITURA DE ARCHIVOS
• Existen diversas clases para la lectura y escritura de archivos en
java, las mas eficientes son:
• FileInputStream: esta clase nos permite la escritura de datos en un
archivo.
• FileOutputStream: esta clase permite la lectura y obtención de
datos de un archivo
• BufferedReader: esta clase crea un buffer que aumenta la
eficiencia de lectura de los datos, permite leer una línea y devolver
ese resultado convertido a string.
• BufferedWriter: esta clase permite la escritura de datos, junto con
la clase BufferedReader permiten un manejo eficiente de la lectura
y escritura de datos en archivos a través de java.
Usar las clases de lectura sin los buffered nos daría como resultado
un rendimiento ineficiente de la aplicación con los datos.
7. SERIALIZACION
La serializacion de un objeto se refiere a la conversión del
estado actual de ese objeto a bytes, con la finalidad de poder guardar
esa información y de que el programador pueda luego volver a usar
ese objeto en el estado que ha sido guardado.
Un objeto serializable es un objeto que se puede convertir en una
secuencia de bytes. Para que un objeto sea serializable, debe
implementar la interfaz java.io.Serializable. Esta interfaz no define
ningún método. Simplemente se usa para 'marcar' aquellas clases
cuyas instancias pueden ser convertidas a secuencias de bytes (y
posteriormente reconstruídas). Objetos tan comunes como String,
Vector o ArrayList implementan Serializable, de modo que pueden
ser serializados y reconstruidos más tarde.
8. LECTURA DE UN ARCHIVO EN UN SERVIDOR DE INTERNET
A diario cuando navegamos e internet estamos leyendo
archivos alojados en servidores de paginas web, ya sean HTML, PHP,
o documentos XML, una infinidad de archivos existentes en la web
puestos a nuestra disposición.
En este caso del lenguaje de programación java, hay un recurso que
nos permite accesar a archivos alojados en servidores de internet a
través de una aplicación java, este recurso es java.net. Este recurso o
paquete nos provee una serie de clases que permiten trabajar con
archivos en la red. Tal es el caso de :
• URI (Uniform Resource Identifier): nos permite identificar un
recurso.
• URL (Uniform Resource Locator): es el localizador uniforme de
recursos, proporciona la consistencia de los recursos para
programar.
• URLConnection: crea un vinculo entre el computador que ejecuta
la aplicación y el computador que esta brindando los recursos.
9. JAVA FOUNDATION CLASSES (JFC) Y JAVA 2D
Las clases Java fundamentales (JFC) son un conjunto
completo de componentes GUI y servicios que simplifican el
desarrollo y despliegue de la calidad comercial de escritorio y las
aplicaciones de Internet / Intranet.
Los componentes JFC / Swing se pueden dividir en dos
grupos - los que proporcionan mejoras, JFC / Swing versión de los
componentes AWT, y aquellos que son nuevos.
Java 2D
Con Java 2D, los desarrolladores pueden hacer, manipular y
transformar complejas imágenes en 2D y texto. Java 2D permite la
creación de mejor aspecto en componentes y aplicaciones.
Java provee una interfaz cómoda de desarrollo a los programadores.
10. JAVA MEDIA FRAMEWORK (JMF)
El API Java Media Framework (JMF) permite audio, video y
otros medios basados en el tiempo que se añade a las aplicaciones y
applets Java construidas sobre la tecnología. Este paquete opcional,
que puede capturar, reproducir, arroyo, y convierte los formatos de
medios múltiples, se extiende la Java 2 Platform, Standard Edition
(J2SE) para desarrolladores multimedia, proporcionando un potente
conjunto de herramientas para desarrollar, adicional a eso tecnología
multiplataforma.
11. JAVA 3D
El API Java 3D permite la creación de aplicaciones
tridimensionales gráficos y basados en Internet miniaplicaciones en
3D. Proporciona construcciones de alto nivel para la creación y
manipulación de la geometría 3D y la construcción de las estructuras
utilizadas en la prestación de esa geometría. Con este software, usted
puede definir de manera eficiente y hacer mundos virtuales muy
grandes.
12. JAVA BEANS
JavaBeans tecnología es la arquitectura de componentes
para la plataforma Java 2, Standard Edition (J2SE). Los componentes
JavaBeans (Beans) son programas de software reutilizables que se
pueden desarrollar y ensamblar fácilmente para crear aplicaciones
sofisticadas.
13. JAVA RMI Y JAVA IDL
El RMI (Remote Method Invocation) se refiere a una
tecnología que ofrece java para realizar conexiones remotas entre
servidores, todo esto es posible siempre y cuando se usa única y
exclusivamente el entorno de desarrollo java, ofrece una facilidad
increíble en lo que a la conexión de servidores se refiere. Y la
arquitectura de este método esta conformada por 4 capas de
protocolo.
El IDL (Interface Description Language) es una tecnología
que provee java, que permite la comunicación entre 2 aplicaciones
sin importar el lenguaje en que estén escritas, a diferencia de la
tecnología RMI que solo permite ensamblaje en distribuciones de
java únicamente.
14. JAVA NATIVE INTERFACE
El JNI (Java Native Interface) se refiere a un framework de
programación, que permite que las aplicaciones de java que se
ejecuten en una maquina virtual pueda comunicarse e
interactuar con otros lenguajes de programación como c++ y
emsamblador.
15. CONCLUSION
Hasta la fecha el entorno de desarrollo java ha evolucionado a
pasos gigantes, tanto así que ya ofrece desarrollo en 3D, nos
regala una cómoda interface de desarrollo y nos da los recursos
necesarios par desarrollar aplicaciones de alto nivel.
Gracias a la tecnología RMI la conexión de servidores ya no
debería ser un problema, y si contamos aun mas con la
tecnología IDL podemos suponer que la evolución de la
programación en poco tiempo será de gran impacto mundial.
16. REFERENCIAS BIBLIOGRAFICAS
• http://www.oracle.com/technetwork/java/index-
140688.html#what_2d
• http://www.oracle.com/technetwork/java/javase/tech/index-
jsp-140239.html
• http://www.oracle.com/technetwork/java/javase/tech/index-
jsp-138795.html
• http://docs.oracle.com/javase/1.4.2/docs/api/java/io/OutputStr
eam.html
• http://docs.oracle.com/javase/1.4.2/docs/api/java/io/InputStrea
m.html
• Parte de los conceptos de esta presentación han sido
resultado de la lectura y análisis de artículos y libros, así
como también recursos de internet y folletos.