SlideShare una empresa de Scribd logo
1 de 13
Descargar para leer sin conexión
REPUBLICA BOLIVARIANA DE VENEZUELA
INSTITUTO UNIVERSITARIO POLITECNICO
“SANTIAGO MARINO”
EXTENSION PORLAMAR
INGENIERIA DE SISTEMAS
APLICACIONES JAVA
INTEGRANTE:
Br. Valdiviezo David C.I:21.326.272
FACILITADOR:
Ing. Diógenes Rodríguez
Porlamar, Junio del 2013
Introducción
El lenguaje de programación de java fue de desarrollado en 1991 cuando un
grupo de programadores e ingenieros se encontraban diseñando un lenguaje de
programación destinado a electrodomésticos. Convirtiéndose en una herramienta de
desarrollo simple y orientado a objetos proporcionando una arquitectura neutra portable
y de alta precisión prestando de herramientas funcionales a los programadores que
requieran de la misma.
Java proporciona un conjunto de herramientas que facilitan la entrada y salida de
datos proporcionados a los desarrolladores de clases, funciones y métodos como los
Streams que es la manera de representar las entradas y las salidas proporcionado una
conexión ente el programa y la fuente de destino de los datos. La información es
trasladada con las clases de java relacionadas con la entrada y la salida agrupada en el
paquete Java.io.
Java incorpora clases para el manejo de gráficos como lo son las herramientas
Java foundation classes (JFC), java 2D y Java 3D las culés ya posean herramientas
graficas como botones, tablas y ventanas las cuales facilitan el diseño de las interfaces
graficas de las aplicaciones desarrolladas en este lenguaje.
Además incorpora la ejecución de como APPLET facilitando el desarrollo tanto en
arquitecturas cliente servidor y como en aplicaciones distribuidas teniendo la capacidad
de conectarse con otros ordenadores y ejecutar tareas en varios ordenadores
simultáneamente.
Entrada y salida de datos en java:
Según el autor Beuchot Mauricio los programas en la actualidad necesitan
comunicarse con su entorno, tanto para recoger datos e información que debe ser
procesada posteriormente y devolver los resultados obtenidos. La forma de representar
las entradas y las salidas en java es atreves de las clases STREAMS (flujos de datos).
Un STREAMS es una conexión entre el programa y la fuente o el destino de los
datos y la información se traslada en serie (un carácter continuo de otro) a través de esta
conexión. Un ejemplo de ello es cuando se quiere imprimir algo en la pantalla, se hace a
través de un STREAMS que conecta el monitor al programa.
Las entradas y salidas se manejan en java a través de una jerarquía que incluye
clases e interfaces encontradas en los paquetes de java.io. En java se tienen dos
maneras de hacer entradas y salidas: La primera es leyendo y escribiendo bytes,
mientras que la segunda es leyendo y escribiendo caracteres Unicode.
Cada uno de los tipos de entradas y salidas tiene una superclase abstracta para
lectura y otra para escritura. De ellas se derivan clases concretas que permiten manipular
de alguna forma lo que se está leyendo y escribiendo. Las entradas y salidas se ven
siempre como un flujo, ya sea de bytes o caracteres, la cual va tomando una unidad por
unidad y la procesa. Cuando este flujo termina decimos que se acabó el archivo.
Clases de Entradas y salidas más sencillas en java:
 Entrada básica: La clase InputStream
La clase abstracta InputStream declara los métodos para leer datos desde una
fuente concreta y es la base de la mayor parte de los flujos de entrada en java.io. Soporta
los métodos siguientes:
 int read(): Lee un sólo byte de datos y los devuelve en el rango [0..255]. Devuelve -
1 cuando se alcanza el final del flujo y no puede seguir leyendo bytes.
 int read(byte [] buf): Lee un array de bytes hasta buf.length. Devuelve el número
de bytes leidos o - 1 cuando se llega al final del flujo.
 int read(byte [] buf, int off, int len): Lee len bytes del flujo (o los que pueda) y los
coloca a partir de la posición off del array.
 Salida básica: La clase OutputStream
La clase abstracta OutputStream es análoga a InputStream sólo que proporciona
métodos para manejar el flujo de salida. Los métodos que incluye son:
 void write(int b) escribe b como byte, que, aunque sea declarado como int es
transformado a byte. Esto es porque habitualmente es el resultado de una
operación previa.
 void write(byte [] buf) escribe un array de bytes.
 void write(byte [] buf, int offset, int count) escribe un array buf de bytes, empezando
en la posición offset y escribiendo count de ellos, deteniéndose antes si encuentra
el final del array.
Clases de java para lectura y escritura de datos:
En el paquete java .io contiene las clases indispensables para la realización de la
comunicación del programa con el exterior. Dentro de los paquetes que proporciona java
existen dos familias de jerarquías distintas para la entrada y la salida de datos. Y su
diferencia principal consiste en que una de ellas opera con bytes y la otra con caracteres
cuya formación de caracteres está formada por dos bytes porque el que sigue es el
código Unicode. En general en java hay dos clases que manejan bytes una clase de
entrada y otra de salida y otras dos que manejan caracteres. La entrada y la salida de
datos del programa se podrían hacer con clases derivadas de INPUTSTREAM para la
lectura y OUTPUTSTREAM para la escritura y a subes estas clases contienen los
métodos básicos READ () y WRITE () los cueles manejan bytes que no suelen utilizar
directamente.
Las clases derivadas de READER y WRITER que manejan caracteres en vez de
bytes estas clases proporcionan una manera más práctica para las aplicaciones que
manejan texto.
Entrada y salida estándar de teclado y pantalla:
En el lenguaje de programación de java la entrada desde el teclado y la salida a
pantalla están reguladas a través de las clases System y esta clase pertenece al paquete
JAVA.LANG agrupando diversos métodos y objetos que guardan relación con el sistema
local. Esta clase contiene entre otros, tres funciones u objetos estáticos que son los
siguientes:
 System.In: Este es un objeto de la clase prinStream preparado para recibir los
datos desde la entrada estándar del sistema siendo este habitualmente el teclado.
 System.Out: Objeto de la clase prinStream que imprime los datos en la salida
estándar del sistema que está asociado con la pantalla.
 System.Err: Este es utilizado para mostrar mensajes de error que también salen
por defecto en la pantalla del ordenador.
Implementado estas clases se permite la comunicación alfanumérica con el
programa a través de los métodos incluidos en tabla de métodos que permiten la entrada
y salida a un nivel elemental en java.
Para realizar la lectura desde el teclado se pude utilizar el método System.In.Read
() de la clase InputStream. El cual lee unos caracteres por cada llamada y su valor de
retorno es una Int.
En el caso de que se quiera imprimir en la pantalla se utilizan los métodos
System.Out.Print () o System.Out.Println () y estos son los métodos más utilizados por
los desarrolladores en java.
Lectura y escritura de archivos:
En java el manejo de archivos tiene características especiales, se pueden utilizar
las clases mencionadas en la entrada y salida estándar como lo son InputStream y
OutputStream con pequeñas variaciones en la forma en que se emplean. Java ofrece las
siguientes clases para la lectura y escritura de archivos proporcionando las clases
FILEINPUTSTREAM y FILEOUTPUTSTREAM que permiten leer y escribir bytes en los
archivos. Para los archivos de texto son preferibles FILEREADER que descienden de
READER y FILEWRITER que descienden de WRITER, y realizan las mismas funciones.
Se pueden construir un objeto de cualquiera de estas cuatros clases a partir de un
STRING el cual debe contener el nombre y la dirección en el disco del archivo o con un
objeto de la clase FILE que representan al archivo. Por ejemplo:
FILEREADER FR1 = NEW FILEREADER ("ARCHIVO.TXT"); Es equivalente a: FILE
F = NEW FILE ("ARCHIVO.TXT"); FILEREADER FR2 = NEW FILEREADER (F);
Si no encuentran el archivo indicado, los constructores de FILEREADER
y FILEINPUTSTREAM pueden lanzar una excepción java.io. El cual refleja que si el
archivo indicado no es encontrado lo crea de nuevo por defecto.
Serialización:
La serialización o (MARSHALLING) consiste en un proceso que permite la
codificación de un objeto en un medio de almacenamiento como por ejemplo un archivo
o un buffer de memoria con la finalidad de transmitirlo a través de una conexión de red
como una serie de bytes o en un formato que sea comprensible para una persona como
por ejemplo el método binario o XML entre otros.
 La serialización binaria conserva la fidelidad de tipos, lo que resulta útil para
conservar el estado de un objeto entre distintas llamadas a una aplicación. Por
ejemplo, puede compartir un objeto entre distintas aplicaciones si lo serializa en
el Portapapeles.
 La serialización XML sólo serializa las propiedades públicas y los campos, y no
conserva la fidelidad de tipos. Esto resulta útil cuando desea proporcionar o
consumir datos sin restringir la aplicación que utiliza los datos.
En el lenguaje de programación java proporciona una herramienta denominada
serialización de objetos la cual permite convertir cualquier objeto. Para realizar la
serialización es necesario implementar la interfaz serializable, la cual obliga a que todos
los campos de datos del objeto sean serializables. Esta interfaz no posee la declaración
de ninguna función miembro.
La serialización es una característica añadida al lenguaje Java para dar soporte a
 La invocación remota de objetos (RMI)
 La persistencia
La invocación remota de objetos permite a los objetos que viven en otros
ordenadores comportarse como si vivieran en nuestra propia máquina. La serialización
es necesaria para transportar los argumentos y los valores de retorno.
La persistencia, es una característica importante de la herramienta JAVA Beans.
El estado de un componente es configurado durante el diseño. La serialización nos
permite guardar el estado de un componente en disco, abandonar el Entorno Integrado
de Desarrollo (IDE) y restaurar el estado de dicho componente cuando se vuelve a correr
el IDE.
Lectura de un archivo en un servidor de internet:
Los objetos SERVLET son módulos proporcionados por Java que permiten
sustituir o utilizar el lenguaje de programación de java en lugar de los programas CGI
(Common Gateway Interface) escritos en otros lenguajes como c++ o Perl. Los
programas CGI son aplicaciones que se ejecutan en un servidor web en respuesta a una
acción de un BROWSER remoto o petición de una página HTML permitiendo la
generación de páginas dinámicas cuyo contenido puede variar y que por lo tanto pueden
almacenar información en un servidor.
Los SERVLET no tienen entorno grafico ya que se ejecutan en el servidor.
Recibiendo los datos y sus salidas o respuesta son habitualmente ficheros de textos
HTML. Estas herramientas de programación en la web son desarrolladas utilizando la
API Java.Servlet que es una extensión de java que hasta la fecha no forma parte de
ninguno de los JDK de java por ello es necesario instalar un software específico para
Java.Servlet.
Java foundation classes (JFC) y java 2D:
En java los JFC, JAVA™ (FOUNDATION CLASSES) son un conjunto de
componentes y características que facilitan y ayudan a construir los entornos gráficos de
los programas o GUIS (Graphical User Interfaces). El cual incluye una gran cantidad de
elementos gráficos como botones, paneles, menús y ventanas los cuales aminoran los
tiempos de desarrollo de aplicaciones de entornos gráficos complejos proveyendo
muchos más elementos de los que brindan los componentes AWT.
Los SWING forman parte de los elementos proveídos por las JFC los culés
permiten incorporar en las aplicaciones desarrolladas elementos gráficos de una forma
más versátil y con más capacidades que utilizando el AWT básico de java.
Alguna de las de las características más interesantes que provee los
componentes JFC, JAVA™ FOUNDATION CLASSES son:
 Cualquier programa que utilice los componentes SWING puede escoger el
aspecto que desee para sus ventanas y elementos gráficos.
 Cualquier componente grafico de SWING presenta más propiedades que los
elementos correspondientes al AWT. En las cueles a los botones se le pueden
incorporar imágenes.
El JDK 1.2 y las versiones siguientes a las misma java incorporan como parte de
los componentes JFC una herramienta llamada java 2D la cual permite a los
desarrolladores incorporar textos, imágenes y gráficos en dos dimensiones de gran
calidad.
Java Media FRAMEWORK (JMF):
En java la JMF (JAVA MEDIA FRAMEWORK) es un protocolo de transmisión de
datos y uno de los elementos gráficos simples y unificados para la reproducción de
contenidos gráficos multimedia, como por ejemplo videos, audio y animaciones,
principalmente. En las versiones del JDK anteriores a la 1.1 no incorporan esta API de
JMF por lo tanto es necesario la instalación de un software que complementa el JDK.
Java 3D
La herramienta JAVA 3D™ es un conjunto clases que facilitan la creación de
aplicaciones y APPLETSCON () y elementos 3D. Ofreciendo a los desarrolladores la
posibilidad de manipular geometrías complejas en tres dimensiones.
Las principales ventajas proporcionadas por la herramienta JAVA 3D™ frente a
otros entornos de programación 3D son:
 Permite la creación de aplicaciones graficas 3D independientemente del tipo de
sistema empleado para su desarrollo.
 Proporciona un conjunto de clases, interfaces y librerías de alto nivel las cuales
permiten aprovechar la aceleración grafica proporcionada por el hardware que
incorporan muchas de las nuevas tarjetas gráficas de la actualidad.
 Las llamadas a los métodos 3D son transformadas en llamadas a las funciones
de OPENGL O DIRECT3D.
Oficialmente JAVA 3D™ forma parte de la API JMF, y se trata de unas librerías
que se instalan independientemente de JMF.
Java Beans:
JAVA BEANS proporciona a los desarrolladores la posibilidad de escribir
“Elementos o componentes de software”. Los componentes son elementos reutilizables
que pueden incorporar gráficos a otros componentes como APPLETS () y aplicaciones
utilizando herramientas gráficas para el desarrollo de aplicaciones que requieran gráficos
de gran calidad. Cada uno de los componentes proporcionado por esta herramienta
ofrece sus características concretas como por ejemplo los métodos públicos y sus
eventos a los entornos gráficos de desarrollo permitiendo su desarrollo visual. Siendo
equivalente a otros componentes de algunos de los entornos visuales como por ejemplo
los controles de VISUAL BASIC.
El BDK (BEANS DEVELOPER KIT) es un conjunto de herramientas para
desarrollar JAVA BEANS y se trata de un kit no incorporado en los distintos JDK de java.
RMI e JAVA IDL
Las herramientas RMI (REMOTE METHOD INVOCATION) como JAVA IDL (JAVA
INTERFACE DEFINITIONLANGUAGE) son utilizadas para desarrollar aplicaciones
distribuidas. Este tipo de aplicaciones presentan las características de una aplicación que
pude ejecutar funciones y métodos en varios ordenadores distintos. Manejando una
referencia o un objeto que se encuentra en un ordenador remoto, siendo posible ejecutar
métodos de ese objeto desde una aplicación que se ejecuta en un ordenador distinto.
RMI Y JAVA IDL proporcionan los mecanismos mediante los cuales los distintos
objetos distribuidos se comunican y se transmiten la información.
RIM es una solución basada íntegramente en java e incorpora métodos para
localizar los objetos remotos, comunicarse con ellos e incluso enviar un objeto de java.
JAVA IDL permite entre objetos distribuidos utilizando CORBA (COMMON
OBJECT REQUEST BROKER ARCHITECTURE). Siendo un estándar para la
interconexión entre los objetos distribuidos.
Java Native Interface (JNI):
Java Native Interface (JNI) es un framework o (marco de trabajo) de
programación que permite ejecutar códigos nativos de java y viceversa ejecutándolos
en la máquina virtual java (JVM) la cual pueda interactuar con programas escritos en
otros lenguajes como C, C++ y ensamblador.
Llamamos máquina virtual a un entorno que de programación formado por:
 El programa que ejecuta los bytecodes Java.
 Las librerías (API) Java.
JNI de java posee una interfaz bidireccional que permite a las aplicaciones
desarrolladas en Java a llamar a códigos nativos y viceversa. Es decir soporta dos tipos
de interfaces
 Native Methods: La cual permite a Java llamar a funciones
implementadas en librerías nativas.
 Invocation Interface: Nos permite incrustar una máquina virtual Java
en una aplicación nativa.
La evolución de la herramienta JNI desde los orígenes de Java se incluía ya una
forma de hacer llamadas nativas desde la máquina virtual a las librerías del host
environment, así como el host environment a la maquina virtual. Siendo implantadas en
la versión 1.0 del JDK de Java utilizando los paquetes Java.net y Java.awt.
Conclusión
Java es el lenguaje esencial para el desarrollo de aplicaciones en cualquier
sistema operativo relacionado con el internet por lo que es de vital importancia en la
actualidad ya que facilita el trabajo de los desarrolladores de aplicaciones. Los ficheros
en java son herramientas importantes ya que pueden almacenar una gran cantidad de
información de cualquier indalo. En este trabajo tratamos las clases más utilizadas que
nos permiten la lectura y escritura de un fichero de java. Las clases imputStream y
OutputStream derivan de manera directa de los paquetes java.lang.objec permitiendo
trabajar con fiches asociados o distribuidos.
Actualmente java es uno de los lenguajes de programación más utilizado por los
los programadores por la gran cantidad de herramienta que brinda con relación al manejo
de archivos, herramientas graficas reduciendo así los tiempos de desarrollo de
aplicaciones. Java permite el desarrollo de aplicaciones web dinámicas desde un sistema
de información distribuido como HTML basado en la red.
Bibliografía
Introducción a las ciencias de la computación Escrito por Peláez V. Canek, Elisa
Viso Gurovich
Programación orientada a objetos con Java Escrito por Francisco Durán, Francisco
Gutiérrez, Ernesto Pimentel
Entrada y salida de datos de java Escrito por Juan Pavon Mestras
Introducción a la estructura de datos en java Escrito por Sonia Jaramillo
Valbuena,Sonia Jaramillo Valbuena, Sergio Augusto Cardona Torres, Dumar Antonio
Villa Zapata
Introducción a la lógica Escrito por Beuchot Mauricio
http://plato.acadiau.ca/courses/comp/dsilver/2513/EclipseAndTomcatTutorial/
http://www.programacion.com/articulo/swing_y_jfc_java_foundation_classes_94

Más contenido relacionado

La actualidad más candente

Java ventajas y caracteristicas
Java ventajas y caracteristicasJava ventajas y caracteristicas
Java ventajas y caracteristicasbat1820
 
presentacion de Aplicaciones de Java
presentacion de Aplicaciones de Javapresentacion de Aplicaciones de Java
presentacion de Aplicaciones de Javaingyon
 
Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Javamaeusogo
 
Curso Java Avanzado 0 Conceptos Basicos
Curso Java Avanzado   0 Conceptos BasicosCurso Java Avanzado   0 Conceptos Basicos
Curso Java Avanzado 0 Conceptos BasicosEmilio Aviles Avila
 
Presentacion aplicaciones en java
Presentacion aplicaciones en javaPresentacion aplicaciones en java
Presentacion aplicaciones en javarsalazar16988
 
Prueba slideshare
Prueba slidesharePrueba slideshare
Prueba slideshareprd-wull
 
Principios de la programación.
Principios de la programación.Principios de la programación.
Principios de la programación.David Menjivar
 
Apendice general 4 terminos de programador
Apendice general 4 terminos de programadorApendice general 4 terminos de programador
Apendice general 4 terminos de programadorWilson Delgado Ramos
 
Estructura sintactica de los lenguajes
Estructura sintactica de los lenguajesEstructura sintactica de los lenguajes
Estructura sintactica de los lenguajesEfrain Godoy
 
Lógica De La Programación Y Lenguaje de Pascal
Lógica De La Programación Y Lenguaje de PascalLógica De La Programación Y Lenguaje de Pascal
Lógica De La Programación Y Lenguaje de PascalFernando Galvez
 
Niveles de lenguaje de progracion yanne
Niveles de lenguaje de progracion yanneNiveles de lenguaje de progracion yanne
Niveles de lenguaje de progracion yannePerezUYanne
 

La actualidad más candente (19)

Java ventajas y caracteristicas
Java ventajas y caracteristicasJava ventajas y caracteristicas
Java ventajas y caracteristicas
 
presentacion de Aplicaciones de Java
presentacion de Aplicaciones de Javapresentacion de Aplicaciones de Java
presentacion de Aplicaciones de Java
 
Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Java
 
Ppt java
Ppt javaPpt java
Ppt java
 
Curso Java Avanzado 0 Conceptos Basicos
Curso Java Avanzado   0 Conceptos BasicosCurso Java Avanzado   0 Conceptos Basicos
Curso Java Avanzado 0 Conceptos Basicos
 
Presentacion aplicaciones en java
Presentacion aplicaciones en javaPresentacion aplicaciones en java
Presentacion aplicaciones en java
 
Prueba slideshare
Prueba slidesharePrueba slideshare
Prueba slideshare
 
Portafoliojava
PortafoliojavaPortafoliojava
Portafoliojava
 
Portafoliojava
PortafoliojavaPortafoliojava
Portafoliojava
 
Mapa conceptual de Java
Mapa conceptual de JavaMapa conceptual de Java
Mapa conceptual de Java
 
Principios de la programación.
Principios de la programación.Principios de la programación.
Principios de la programación.
 
Lenguaje de Alto Nivel (I Bimestre)
Lenguaje de Alto Nivel (I Bimestre)Lenguaje de Alto Nivel (I Bimestre)
Lenguaje de Alto Nivel (I Bimestre)
 
Intro Java
Intro JavaIntro Java
Intro Java
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Apendice general 4 terminos de programador
Apendice general 4 terminos de programadorApendice general 4 terminos de programador
Apendice general 4 terminos de programador
 
Estructura sintactica de los lenguajes
Estructura sintactica de los lenguajesEstructura sintactica de los lenguajes
Estructura sintactica de los lenguajes
 
Lógica De La Programación Y Lenguaje de Pascal
Lógica De La Programación Y Lenguaje de PascalLógica De La Programación Y Lenguaje de Pascal
Lógica De La Programación Y Lenguaje de Pascal
 
Java
JavaJava
Java
 
Niveles de lenguaje de progracion yanne
Niveles de lenguaje de progracion yanneNiveles de lenguaje de progracion yanne
Niveles de lenguaje de progracion yanne
 

Destacado

Java y sus caracteristicas
Java y sus caracteristicasJava y sus caracteristicas
Java y sus caracteristicasAny Saula
 
Pensamiento Computacional
Pensamiento ComputacionalPensamiento Computacional
Pensamiento ComputacionalLiss Tapia
 
02. Almacenamiento Secundario P
02. Almacenamiento Secundario P02. Almacenamiento Secundario P
02. Almacenamiento Secundario Pguest4a99791
 
Java GUI La librería Swing
Java GUI La librería Swing Java GUI La librería Swing
Java GUI La librería Swing Laura
 
Para que sirve flash
Para que sirve flashPara que sirve flash
Para que sirve flashSergio Jaimes
 
Lenguaje de programación java
Lenguaje de programación javaLenguaje de programación java
Lenguaje de programación javaChikito304
 
C++ y sus utilidades
C++ y sus utilidadesC++ y sus utilidades
C++ y sus utilidadesStudent A
 

Destacado (12)

Java y sus caracteristicas
Java y sus caracteristicasJava y sus caracteristicas
Java y sus caracteristicas
 
Pensamiento Computacional
Pensamiento ComputacionalPensamiento Computacional
Pensamiento Computacional
 
02. Almacenamiento Secundario P
02. Almacenamiento Secundario P02. Almacenamiento Secundario P
02. Almacenamiento Secundario P
 
F:\Memoria Principal Y Secundaria
F:\Memoria Principal Y SecundariaF:\Memoria Principal Y Secundaria
F:\Memoria Principal Y Secundaria
 
Java GUI La librería Swing
Java GUI La librería Swing Java GUI La librería Swing
Java GUI La librería Swing
 
Para que sirve flash
Para que sirve flashPara que sirve flash
Para que sirve flash
 
Historia de java
Historia de javaHistoria de java
Historia de java
 
Lenguaje de programación java
Lenguaje de programación javaLenguaje de programación java
Lenguaje de programación java
 
C++ y sus utilidades
C++ y sus utilidadesC++ y sus utilidades
C++ y sus utilidades
 
Que Es Java
Que Es JavaQue Es Java
Que Es Java
 
Java
JavaJava
Java
 
Guía de ejercicios de normalizacion
Guía de ejercicios de normalizacionGuía de ejercicios de normalizacion
Guía de ejercicios de normalizacion
 

Similar a Aplicaciones java

Aplicaciones en java_genesis_duran (3)
Aplicaciones en java_genesis_duran (3)Aplicaciones en java_genesis_duran (3)
Aplicaciones en java_genesis_duran (3)GENEDURAN
 
Programacion no numerica ii
Programacion no numerica iiProgramacion no numerica ii
Programacion no numerica iirolmanpaul
 
Trabajo sobre archivos en java.. programacion no numerica ii
Trabajo sobre archivos en java.. programacion no numerica iiTrabajo sobre archivos en java.. programacion no numerica ii
Trabajo sobre archivos en java.. programacion no numerica iirafaelrojas91
 
Trabajo sobre archivos en java.. programación no numérica II
Trabajo sobre archivos en java.. programación no numérica IITrabajo sobre archivos en java.. programación no numérica II
Trabajo sobre archivos en java.. programación no numérica IIrafaelrojas91
 
Programacion no numerica ii
Programacion no numerica iiProgramacion no numerica ii
Programacion no numerica iirolmanpaul
 
Entrada y salida de datos en java
Entrada y salida de datos en javaEntrada y salida de datos en java
Entrada y salida de datos en javamariasuarezsalazar
 
Presentacion carlos
Presentacion carlosPresentacion carlos
Presentacion carlosKarlytozdj
 
Programacion no numerica ii
Programacion no numerica iiProgramacion no numerica ii
Programacion no numerica iirolmanpaul
 
Presentación no numerica ii
Presentación no numerica iiPresentación no numerica ii
Presentación no numerica iiCarlos Ordaz
 
Metodos de entrada y Salida
Metodos de entrada y SalidaMetodos de entrada y Salida
Metodos de entrada y SalidaCristian Andres
 
Nuevo presentación de microsoft office power point
Nuevo presentación de microsoft office power pointNuevo presentación de microsoft office power point
Nuevo presentación de microsoft office power pointJ_cordero
 
Flujos de bytes y cadenas
Flujos de bytes y cadenasFlujos de bytes y cadenas
Flujos de bytes y cadenasJuan Durango
 
Entrada y Salida de datos en Java
Entrada y Salida de datos en JavaEntrada y Salida de datos en Java
Entrada y Salida de datos en Javakunno10
 
No numerica ii
No numerica iiNo numerica ii
No numerica iiJ_cordero
 

Similar a Aplicaciones java (20)

Aplicaciones en java_genesis_duran (3)
Aplicaciones en java_genesis_duran (3)Aplicaciones en java_genesis_duran (3)
Aplicaciones en java_genesis_duran (3)
 
Aplicaciones java
Aplicaciones javaAplicaciones java
Aplicaciones java
 
Aplicaciones java
Aplicaciones javaAplicaciones java
Aplicaciones java
 
Java
JavaJava
Java
 
Java - No numérica - II
Java - No numérica - IIJava - No numérica - II
Java - No numérica - II
 
Java
JavaJava
Java
 
Programacion no numerica ii
Programacion no numerica iiProgramacion no numerica ii
Programacion no numerica ii
 
Trabajo sobre archivos en java.. programacion no numerica ii
Trabajo sobre archivos en java.. programacion no numerica iiTrabajo sobre archivos en java.. programacion no numerica ii
Trabajo sobre archivos en java.. programacion no numerica ii
 
Trabajo sobre archivos en java.. programación no numérica II
Trabajo sobre archivos en java.. programación no numérica IITrabajo sobre archivos en java.. programación no numérica II
Trabajo sobre archivos en java.. programación no numérica II
 
Programacion no numerica ii
Programacion no numerica iiProgramacion no numerica ii
Programacion no numerica ii
 
Entrada y salida de datos en java
Entrada y salida de datos en javaEntrada y salida de datos en java
Entrada y salida de datos en java
 
Presentacion carlos
Presentacion carlosPresentacion carlos
Presentacion carlos
 
Programacion no numerica ii
Programacion no numerica iiProgramacion no numerica ii
Programacion no numerica ii
 
Presentación no numerica ii
Presentación no numerica iiPresentación no numerica ii
Presentación no numerica ii
 
Metodos de entrada y Salida
Metodos de entrada y SalidaMetodos de entrada y Salida
Metodos de entrada y Salida
 
Nuevo presentación de microsoft office power point
Nuevo presentación de microsoft office power pointNuevo presentación de microsoft office power point
Nuevo presentación de microsoft office power point
 
Flujos de bytes y cadenas
Flujos de bytes y cadenasFlujos de bytes y cadenas
Flujos de bytes y cadenas
 
ARCHIVOS
ARCHIVOS ARCHIVOS
ARCHIVOS
 
Entrada y Salida de datos en Java
Entrada y Salida de datos en JavaEntrada y Salida de datos en Java
Entrada y Salida de datos en Java
 
No numerica ii
No numerica iiNo numerica ii
No numerica ii
 

Aplicaciones java

  • 1. REPUBLICA BOLIVARIANA DE VENEZUELA INSTITUTO UNIVERSITARIO POLITECNICO “SANTIAGO MARINO” EXTENSION PORLAMAR INGENIERIA DE SISTEMAS APLICACIONES JAVA INTEGRANTE: Br. Valdiviezo David C.I:21.326.272 FACILITADOR: Ing. Diógenes Rodríguez Porlamar, Junio del 2013
  • 2. Introducción El lenguaje de programación de java fue de desarrollado en 1991 cuando un grupo de programadores e ingenieros se encontraban diseñando un lenguaje de programación destinado a electrodomésticos. Convirtiéndose en una herramienta de desarrollo simple y orientado a objetos proporcionando una arquitectura neutra portable y de alta precisión prestando de herramientas funcionales a los programadores que requieran de la misma. Java proporciona un conjunto de herramientas que facilitan la entrada y salida de datos proporcionados a los desarrolladores de clases, funciones y métodos como los Streams que es la manera de representar las entradas y las salidas proporcionado una conexión ente el programa y la fuente de destino de los datos. La información es trasladada con las clases de java relacionadas con la entrada y la salida agrupada en el paquete Java.io. Java incorpora clases para el manejo de gráficos como lo son las herramientas Java foundation classes (JFC), java 2D y Java 3D las culés ya posean herramientas graficas como botones, tablas y ventanas las cuales facilitan el diseño de las interfaces graficas de las aplicaciones desarrolladas en este lenguaje. Además incorpora la ejecución de como APPLET facilitando el desarrollo tanto en arquitecturas cliente servidor y como en aplicaciones distribuidas teniendo la capacidad de conectarse con otros ordenadores y ejecutar tareas en varios ordenadores simultáneamente.
  • 3. Entrada y salida de datos en java: Según el autor Beuchot Mauricio los programas en la actualidad necesitan comunicarse con su entorno, tanto para recoger datos e información que debe ser procesada posteriormente y devolver los resultados obtenidos. La forma de representar las entradas y las salidas en java es atreves de las clases STREAMS (flujos de datos). Un STREAMS es una conexión entre el programa y la fuente o el destino de los datos y la información se traslada en serie (un carácter continuo de otro) a través de esta conexión. Un ejemplo de ello es cuando se quiere imprimir algo en la pantalla, se hace a través de un STREAMS que conecta el monitor al programa. Las entradas y salidas se manejan en java a través de una jerarquía que incluye clases e interfaces encontradas en los paquetes de java.io. En java se tienen dos maneras de hacer entradas y salidas: La primera es leyendo y escribiendo bytes, mientras que la segunda es leyendo y escribiendo caracteres Unicode. Cada uno de los tipos de entradas y salidas tiene una superclase abstracta para lectura y otra para escritura. De ellas se derivan clases concretas que permiten manipular de alguna forma lo que se está leyendo y escribiendo. Las entradas y salidas se ven siempre como un flujo, ya sea de bytes o caracteres, la cual va tomando una unidad por unidad y la procesa. Cuando este flujo termina decimos que se acabó el archivo. Clases de Entradas y salidas más sencillas en java:  Entrada básica: La clase InputStream La clase abstracta InputStream declara los métodos para leer datos desde una fuente concreta y es la base de la mayor parte de los flujos de entrada en java.io. Soporta los métodos siguientes:  int read(): Lee un sólo byte de datos y los devuelve en el rango [0..255]. Devuelve - 1 cuando se alcanza el final del flujo y no puede seguir leyendo bytes.  int read(byte [] buf): Lee un array de bytes hasta buf.length. Devuelve el número de bytes leidos o - 1 cuando se llega al final del flujo.
  • 4.  int read(byte [] buf, int off, int len): Lee len bytes del flujo (o los que pueda) y los coloca a partir de la posición off del array.  Salida básica: La clase OutputStream La clase abstracta OutputStream es análoga a InputStream sólo que proporciona métodos para manejar el flujo de salida. Los métodos que incluye son:  void write(int b) escribe b como byte, que, aunque sea declarado como int es transformado a byte. Esto es porque habitualmente es el resultado de una operación previa.  void write(byte [] buf) escribe un array de bytes.  void write(byte [] buf, int offset, int count) escribe un array buf de bytes, empezando en la posición offset y escribiendo count de ellos, deteniéndose antes si encuentra el final del array. Clases de java para lectura y escritura de datos: En el paquete java .io contiene las clases indispensables para la realización de la comunicación del programa con el exterior. Dentro de los paquetes que proporciona java existen dos familias de jerarquías distintas para la entrada y la salida de datos. Y su diferencia principal consiste en que una de ellas opera con bytes y la otra con caracteres cuya formación de caracteres está formada por dos bytes porque el que sigue es el código Unicode. En general en java hay dos clases que manejan bytes una clase de entrada y otra de salida y otras dos que manejan caracteres. La entrada y la salida de datos del programa se podrían hacer con clases derivadas de INPUTSTREAM para la lectura y OUTPUTSTREAM para la escritura y a subes estas clases contienen los métodos básicos READ () y WRITE () los cueles manejan bytes que no suelen utilizar directamente. Las clases derivadas de READER y WRITER que manejan caracteres en vez de bytes estas clases proporcionan una manera más práctica para las aplicaciones que manejan texto.
  • 5. Entrada y salida estándar de teclado y pantalla: En el lenguaje de programación de java la entrada desde el teclado y la salida a pantalla están reguladas a través de las clases System y esta clase pertenece al paquete JAVA.LANG agrupando diversos métodos y objetos que guardan relación con el sistema local. Esta clase contiene entre otros, tres funciones u objetos estáticos que son los siguientes:  System.In: Este es un objeto de la clase prinStream preparado para recibir los datos desde la entrada estándar del sistema siendo este habitualmente el teclado.  System.Out: Objeto de la clase prinStream que imprime los datos en la salida estándar del sistema que está asociado con la pantalla.  System.Err: Este es utilizado para mostrar mensajes de error que también salen por defecto en la pantalla del ordenador. Implementado estas clases se permite la comunicación alfanumérica con el programa a través de los métodos incluidos en tabla de métodos que permiten la entrada y salida a un nivel elemental en java. Para realizar la lectura desde el teclado se pude utilizar el método System.In.Read () de la clase InputStream. El cual lee unos caracteres por cada llamada y su valor de retorno es una Int. En el caso de que se quiera imprimir en la pantalla se utilizan los métodos System.Out.Print () o System.Out.Println () y estos son los métodos más utilizados por los desarrolladores en java. Lectura y escritura de archivos: En java el manejo de archivos tiene características especiales, se pueden utilizar las clases mencionadas en la entrada y salida estándar como lo son InputStream y OutputStream con pequeñas variaciones en la forma en que se emplean. Java ofrece las siguientes clases para la lectura y escritura de archivos proporcionando las clases
  • 6. FILEINPUTSTREAM y FILEOUTPUTSTREAM que permiten leer y escribir bytes en los archivos. Para los archivos de texto son preferibles FILEREADER que descienden de READER y FILEWRITER que descienden de WRITER, y realizan las mismas funciones. Se pueden construir un objeto de cualquiera de estas cuatros clases a partir de un STRING el cual debe contener el nombre y la dirección en el disco del archivo o con un objeto de la clase FILE que representan al archivo. Por ejemplo: FILEREADER FR1 = NEW FILEREADER ("ARCHIVO.TXT"); Es equivalente a: FILE F = NEW FILE ("ARCHIVO.TXT"); FILEREADER FR2 = NEW FILEREADER (F); Si no encuentran el archivo indicado, los constructores de FILEREADER y FILEINPUTSTREAM pueden lanzar una excepción java.io. El cual refleja que si el archivo indicado no es encontrado lo crea de nuevo por defecto. Serialización: La serialización o (MARSHALLING) consiste en un proceso que permite la codificación de un objeto en un medio de almacenamiento como por ejemplo un archivo o un buffer de memoria con la finalidad de transmitirlo a través de una conexión de red como una serie de bytes o en un formato que sea comprensible para una persona como por ejemplo el método binario o XML entre otros.  La serialización binaria conserva la fidelidad de tipos, lo que resulta útil para conservar el estado de un objeto entre distintas llamadas a una aplicación. Por ejemplo, puede compartir un objeto entre distintas aplicaciones si lo serializa en el Portapapeles.  La serialización XML sólo serializa las propiedades públicas y los campos, y no conserva la fidelidad de tipos. Esto resulta útil cuando desea proporcionar o consumir datos sin restringir la aplicación que utiliza los datos.
  • 7. En el lenguaje de programación java proporciona una herramienta denominada serialización de objetos la cual permite convertir cualquier objeto. Para realizar la serialización es necesario implementar la interfaz serializable, la cual obliga a que todos los campos de datos del objeto sean serializables. Esta interfaz no posee la declaración de ninguna función miembro. La serialización es una característica añadida al lenguaje Java para dar soporte a  La invocación remota de objetos (RMI)  La persistencia La invocación remota de objetos permite a los objetos que viven en otros ordenadores comportarse como si vivieran en nuestra propia máquina. La serialización es necesaria para transportar los argumentos y los valores de retorno. La persistencia, es una característica importante de la herramienta JAVA Beans. El estado de un componente es configurado durante el diseño. La serialización nos permite guardar el estado de un componente en disco, abandonar el Entorno Integrado de Desarrollo (IDE) y restaurar el estado de dicho componente cuando se vuelve a correr el IDE. Lectura de un archivo en un servidor de internet: Los objetos SERVLET son módulos proporcionados por Java que permiten sustituir o utilizar el lenguaje de programación de java en lugar de los programas CGI (Common Gateway Interface) escritos en otros lenguajes como c++ o Perl. Los programas CGI son aplicaciones que se ejecutan en un servidor web en respuesta a una acción de un BROWSER remoto o petición de una página HTML permitiendo la generación de páginas dinámicas cuyo contenido puede variar y que por lo tanto pueden almacenar información en un servidor. Los SERVLET no tienen entorno grafico ya que se ejecutan en el servidor. Recibiendo los datos y sus salidas o respuesta son habitualmente ficheros de textos
  • 8. HTML. Estas herramientas de programación en la web son desarrolladas utilizando la API Java.Servlet que es una extensión de java que hasta la fecha no forma parte de ninguno de los JDK de java por ello es necesario instalar un software específico para Java.Servlet. Java foundation classes (JFC) y java 2D: En java los JFC, JAVA™ (FOUNDATION CLASSES) son un conjunto de componentes y características que facilitan y ayudan a construir los entornos gráficos de los programas o GUIS (Graphical User Interfaces). El cual incluye una gran cantidad de elementos gráficos como botones, paneles, menús y ventanas los cuales aminoran los tiempos de desarrollo de aplicaciones de entornos gráficos complejos proveyendo muchos más elementos de los que brindan los componentes AWT. Los SWING forman parte de los elementos proveídos por las JFC los culés permiten incorporar en las aplicaciones desarrolladas elementos gráficos de una forma más versátil y con más capacidades que utilizando el AWT básico de java. Alguna de las de las características más interesantes que provee los componentes JFC, JAVA™ FOUNDATION CLASSES son:  Cualquier programa que utilice los componentes SWING puede escoger el aspecto que desee para sus ventanas y elementos gráficos.  Cualquier componente grafico de SWING presenta más propiedades que los elementos correspondientes al AWT. En las cueles a los botones se le pueden incorporar imágenes. El JDK 1.2 y las versiones siguientes a las misma java incorporan como parte de los componentes JFC una herramienta llamada java 2D la cual permite a los
  • 9. desarrolladores incorporar textos, imágenes y gráficos en dos dimensiones de gran calidad. Java Media FRAMEWORK (JMF): En java la JMF (JAVA MEDIA FRAMEWORK) es un protocolo de transmisión de datos y uno de los elementos gráficos simples y unificados para la reproducción de contenidos gráficos multimedia, como por ejemplo videos, audio y animaciones, principalmente. En las versiones del JDK anteriores a la 1.1 no incorporan esta API de JMF por lo tanto es necesario la instalación de un software que complementa el JDK. Java 3D La herramienta JAVA 3D™ es un conjunto clases que facilitan la creación de aplicaciones y APPLETSCON () y elementos 3D. Ofreciendo a los desarrolladores la posibilidad de manipular geometrías complejas en tres dimensiones. Las principales ventajas proporcionadas por la herramienta JAVA 3D™ frente a otros entornos de programación 3D son:  Permite la creación de aplicaciones graficas 3D independientemente del tipo de sistema empleado para su desarrollo.  Proporciona un conjunto de clases, interfaces y librerías de alto nivel las cuales permiten aprovechar la aceleración grafica proporcionada por el hardware que incorporan muchas de las nuevas tarjetas gráficas de la actualidad.  Las llamadas a los métodos 3D son transformadas en llamadas a las funciones de OPENGL O DIRECT3D. Oficialmente JAVA 3D™ forma parte de la API JMF, y se trata de unas librerías que se instalan independientemente de JMF.
  • 10. Java Beans: JAVA BEANS proporciona a los desarrolladores la posibilidad de escribir “Elementos o componentes de software”. Los componentes son elementos reutilizables que pueden incorporar gráficos a otros componentes como APPLETS () y aplicaciones utilizando herramientas gráficas para el desarrollo de aplicaciones que requieran gráficos de gran calidad. Cada uno de los componentes proporcionado por esta herramienta ofrece sus características concretas como por ejemplo los métodos públicos y sus eventos a los entornos gráficos de desarrollo permitiendo su desarrollo visual. Siendo equivalente a otros componentes de algunos de los entornos visuales como por ejemplo los controles de VISUAL BASIC. El BDK (BEANS DEVELOPER KIT) es un conjunto de herramientas para desarrollar JAVA BEANS y se trata de un kit no incorporado en los distintos JDK de java. RMI e JAVA IDL Las herramientas RMI (REMOTE METHOD INVOCATION) como JAVA IDL (JAVA INTERFACE DEFINITIONLANGUAGE) son utilizadas para desarrollar aplicaciones distribuidas. Este tipo de aplicaciones presentan las características de una aplicación que pude ejecutar funciones y métodos en varios ordenadores distintos. Manejando una referencia o un objeto que se encuentra en un ordenador remoto, siendo posible ejecutar métodos de ese objeto desde una aplicación que se ejecuta en un ordenador distinto. RMI Y JAVA IDL proporcionan los mecanismos mediante los cuales los distintos objetos distribuidos se comunican y se transmiten la información. RIM es una solución basada íntegramente en java e incorpora métodos para localizar los objetos remotos, comunicarse con ellos e incluso enviar un objeto de java.
  • 11. JAVA IDL permite entre objetos distribuidos utilizando CORBA (COMMON OBJECT REQUEST BROKER ARCHITECTURE). Siendo un estándar para la interconexión entre los objetos distribuidos. Java Native Interface (JNI): Java Native Interface (JNI) es un framework o (marco de trabajo) de programación que permite ejecutar códigos nativos de java y viceversa ejecutándolos en la máquina virtual java (JVM) la cual pueda interactuar con programas escritos en otros lenguajes como C, C++ y ensamblador. Llamamos máquina virtual a un entorno que de programación formado por:  El programa que ejecuta los bytecodes Java.  Las librerías (API) Java. JNI de java posee una interfaz bidireccional que permite a las aplicaciones desarrolladas en Java a llamar a códigos nativos y viceversa. Es decir soporta dos tipos de interfaces  Native Methods: La cual permite a Java llamar a funciones implementadas en librerías nativas.  Invocation Interface: Nos permite incrustar una máquina virtual Java en una aplicación nativa. La evolución de la herramienta JNI desde los orígenes de Java se incluía ya una forma de hacer llamadas nativas desde la máquina virtual a las librerías del host environment, así como el host environment a la maquina virtual. Siendo implantadas en la versión 1.0 del JDK de Java utilizando los paquetes Java.net y Java.awt.
  • 12. Conclusión Java es el lenguaje esencial para el desarrollo de aplicaciones en cualquier sistema operativo relacionado con el internet por lo que es de vital importancia en la actualidad ya que facilita el trabajo de los desarrolladores de aplicaciones. Los ficheros en java son herramientas importantes ya que pueden almacenar una gran cantidad de información de cualquier indalo. En este trabajo tratamos las clases más utilizadas que nos permiten la lectura y escritura de un fichero de java. Las clases imputStream y OutputStream derivan de manera directa de los paquetes java.lang.objec permitiendo trabajar con fiches asociados o distribuidos. Actualmente java es uno de los lenguajes de programación más utilizado por los los programadores por la gran cantidad de herramienta que brinda con relación al manejo de archivos, herramientas graficas reduciendo así los tiempos de desarrollo de aplicaciones. Java permite el desarrollo de aplicaciones web dinámicas desde un sistema de información distribuido como HTML basado en la red.
  • 13. Bibliografía Introducción a las ciencias de la computación Escrito por Peláez V. Canek, Elisa Viso Gurovich Programación orientada a objetos con Java Escrito por Francisco Durán, Francisco Gutiérrez, Ernesto Pimentel Entrada y salida de datos de java Escrito por Juan Pavon Mestras Introducción a la estructura de datos en java Escrito por Sonia Jaramillo Valbuena,Sonia Jaramillo Valbuena, Sergio Augusto Cardona Torres, Dumar Antonio Villa Zapata Introducción a la lógica Escrito por Beuchot Mauricio http://plato.acadiau.ca/courses/comp/dsilver/2513/EclipseAndTomcatTutorial/ http://www.programacion.com/articulo/swing_y_jfc_java_foundation_classes_94