Sei sulla pagina 1di 14

1

Desarrollo de aplicaciones vistosas: JavaFX y


JavaTV (Noviembre 2018)
Heydi Tomalá Vargas, Erick Gómez León, Juan Moreira Rodríguez, y Oscar Noboa Villagrán,
Miembros, Grupo 3 Curso 5-5
Universidad De Guayaquil
Facultad De Ciencias Matemáticas Y Físicas
Carrera De Ingeniería En Networking Y Telecomunicaciones
tomalaheydi@gmail.com, ejoshuagl@gmail.com, juan.moreirar@ug.edu.ec, oskrnoboav@gmail.com.


Resumen—El presente trabajo de investigación tiene como
objetivo el estudio de la historia, evolución y características de A. Descarga
Java y aquellas aplicaciones llamadas “vistosas”, específicamente La descarga de java es gratuita y se puede acceder a ella a través
JavaTV y JavaFX (Flex) de www.java .com. Es recomendable usar la versión más
reciente de Java para mejor estabilidad y rendimiento, esto
Palabras Clave—Java, JavaTV, JavaFX, RIA, API, TDI garantiza que las aplicaciones Java sigan ejecutándose de forma
correcta
I. INTRODUCCIÓN
B. Información Importante De Java
E n el amplio mundo de las aplicaciones solemos
encontrarnos con diferentes lenguajes de programación,
entornos, herramientas y entre todo esto llegamos al tan Java Runtime Environent (JRE) es el entorno de ejecución de
popular Java el cual por su eficacia y versatilidad java lo que se obtiene al descargar el software de Java. JRE está
multifuncional se ha involucrado en prácticamente todos los formado por Java Virtual Machine (JVM), clases del núcleo de
ámbitos de la tecnología, brindando los elementos necesarios la plataforma Java y bibliotecas de la plataforma
para la implementación del “futuro hoy”. Nuestra intención es
desarrollar, de manera detallada, la información sobre 2 de sus Java de soporte. JRE es la parte de tiempo de ejecución del
tecnologías que nos han resultado bastante interesantes, siendo software de Java, que es todo lo que necesita para ejecutarlo en
estas JavaFX, el cual es un entorno para crear aplicaciones RIA, el explorador web.
y JavaTV que es la tecnología de java para generar aplicaciones
para dispositivos de televisión y sus decodificadores. La API Java es una interfaz de programación de aplicaciones
Incluiremos detalles de sus inicios, creadores, versiones y (por sus siglas del inglés: Application Programming
características principales. Interface) provista por los creadores del lenguaje de
programación Java, que da a los programadores los medios
para desarrollar aplicaciones Java.
II. DEFINICION DE JAVA
Una Rich Internet application (RIA), "aplicación de Internet
Java es más que un lenguaje de programación o una enriquecida" o "aplicación rica de internet" (ARI), es una
plataforma informática que vio el mercado da por primera vez aplicación web que tiene la mayoría de las características de
en 1995, desarrollada por Sun Microsystems. Hay muchas las aplicaciones de escritorio tradicionales. [2]
aplicaciones y sitios web, objetos que no funcionarían a menos
que tenga Java instalado en su sistema operativo y cada día se
crean más programas en él. Java es eficaz rápido, seguro y C. Software Plugin De Java
confiable. Por su versatilidad es utilizada desde consolas para El software del plugin de Java es un componente de Java
juegos hasta súper computadoras, portátiles hasta centros de Runtime Environment. JRE permite applets escritos en el
datos, desde teléfonos móviles hasta Internet, “Java está en lenguaje de programación de Java para ejecutar en varios
todas partes” [1]. exploradores. El software del plugin de Java no es un programa
autónomo y no se puede instalar de forma independiente
2

D. Recomendaciones
El uso de Java, es muy efectivo cuando se usa de la manera
adecuada, es decir que para su correcto funcionamiento usar las
licencias originales de Oracle, las últimas versiones, es lo más
adecuado, de esta manera recomendamos que se mantenga
actualizada las carpetas (packs), ya que en cada actualización
se van disminuyendo errores que gracias al aporte de millones
de desarrolladores, se informa y se

Las aplicaciones JavaFX pueden ser ejecutadas en una amplia


III. JAVA FX (JAVA FLEX) variedad de dispositivos. En su versión (JavaFX 1.3, abril 2010)
permite crear aplicaciones de escritorio, para celulares, la Web,
Java FX es una tecnología Java en una plataforma para crear
aplicaciones RIA APLICACIONES RICAS EN TV, consolas de videojuegos, reproductores Blu-ray, entre otras
INTERNET. Escrita en Java FX Script y se puede ejecutar en plataformas planeadas. En octubre de 2011 fue lanzada la
dispositivos conectados, como paquetes de gráficos y medios y versión 2.0. Para el desarrollo de aplicaciones JavaFX un
que permite a los desarrolladores crear , diseñar probar
aplicaciones a los desarrolladores de manera consistente en lenguaje declarativo, tipado llamado JavaFX Script, además
multiplataforma. puede integrarse código Java en programas JavaFX. JavaFX es
Incluye los paquetes JDK Y JREa partir de JDK 7U6 [3] . compilado a código Java, por lo que las aplicaciones JavaFX
pueden ser ejecutadas en computadores con la máquina virtual
Java script es un lenguaje declarativo que se compila a bytecode
(subrutinas) y se ejecuta en Java Virtual Machine(JVM) de Java instalada (JRE), o celulares corriendo Java ME .

B. ¿Qué hace JavaFX?

JavaFX expande y maximisa la potencia de Java permitiendo


utilizar cualquier biblioteca de Java en aplicaciones JavaFX.
Asi, los desarrolladores pueden ampliar sus capacidades en Java
y utilizar la tecnología de presentación que JavaFX proporciona
para crear atractivo visual en las aplicaciones vistosas. Como
usuario, podrá ejecutar aplicaciones JavaFX en un explorador o
arrastrarlos y soltarlos en el escritorio.

C. Características de JavaFX

A. Historia  Permite a los desarrolladores integrar gráficos


vectoriales, animación, sonido y activos web de
vídeo en una aplicación interactiva, completa y
JavaFX fue anunciado en la conferencia de desarrolladores
atractiva
JavaOne en mayo de 2007 y salió al mercado en diciembre de
2008. La intención de Sun Microsystems respecto de JavaFX es  Amplía la tecnología Java permitiendo el uso de
competir en el espacio que ya ocupan Flash de Adobe, y cualquier biblioteca de Java en una aplicación
JavaFX
Silverlight de Microsoft. En conclusión la mayoría de los
lenguajes de script están orientados a las páginas web; éste está  Permite mantener un eficaz flujo de trabajo entre
orientado a las interfaces que son altamente animadas”. diseñador y desarrollador en el que los
diseñadores pueden trabajar en las herramientas
que deseen mientras colaboran con los
desarrolladores
3

 Puede usar las bibliotecas API de Java para febrero de 1993, y lo presentó al público en el año
acceder a las capacidades del sistema nativo y 1995. En el círculo de amigos de Matsumoto se le puso
conectarse a aplicaciones de middleware basadas el nombre de "Ruby" (en español rubí) como broma
aludiendo al lenguaje de programación "Perl" (perla).
en servidor
La última versión estable es la 1.8.6, publicada en
diciembre de 2007. El 26 de ese mismo mes salió Ruby
1.9.0, una versión en desarrollo que incorpora mejoras
D. Aplicaciones de JavaFX sustanciales en el rendimiento del lenguaje, que se
espera queden reflejadas en la próxima versión estable
Escrito como una API de Java, el código de la aplicación de producción del lenguaje, Ruby 1.9.0.1 Diferencias
JavaFX puede hacer referencia a las API de cualquier biblioteca en rendimiento entre la actual implementación de
de Java. Ruby (1.8.6) y otros lenguajes de programación más
arraigados han llevado al desarrollo de varias
La apariencia de las aplicaciones JavaFX se puede personalizar. máquinas virtuales para Ruby. Entre ésas se encuentra
Las Hojas de Estilo en Cascada (CSS) separan la apariencia y JRuby, un intento de llevar Ruby a la plataforma Java,
el estilo de la implementación para que los desarrolladores y Rubinius, un intérprete modelado basado en las
puedan concentrarse en la codificación.
máquinas virtuales de Smalltalk. Los principales
desarrolladores han apoyado la máquina virtual
CSS (siglas en inglés de Cascading Style Sheets), en español
proporcionada por el proyecto YARV, que se fusionó
"Hojas de estilo en cascada", es un lenguaje de diseño gráfico
para definir y crear la presentación de un documento en el árbol de código fuente de Ruby el 31 de
estructurado escrito en un lenguaje de marcado. Es muy usado diciembre de 2006, y se dará a conocer como Ruby
para establecer el diseño visual de los documentos web, e 1.9.0.1 [5]
interfaces de usuario.
 Scala fue diseñado por Martin Odersky y su grupo de
Los diseñadores gráficos pueden personalizar fácilmente el la Escuela Politécnica Federal de Lausana (Suiza).
aspecto y estilo de la aplicación a través del CSS. Si tiene un Tenía como objetivo combinar la programación
fondo de diseño web, o si desea separar la interfaz de usuario funcional con la programación orientada a objetos
(UI) (POO).
 Se inició en 2001 y la primera versión que se hizo
E. Disponibilidad JavaFX pública fue en 2003.en 2006 se lanzó una segunda
versión , conocida como Scala v2.0 [6].
JavaFX 2.2 y las versiones posteriores están totalmente
integradas con Java SE 7 Runtime Environment (JRE) y el F. Versiones JavaFX
Java Development Kit (JDK). Debido a que el JDK está
disponible para todas las plataformas de escritorio principales  JavaFX 1.1
(Windows, Mac OS X y Linux), las aplicaciones JavaFX  JavaFX 1.2
compiladas para JDK 7 y posteriores también se ejecutan en  JavaFX 1.3
todas las plataformas de escritorio principales. La  JavaFX 2.0
compatibilidad multiplataforma permite una experiencia de  JavaFX 2.0.3
tiempo de ejecución consistente para los desarrolladores y  JavaFX 2.1.1
usuarios de aplicaciones JavaFX. Oracle garantiza
lanzamientos sincronizados y actualizaciones en todas las La última versión de JavaFx fue lanzada el 13 de mayo del
plataformas y ofrece un amplio programa de soporte para 2012
compañías que ejecutan aplicaciones de misión crítica [4]
G. Librerías de JavaFX
JavaFX 2.2 y versiones posteriores tienen las siguientes
características:
Para poder identificar de mejor manera, las librerías de JavaFx
lo organizamos por requerimiento a realizar.
 API de Java. JavaFX es una biblioteca de Java que
consta de clases e interfaces que están escritas en
Como es de conocimiento, las librerías de JavaFx son de código
código Java nativo. Las API están diseñadas para ser
abierto, que ofrecen ayuda a los requerimientos que necesita el
una alternativa amigable a los lenguajes de Java desarrollador.
Virtual Machine (Java VM), como JRuby y Scala.
Dada la amplia gama de librerías, mencionaremos algunas muy
 Ruby El lenguaje fue creado por Yukihiro "Matz" prácticas.
Matsumoto, quien empezó a trabajar en Ruby el 24 de
4

widgets de mosaico para todo tipo de propósitos, alarmas,


 Diseño clima, presentación de datos para que pueda crear cuadros de
mando súper divertidos.
MigLayout:
Jsilhouette:
Es un motor de diseño escrito en Java puro, que valora la
simplicidad, la potencia y la fidelidad automática por Si necesitan usar formas personalizadas en su aplicación, como
plataforma. Las interfaces de usuario creadas con MigLayout una estrella o una dona, o flechas, puede usar JSilhouette. Las
son fáciles de mantener, lo más probable es que usted entienda formas en la biblioteca JavaFX predeterminada son limitadas, y
cómo se verá el diseño con solo mirar el código fuente. esta es una biblioteca de extensión muy útil.

Puede preparar rápidamente una IU que sea razonable para JideFx:


alinear sus elementos en filas y columnas automáticamente en
ningún momento. Si viene de Swing, puede recordar Jide: un marco para widgets
como un campo de texto con formato, o campos de texto
numérico, junto con la validación, etc. No busques más; Puedes
mirar el JideFX y obtener información sobre herramientas,
animaciones, widgets de búsqueda, todo tipo de controles de
texto.

RichTextFx:

Proporciona un área de texto para JavaFX con API para diseñar


rangos de texto. Está pensado como una base para editores de
texto enriquecido y editores de código con resaltado de
sintaxis. Si necesita mostrar texto con formato complicado o
tener un resaltado de sintaxis personalizado, RichTextFX es la
biblioteca que se debe extraer

 Widgets

Medusa:

Es una biblioteca JavaFX para Gauges de Gerrit Grunwald. El


objetivo principal de este proyecto es proporcionar indicadores
que puedan configurarse de varias maneras. Cuenta con
hermosos widgets para las métricas de informes, disponibles
bajo la Licencia Apache 2.0 y si está realizando algún informe,
debe verificarlo.

JFXtras:

Es una biblioteca de componentes de código abierto que un


desarrollador de Java le gustaría tener a su disposición, pero que
falta en la biblioteca de JavaFX. Puede obtener widgets de
calendario, diferentes tipos de widgets de selección de fecha y
hora, menús que aparecen al hacer clic, etc. Si un componente
aún no está maduro, puede residir temporalmente en la
biblioteca de JFXtras-labs, pero después de un tiempo y
TilesFX: exposición, pasará a ser el principal.

Es otra biblioteca de widgets de Gerrit, que por cierto es un


desarrollador increíble. TilesFX le ofrece un conjunto de
5

ControlsFx

Puede pensar en ControlsFX como un área de juegos o una


incubadora para los widgets que finalmente se integrarán en el
JavaFX. Actualmente, puedes encontrar widgets como bread-
mig-bar, diferentes barras de botones, decoradores para los
campos de entrada para CSS, fuentes, etc.

Gluon Maps

No hay mucho que decir acerca de una biblioteca de


mapas, Gluon Maps ofrece un controlador de mapas con buen
aspecto. Tiene una licencia dual, GPL3 o una licencia dual que
puede comprar y usar en una aplicación que no sea GPL3. El
widget viene con un backend que sabe cómo alimentar la
información de datos a su mapa. Y puedes usar diferentes
backends para eso: OpenStreetMap o similar.

OrsonCharts

Finalmente, si te gustan los gráficos, deberías


revisar OrsonCharts. Tiene una amplia gama de varios
gráficos que se ven mejor que las soluciones estándar de
JavaFX. También tiene una licencia dual, por lo que debe tener
cuidado de no sobrepasar los límites de la licencia.
BootstrapFx
Looks
Otra biblioteca de apariencia que debe considerar usar
Lo mejor de JavaFX es que la mayoría de los widgets admiten es BootstrapFX . BootstrapFX es un puerto parcial de Twitter
el estilo personalizado con el CSS. Bootstrap para JavaFX. Proporciona una hoja de estilo CSS
que se asemeja mucho a la original, mientras que se personaliza
Jfoenix a medida para el sabor CSS único de JavaFX

Es una implementación del diseño del material. Viene con una FontaweasomeFx
gran cantidad de componentes que se parecen mucho a las
pautas de diseño del material y todas las animaciones Fontawesome es una fuente de iconos web, que proporciona
necesarias: menús deslizantes, ventanas emergentes que vuelan toneladas de imágenes para usar en los elementos para darles
dentro y fuera, selectores de color y mucho más. sabor. Lo bueno es que las fuentes de iconos web encajan
perfectamente en JavaFX, ya que es liviana y consiste en
imágenes vectoriales escalables. FontawesomeFX te da acceso
a iconos increíbles.

Ikonli

es otro proyecto que trata con los iconos. Estos también le


brindan acceso a iconos de desarrollador, iconos del clima, etc.,
con una fuente impresionante, y lo que es aún mejor si ofrece
más posibilidades de personalizarlos, incluidos los iconos
apilados para que pueda tener un icono en un círculo o algo así
6

Afterburner.fx

Es un marco JavaFX de opinión creado por Adam Bien, y


anteriormente era parte del proyecto de control de
airhacks. Afterburner es un "Just-Enough-Framework" que
prefiere la convención sobre la configuración y le proporciona
lo siguiente: "Zero-Configuration" javax.inject.Inject DI de
modelos o servicios en presentadores, unificación de
presentadores basada en convenciones, vista, FXML y
css; Carga de paquetes de recursos convencionales e inyección
de las propiedades del sistema y las propiedades de
configuración local.

Afterburner es un marco muy pequeño, pero es un esfuerzo


increíble y un gran punto de partida.

JacpFx

JacpFX es un marco de aplicación de UI basado en JavaFX, que


permite a los desarrolladores estructurar una aplicación con
componentes reutilizables y acoplados de manera
 Pruebas flexible. Separa la ejecución de la tarea de los cambios en la
interfaz de usuario en su aplicación cliente, por lo que no cuelga
Si no tiene mucha experiencia con JavaFX, debe preguntarse el hilo de la interfaz de usuario. JacpFX también incluye un bus
cuál es la mejor manera de probar su aplicación y los de eventos pre configurado, para que pueda unir fácilmente
componentes que contiene todos sus componentes en un solo sistema que se comunique a
través de mensajes asíncronos.
TestFx
MvvmFX
Es quizás el proyecto más útil destinado a probar la aplicación
JavaFX. Viene con un buen DSL que incorpora las
interacciones de la interfaz de usuario como clics y arrastrar y Es un marco de aplicación que le proporciona los componentes
soltar. Este es un ejemplo de una prueba que proviene del necesarios para implementar el patrón Model-View-
archivo readfX de TestFX. ¿Ves lo legible que es el código? ViewModel con JavaFX.

Griffon

Es una plataforma de desarrollo de aplicaciones de escritorio


para la JVM. Muy inspirado en Grails , Griffon aprovecha el
uso de Groovy y la convención sobre la configuración. El kit de
herramientas Swing es el kit de herramientas de interfaz de
usuario predeterminado, sin embargo, se pueden usar otros, por
ejemplo, JavaFX.
Griffon fomenta el uso de la arquitectura Modelo-Vista-
Controlador y lo alienta a concentrarse en la lógica de su
negocio.
 Marcos

Al igual que con cualquier plataforma de desarrollo, con


JavaFX, puede tener preguntas sobre cuál es la mejor
arquitectura para su código. ¿Dónde debería colocar sus
recursos, cómo vincular a los controladores responsables de la
lógica empresarial y la UI que maneja las acciones de los
usuarios, etc.? Afortunadamente, hay varios grandes marcos de
JavaFX que le dan diferentes ventajas al responder a las
preguntas de la arquitectura de JavaFX.
7

Basilisk  Creamos una función que retorna el cubo de un


número pasado por parámetro, en este caso 3. Dentro
de la función cubo se ha declarado otra función que
Es similar a Griffon, pero también está dirigido a plataformas
calcula el cuadrado que es llamada al momento de
móviles. En pocas palabras, Basilisk aprovecha JavaFX y
realizar el cálculo
JavafXPorts para llevar la misma base de código a las
plataformas de escritorio y móviles por igual.
Los desarrolladores de Griffon deben conocer a Basilisk, ya que
muchas de las funciones y comandos de Griffon se comparten
con Basilisk. [7]

IV. FUNCIONES EN JAVAFX

Las funciones solo contienen declaración de variables,


funciones u operaciones, y devolución de valores (mediante
return)

Para utilizar otro tipo de sentencias (como condicionales,


bucles, etc.) se deben utilizar en vez de funciones, las
operaciones. V. PROYECTO OPEN JFX

Al momento de invocar una función lo hacemos simplemente


llamándola por su nombre: A. ¿Qué es el proyecto JFX?

El proyecto OpenJFX es un proyecto de la comunidad OpenJFX


para compartir versiones anteriores del lenguaje JavaFX Script
y para colaborar en su desarrollo. En el futuro, el código de
JavaFX Script será de código abierto. Los modelos de gobierno,
Ejemplos licencias y comunidad se elaborarán a medida que el proyecto
evolucione.
 Creamos una función que retorna el doble del
número pasado por parámetro, en este caso 7:
B. JavaFX Script

JavaFX Script es un lenguaje scripting desarrollado por Sun


Microsystems, que forma parte de la familia de
tecnologías JavaFX.

JavaFX permite crear aplicaciones web para escritorio,


navegadores, dispositivos móviles, etc.

JavaFX Script originalmente se llamaba F3 (Form Follows


Function) y era desarrollado por Chris Oliver. Luego en
septiembre de 2005 su empresa, SeeBeyond Technology
Corporation, fue adquirida por Sun y Oliver se convirtió en
empleado de ésta. F3 fue cambiado de nombre al actual y se
convirtió en código abierto en JavaOne 2007.

F3 era un lenguaje interpretativo, sin embargo JavaFX Script


está enfocado principalmente como lenguaje compilado.
8

Programas compilados escritos en JavaFX Script pueden ser JavaFX. Son distribuidos como paquetes instalables y
ejecutados en cualquier plataforma que disponga de un Java proporcionan la misma experiencia de instalación e
Runtime reciente instalado. inicio que las aplicaciones nativas del sistema
operativo. [9]
Tiene las mismas características de estructuración, reutilización
y encapsulación de código (como paquetes, clases, herencia y VI HOLA MUNDO EN JAVAFX
unidades de compilación y despliegue separadas) que hacen
posible crear y mantener programas muy grandes utilizando la
tecnología Java.

C. Características de JavaFX Script

 Es un lenguaje scripting compilado, de tipiado estático


y declarativo.

 Provee ocultamiento de dato automático.

 Soporta modo de gráficos vectorizados, video y


componentes Swing a través de los APIs JavaFX.

 Es posible emplear JavaFX Script como lenguaje


interpretado [8]

 Java APIs: las APIs están escritas en código nativo


Java compatibles con otros lenguajes soportados por
la máquina virtual.

 FXML and Scene Builder: FXML es un lenguaje de


marcado que describe las interfaces de usuario. Se
pueden escribir directamente o usar la
herramienta JavaFX Scene Builder para crearlos con
una interfaz gráfica.

 WebView: permite embeber páginas HTML en las


aplicaciones JavaFX. Ofrece soporte para JavaScript.

 Built-in UI controls and CSS: proporciona cantidad de


controles para construir aplicaciones completas. El
estilo de los controles puede ser modificado con CSS.

 Canvas API: para dibujar directamente en la pantalla.

 Multitouch Support: soporte para gestos táctiles


múltiples en función de las posibilidades de la
plataforma subyacente.

 Hardware-accelerated graphics pipeline: haciendo uso


de la GPU se consiguen animaciones gráficas fluidas
en las tarjetas gráficas soportadas, si la gráfica no está
soportada de hace uso de la pila de software Java2D.

 High-performance media engine: soporta la


reproducción de contenido multimedia con baja
latencia basándose en GStreamer.

 Self-contained application deployment model: las


aplicaciones contenidas tiene todos los recursos y una
copia privada de los entornos de ejecución de Java y
9

(http://www.varitek.ec/index.php/temas/inventos/la-television-
digital)
Desde ese momento el mundo de la televisión digital ha crecido
y sigue creciendo, envolviendo a los desarrolladores de la
tecnología en una constante búsqueda de plataformas de
software, que al ser fiables se conviertan en la base para la
nueva generación de la televisión.
(http://www.angelfire.com/retro/lamalahora/siete.html) es aquí
donde nace Java TV enfocándose en la interacción con el
televidente, brindando información exacta, participación activa
y respuestas inmediatas, de hecho a eso nos referimos al hablar
de TDI (Televisión Digital Interactiva).
Los TDI permiten cubrir las necesidades de la sociedad,
complementan los programas de televisión y brindan sistemas
de prevención y alerta; “La interactividad es la capacidad de
ofrecer contenidos adicionales a los programas de
VI. JAVA TV API televisión”, es decir, el usuario puede ver información
relacionada al contenido audiovisual, la programación de los
Dentro de este gran mundo de Java nos encontramos con
canales, participar en concursos, votaciones, comprar productos
JavaTV que es una tecnología basada en Java ME (entorno
flexible y sólido para aplicaciones que se ejecutan en o servicios y todo esto es posible gracias a las aplicaciones que
dispositivos móviles e integrados) que provee una solución complementan la programación.
(http://www.televisiondigital.gob.es/TelevisionDigital/tecnolo
eficaz, segura y fácil de implementar para desarrollar
gias/Interactividad/Paginas/interactividad.aspx) Cabe destacar
aplicaciones Java que se ejecutan en dispositivos de TV y
que es importante el uso de un middleware y un terminal de
decodificadores. Esto permite a los desarrolladores crear
acceso llamado Set-Top-Box el cual permite el manejo y
fácilmente aplicaciones, como las Guías de programas
electrónicos (EPG), los clientes de video a pedido (VOD), los control de estas aplicaciones.
El primer país sudamericano en adoptar este cambio fue Brasil,
juegos y las aplicaciones educativas, las aplicaciones para
en 1999 con el estándar ISDB-T. En Ecuador la propuesta aún
acceder a datos de Internet (por ejemplo, el clima, los
se encuentra en etapa inicial.
marcadores de noticias, las redes sociales) y, en la mayoría de
(https://myslide.es/documents/paper-javatv.html) Esta gran
los títulos de discos Blu-ray, la interfaz de usuario y el
tecnología tuvo sus inicios en el año 2010 el 25 de marzo bajo
contenido adicional.
el estándar japones - brasileño ISDB-Tb (Integratedservice
Digital Broadcasting Terrestrial) permitiendo así la
A. Historia implementación de nuevos servicios audiovisuales y llevando a
pasos agigantados el mejoramiento de la interactividad en
Recordando que una API (application programming multiservicios, a través del middleware Ginga. (Tesis de java)
interface) es, según su traducción exacta al español, Algunas Definiciones
una interfaz de programación de aplicaciones, nos encontramos Middleware: El middleware es el software de múltiples
con JAVA TV la cual es la Tecnología de JAVA para TV propósitos que proporciona servicios a las aplicaciones, fuera
Digital. de lo que ofrece el sistema operativo. Cualquier software entre
La Televisión Digital ha sido uno de los acontecimientos más el kernel y las
grandes de la historia al ser considerada como una revolución aplicaciones de
en el modo de presentación de imágenes, audio y video. Desde usuario puede ser
el momento en que el hombre ha iniciado su búsqueda de middleware. (
mejorar la calidad de lo que ve, comenzando por el primer
invento patentado por Vladimir Zworykin en 1923 conocido
como Iconoscopio el tubo disector de imagen el cual estaba
compuesto por un rayo de electrones de alta velocidad sobre un
mosaico fotoemisor que partía la imagen en miles de elementos,
lo que ahora conocemos como píxeles
(https://es.wikipedia.org/wiki/Iconoscopio); pasando por
la televisión a color inventada por Peter GoldMark en 1946; https://www.redhat.com/es/topics/middleware/what-is-
llegamos a la televisión digital en 1994 la cual en sus inicios era middleware)
vía satélite, ofreciendo una calidad de imagen y sonido muy Ginga: es el Middleware Abierto del Sistema de TV Digital
superior a la televisión tradicional. Una de sus características (ISDB-TB). Se presenta bajo la integración de un gran grupo
especiales es que trajeron consigo una pantalla ancha de tecnologías desarrolladas y estandarizadas en Japón e
panorámica (widescreen) que permite ver imágenes en un innovaciones brasileñas lo cual lo convierten en la
formato similar las pantallas de cine. especificación de middleware más avanzada, surge como
resultado de proyectos de investigación dirigidos por los
10

laboratorios Telemídia en la PUC-Rio y LAViD en la UFPB. (https://docs.oracle.com/javame/config/cdc/opt-


Toda la información oficial sobre el Ginga tener referencias en pkgs/api/jsr927/javax/tv/graphics/package-
este sitio. (http://www.ginga.org.br/es) summary.html)
TDI: (Televisión Digital Interactiva) es un sistema de
transmisión y recepción de audio, imágenes y videos a distancia
 Javax.tv.locator: suministra una referencia de la
a través de técnicas digitales.
(https://es.slideshare.net/EspTmGDST/televisin-digital- información de ubicación de los objetos que se pueden
interactiva-47257000) direccionar dentro de la API de Java TV. Un
Set-Top-Box: es el dispositivo receptor o decodificador de las localizador podría presentarse como un objeto
señales de televisión (analógicas o digitales), para luego ser independiente de transporte y aun así poseer múltiples
mostrada o visualizada en el televisor u otro dispositivo de asignaciones para transportar localizadores
televisión. dependientes.
(https://es.wikipedia.org/wiki/Decodificador_de_televisi%C3
%B3n)  Javax.tv.media: Proporciona controles y eventos para
la gestión de medios en tiempo real en un entorno de
¿Qué ofrece Java TV? televisión.
La API Java TV brinda una plataforma ideal para el desarrollo  Javax.tv.net: Proporciona acceso a los datagramas IP
de los servicios interactivos, que actualmente están siendo transmitidos en el flujo de transmisión
implementados. La versatilidad de Java provee un lenguaje de
 Javax.tv.service: Proporciona mecanismos para
programación que ofrece a los desarrolladores el control y la
flexibilidad en el ver y sentir (look and feel) de las aplicaciones acceder a la base de datos de información de servicio
que están creando, esto les permite cumplir en alto grado las (SI) y las API que representan los elementos SI que
demandas de la audiencia actual al entregar de manera contiene.
significativa las experiencias interactivas más dinámicas  Java.tv.util: Brinda API para crear y administrar
prometiendo seguridad, extensibilidad y portabilidad. eventos de temporizador.
(http://www.angelfire.com/retro/lamalahora/siete.html)
 Java.tv.xlet: Ofrece interfaces utilizadas por las
Elementos que forman parte en interactividad aplicaciones y el administrador de aplicaciones para
 Proveedor de aplicaciones interactivas: su trabajo es comunicarse. Esta interfaz le permite a un
desarrollar este tipo de aplicaciones (juegos, administrador de aplicaciones crear, inicializar,
navegadores, guías electrónicas de programación iniciar, pausar y destruir un Xlet.
(EPGs), servicios de información mejorados,
 JAVA TV
aplicaciones educativas, servicios públicos a través de
la televisión (T-Administración), etc.)
o Streaming de audio y vídeo
 Radiodifusor: integra las aplicaciones interactivas
desarrolladas por el proveedor en su oferta de o Acceso a datos en el canal de transmisión
contenidos audiovisuales.
 Operador de red: se encarga de la difusión de los o Aplicaciones con interactividad
contenidos audiovisuales digitales junto con las
o Gestión del Ciclo de vida de las
aplicaciones interactivas integradas.
aplicaciones
 Suministrador de equipos terminales interactivos: son
aquellos sobre los que se ejecutan las aplicaciones.
(http://www.televisiondigital.gob.es/TelevisionDigita
l/tecnologias/Interactividad/Paginas/interactividad.as
px)

LIBRERIAS JAVA TV
 Javax.tv.graphics: Proporciona un mecanismo
mediante el cual los Xlets pueden descubrir su
contenedor raíz y describe un mecanismo para la
mezcla alfa. Posee una función de pausa / reanudación
la cual es esencial para un entorno
de decodificador (STB), que tiene recursos de
memoria limitados y restricciones
de ancho de banda del proveedor de cabecera .
11

B. Footnotes
Number footnotes separately in superscripts (Insert |
Footnote).1 Place the actual footnote at the bottom of the
column in which it is cited; do not put footnotes in the reference
list (endnotes). Use letters for table footnotes (see Table I).
APPENDIX
Appendixes, if needed, appear before the acknowledgment.
VII. SUBMITTING YOUR PAPER FOR REVIEW
ACKNOWLEDGMENT
A. Review Stage Using Word 6.0 or Higher
The preferred spelling of the word “acknowledgment” in
If you want to submit your file with one column
American English is without an “e” after the “g.” Use the
electronically, please do the following:
singular heading even if you have many acknowledgments.
--First, click on the View menu and choose Print Layout.
Avoid expressions such as “One of us (S.B.A.) would like to
--Second, place your cursor in the first paragraph. Go to
thank ... .” Instead, write “F. A. Author thanks ... .” In most
the Format menu, choose Columns, choose one column Layout,
cases, sponsor and financial support acknowledgments are
and choose “apply to whole document” from the dropdown
placed in the unnumbered footnote on the first page, not here.
menu.
--Third, click and drag the right margin bar to just over 4
REFERENCES AND FOOTNOTES
inches in width.
A. References The graphics will stay in the “second” column, but you can
References need not be cited in text. When they are, number drag them to the first column. Make the graphic wider to push
citations on the line, in square brackets inside the punctuation. out any text that may try to fill in next to the graphic.
Multiple references are each numbered with separate brackets. B. Final Stage Using Word 6.0
When citing a section in a book, please give the relevant page
When you submit your final version (after your paper has
numbers. In text, refer simply to the reference number. Do not
been accepted), print it in two-column format, including figures
use “Ref.” or “reference” except at the beginning of a sentence:
and tables. You must also send your final manuscript on a disk,
“Reference [3] shows ... .” Please do not use automatic endnotes
via e-mail, or through a Web manuscript submission system as
in Word, rather, type the reference list at the end of the paper
directed by the society contact. You may use Zip for large files,
using the “References” style.
or compress files using Compress, Pkzip, Stuffit, or Gzip.
Reference numbers are set flush left and form a column of
Also, send a sheet of paper or PDF with complete contact
their own, hanging out beyond the body of the reference. The
information for all authors. Include full mailing addresses,
reference numbers are on the line, enclosed in square brackets.
telephone numbers, fax numbers, and e-mail addresses. This
In all references, the given name of the author or editor is
information will be used to send each author a complimentary
abbreviated to the initial only and precedes the last name. Use
copy of the journal in which the paper appears. In addition,
them all; use et al. only if names are not given. Use commas
designate one author as the “corresponding author.” This is the
around Jr., Sr., and III in names. Abbreviate conference titles.
author to whom proofs of the paper will be sent. Proofs are sent
When citing IEEE transactions, provide the issue number, page
to the corresponding author only.
range, volume number, year, and/or month if available. When
referencing a patent, provide the day and the month of issue, or C. Review Stage Using ScholarOne® Manuscripts
application. References may not include all information; please Contributions to the Transactions, Journals, and Letters
obtain and include relevant information. Do not combine may be submitted electronically on IEEE’s on-line manuscript
references. There must be only one reference with each number. submission and peer-review system, ScholarOne® Manuscripts.
If there is a URL included with the print reference, it can be You can get a listing of the publications that participate in
included at the end of the reference. ScholarOne at
Other than books, capitalize only the first word in a paper title, http://www.ieee.org/publications_standards/publications/autho
except for proper nouns and element symbols. For papers rs/authors_submission.html First check if you have an existing
published in translation journals, please give the English account. If there is none, please create a new account. After
citation first, followed by the original foreign-language citation logging in, go to your Author Center and click “Submit First
See the end of this document for formats and examples of Draft of a New Manuscript.”
common references. For a complete discussion of references Along with other information, you will be asked to select
and their formats, see “The IEEE Style Manual,” available as a the subject from a pull-down list. Depending on the journal,
PDF link off the Author Digital Toolbox main page. there are various steps to the submission process; you must
complete all steps for a complete submission. At the end of each
step you must click “Save and Continue”; just uploading the

1
It is recommended that footnotes be avoided (except for the unnumbered
footnote with the receipt date on the first page). Instead, try to integrate the
footnote information into the text.
12

paper is not sufficient. After the last step, you should see a special issue of most transactions publications.
confirmation that the submission is complete. You should also At least two reviews are required for every paper submitted.
receive an e-mail confirmation. For inquiries regarding the For conference-related papers, the decision to accept or reject a
submission of your paper on ScholarOne Manuscripts, please paper is made by the conference editors and publications
contact oprs-support@ieee.org or call +1 732 465 5861. committee; the recommendations of the referees are advisory
ScholarOne Manuscripts will accept files for review in only. Indecipherable English is a valid reason for rejection.
various formats. Please check the guidelines of the specific There is a service available that will help you improve your
journal for which you plan to submit. English for a fee, and the link to that service can be found at
You will be asked to file an electronic copyright form http://www.ieee.org/web/publications/authors/transjnl/index.html.
immediately upon completing the submission process (authors Authors of rejected papers may revise and resubmit them as
are responsible for obtaining any security clearances). Failure regular papers, whereupon they will be reviewed by two new
to submit the electronic copyright could result in publishing
referees.
delays later. You will also have the opportunity to designate
your article as “open access” if you agree to pay the IEEE open
access fee.
IX. PUBLICATION PRINCIPLES
The two types of contents of that are published are; 1) peer-
D. Final Stage Using ScholarOne Manuscripts
reviewed and 2) archival. The Transactions and Journals
Upon acceptance, you will receive an email with specific Department publishes scholarly articles of archival value as
instructions regarding the submission of your final files. To well as tutorial expositions and critical reviews of classical
avoid any delays in publication, please be sure to follow these subjects and topics of current interest.
instructions. Most journals require that final submissions be Authors should consider the following points:
uploaded through ScholarOne Manuscripts, although some may
1) Technical papers submitted for publication must advance
still accept final submissions via email. Final submissions
the state of knowledge and must cite relevant prior work.
should include source files of your accepted manuscript, high
2) The length of a submitted paper should be commensurate
quality graphic files, and a formatted pdf file. If you have any
questions regarding the final submission process, please contact with the importance, or appropriate to the complexity, of
the administrative contact for the journal. the work. For example, an obvious extension of previously
In addition to this, upload a file with complete contact published work might not be appropriate for publication or
information for all authors. Include full mailing addresses, might be adequately treated in just a few pages.
telephone numbers, fax numbers, and e-mail addresses. 3) Authors must convince both peer reviewers and the editors
Designate the author who submitted the manuscript on of the scientific and technical merit of a paper; the
ScholarOne Manuscripts as the “corresponding author.” This is standards of proof are higher when extraordinary or
the only author to whom proofs of the paper will be sent. unexpected results are reported.
4) Because replication is required for scientific progress,
papers submitted for publication must provide sufficient
information to allow readers to perform similar
E. Copyright Form
experiments or calculations and use the reported results.
An IEEE copyright form should accompany your final Although not everything need be disclosed, a paper must
submission. You can get a .pdf, .html, or .doc version at contain new, useable, and fully described information. For
http://www.ieee.org/copyright. Authors are responsible for example, a specimen’s chemical composition need not be
obtaining any security clearances. reported if the main purpose of a paper is to introduce a
new measurement technique. Authors should expect to be
VIII. EDITORIAL POLICY challenged by reviewers if the results are not supported by
Submission of a manuscript is not required for participation adequate data and critical details.
in a conference. Do not submit a reworked version of a paper 5) Papers that describe ongoing work or announce the latest
you have submitted or published elsewhere. Do not publish technical achievement, which are suitable for presentation
“preliminary” data or results. The submitting author is at a professional conference, may not be appropriate for
responsible for obtaining agreement of all coauthors and any publication.
consent required from sponsors before submitting a paper. The
IEEE Transactions and Journals Department strongly
discourages courtesy authorship. It is the obligation of the REFERENCES
authors to cite relevant prior work. Basic format for books:
The IEEE Transactions and Journals Department does not [1] J. K. Author, “Title of chapter in the book,” in Title of His Published Book,
publish conference records or proceedings. The department xth ed. City of Publisher, Country if not
[2] USA: Abbrev. of Publisher, year, ch. x, sec. x, pp. xxx–xxx.
does publish papers related to conferences that have been
Examples:
recommended for publication on the basis of peer review. As a [3] G. O. Young, “Synthetic structure of industrial plastics,” in Plastics, 2nd
matter of convenience and service to the technical community, ed., vol. 3, J. Peters, Ed. New York: McGraw-Hill, 1964, pp. 15–
these topical papers are typically collected and published in one 64.
13

[4] W.-K. Chen, Linear Networks and Systems. Belmont, CA: Corp., CA. [Online]. Available:
Wadsworth, 1993, pp. 123–135. http://www.amdahl.com/doc/products/bsg/intra/infra/html

Basic format for periodicals: Basic format for computer programs and electronic documents
[5] J. K. Author, “Name of paper,” Abbrev. Title of Periodical, vol. x, no. x, (when available online): ISO recommends that capitalization
pp. xxx-xxx, Abbrev. Month, year. follow the accepted practice for the language or script in
Examples: which the information is given.
[6] J. U. Duncombe, “Infrared navigation—Part I: An assessment Example:
of feasibility,” IEEE Trans. Electron Devices, vol. ED-11, no. 1, pp. 34–
[23] A. Harriman. (1993, June). Compendium of genealogical software.
39, Jan. 1959.
Humanist. [Online]. Available e-mail: HUMANIST@NYVM.ORG
[7] E. P. Wigner, “Theory of traveling-wave optical laser,” Phys. Rev.,
Message: get GENEALOGY REPORT
vol. 134, pp. A635–A646, Dec. 1965.
[8] E. H. Miller, “A note on reflector arrays,” IEEE Trans. Antennas
Propagat., to be published. Basic format for patents (when available online):
[24] Name of the invention, by inventor’s name. (year, month day). Patent
Number [Type of medium]. Available: site/path/file
Basic format for reports: Example:
[9] J. K. Author, “Title of report,” Abbrev. Name of Co., City of Co., Abbrev.
[25] Musical toothbrush with adjustable neck and mirror, by L.M.R. Brooks.
State, Rep. xxx, year.
(1992, May 19). Patent D 326 189
Examples: [Online]. Available: NEXIS Library: LEXPAT File: DESIGN
[10] E. E. Reber, R. L. Michell, and C. J. Carter, “Oxygen absorption in the
earth’s atmosphere,” Aerospace Corp., Los Angeles, CA, Tech. Rep. TR-
0200 (4230-46)-3, Nov. 1988. Basic format for conference proceedings (published):
[11] J. H. Davis and J. R. Cogdell, “Calibration program for the 16-foot [26] J. K. Author, “Title of paper,” in Abbreviated Name of Conf., City of
antenna,” Elect. Eng. Res. Lab., Univ. Texas, Austin, Tech. Memo. NGL- Conf., Abbrev. State (if given), year, pp. xxxxxx.
006-69-3, Nov. 15, 1987. Example:
[27] D. B. Payne and J. R. Stern, “Wavelength-switched pas- sively coupled
single-mode optical network,” in Proc. IOOC-ECOC, 1985,
Basic format for handbooks: pp. 585–590.
[12] Name of Manual/Handbook, x ed., Abbrev. Name of Co., City of Co.,
Abbrev. State, year, pp. xxx-xxx. Example for papers presented at conferences (unpublished):
[28] D. Ebehard and E. Voges, “Digital single sideband detection for
Examples: interferometric sensors,” presented at the 2nd Int. Conf. Optical Fiber
[13] Transmission Systems for Communications, 3rd ed., Western Electric Co.,
Sensors, Stuttgart, Germany, Jan. 2-5, 1984.
Winston-Salem, NC, 1985, pp. 44–60.
[14] Motorola Semiconductor Data Manual, Motorola Semiconductor
Products Inc., Phoenix, AZ, 1989.
Basic format for patents:
[29] J. K. Author, “Title of patent,” U.S. Patent x xxx xxx, Abbrev. Month, day,
year.
Basic format for books (when available online): Example:
[15] Author. (year, month day). Title. (edition) [Type of medium]. volume [30] G. Brandli and M. Dick, “Alternating current fed power supply,”
(issue). Available: site/path/file U.S. Patent 4 084 217, Nov. 4, 1978.
Example:
[16] J. Jones. (1991, May 10). Networks. (2nd ed.) [Online]. Available: Basic format for theses (M.S.) and dissertations (Ph.D.):
http://www.atm.com [31] J. K. Author, “Title of thesis,” M.S. thesis, Abbrev. Dept., Abbrev. Univ.,
City of Univ., Abbrev. State, year.
Basic format for journals (when available online): [32] J. K. Author, “Title of dissertation,” Ph.D. dissertation, Abbrev. Dept.,
[17] Author. (year, month). Title. Journal. [Type of medium]. volume (issue), Abbrev. Univ., City of Univ., Abbrev. State, year.
pages. Available: site/path/file
Examples:
Example: [33] J. O. Williams, “Narrow-band analyzer,” Ph.D. dissertation, Dept. Elect.
[18] R. J. Vidmar. (1992, Aug.). On the use of atmospheric plasmas as Eng., Harvard Univ., Cambridge, MA, 1993.
electromagnetic reflectors. IEEE Trans. Plasma Sci. [Online]. 21(3), [34] N. Kawasaki, “Parametric study of thermal and chemical nonequilibrium
pp. 876–880. Available: http://www.halcyon.com/pub/journals/21ps03- nozzle flow,” M.S. thesis, Dept. Electron. Eng., Osaka Univ., Osaka,
vidmar Japan, 1993.

Basic format for papers presented at conferences (when Basic format for the most common types of unpublished
available online): references:
[19] Author. (year, month). Title. Presented at Conference title. [Type of [35] J. K. Author, private communication, Abbrev. Month, year.
Medium]. Available: site/path/file [36] J. K. Author, “Title of paper,” unpublished.
Example: [37] J. K. Author, “Title of paper,” to be published.
[20] PROCESS Corp., MA. Intranets: Internet technologies deployed Examples:
behind the firewall for corporate productivity. Presented at [38] A. Harrison, private communication, May 1995.
INET96 Annual Meeting. [Online]. Available: [39] B. Smith, “An approach to graphs of linear forms,” unpublished.
http://home.process.com/Intranets/wp2.htp [40] A. Brahms, “Representation error for real numbers in binary computer
arithmetic,” IEEE Computer Group Repository, Paper R-67-85.
Basic format for reports and handbooks (when available
online): Basic format for standards:
[21] Author. (year, month). Title. Comp an y. City, State or Country. [41] Title of Standard, Standard number, date.
[Type of Medium].Available: site/path/file Examples:
Example: [42] IEEE Criteria for Class IE Electric Systems, IEEE Standard 308, 1969.
[22] S. L. Ta lleen . (199 6, Ap r.). Th e Intranet Archi- [43] Letter Symbols for Quantities, ANSI Standard Y10.5-1968.
te c tu r e : M a n a g i n g i n f o r m a t i o n i n t h e n e w paradigm. Amdahl
14

First A. Author (M’76–SM’81–F’87) and an Assistant Professor with the Mechanical Engineering
the other authors may include biographies Department, Texas A&M University, College Station. He is the
at the end of regular papers. Biographies author of three books, more than 150 articles, and more than 70
are often not included in conference- inventions. His research interests include high-pressure and
related papers. This author became a high-density nonthermal plasma discharge processes and
Member (M) of IEEE in 1976, a Senior applications, microscale plasma discharges, discharges in
Member (SM) in 1981, and a Fellow (F) in liquids, spectroscopic diagnostics, plasma propulsion, and
1987. The first paragraph may contain a innovation plasma applications. He is an Associate Editor of the
place and/or date of birth (list place, then journal Earth, Moon, Planets, and holds two patents.
date). Next, the author’s educational background is listed. The Mr. Author was a recipient of the
degrees should be listed with type of degree in what field, which International Association of
institution, city, state, and country, and year the degree was Geomagnetism and Aeronomy Young
earned. The author’s major field of study should be lower- Scientist Award for Excellence in 2008, the
cased. IEEE Electromagnetic Compatibility
The second paragraph uses the pronoun of the person (he or Society Best Symposium Paper Award in
she) and not the author’s last name. It lists military and work 2011, and the American Geophysical
experience, including summer and fellowship jobs. Job titles Union Outstanding Student Paper Award
are capitalized. The current job must have a location; previous in Fall 2005.
positions may be listed without one. Information concerning
previous publications may be included. Try not to list more than
three books or published articles. The format for listing
publishers of a book within the biography is: title of book (city,
state: publisher name, year) similar to a reference. Current and
previous research interests end the paragraph.
The third paragraph begins with the author’s title and last Third C. Author, Jr. (M’87) received the B.S. degree in
name (e.g., Dr. Smith, Prof. Jones, Mr. Kajor, Ms. Hunter). List mechanical engineering from National Chung Cheng
any memberships in professional societies other than the IEEE. University, Chiayi, Taiwan, in 2004 and the M.S. degree in
Finally, list any awards and work for IEEE committees and mechanical engineering from National Tsing Hua University,
publications. If a photograph is provided, the biography will be Hsinchu, Taiwan, in 2006. He is currently pursuing the Ph.D.
indented around it. The photograph is placed at the top left of degree in mechanical engineering at Texas A&M University,
the biography, and should be of good quality, professional- College Station.
looking, and black and white (see above example). Personal From 2008 to 2009, he was a Research Assistant with the
hobbies will be deleted from the biography. Following are two Institute of Physics, Academia Sinica, Tapei, Taiwan. His
examples of an author’s biography. research interest includes the development of surface
processing and biological/medical treatment techniques using
nonthermal atmospheric pressure plasmas, fundamental study
of plasma sources, and fabrication of micro- or nanostructured
surfaces.
Mr. Author’s awards and honors include the Frew Fellowship
(Australian Academy of Science), the I. I. Rabi Prize (APS), the
Second B. Author was born in Greenwich European Frequency and Time Forum Award, the Carl Zeiss
Village, New York City, in 1977. He Research Award, the William F. Meggers Award and the
received the B.S. and M.S. degrees in Adolph Lomb Medal (OSA).
aerospace engineering from the University
of Virginia, Charlottesville, in 2001 and
the Ph.D. degree in mechanical
engineering from Drexel University,
Philadelphia, PA, in 2008.
From 2001 to 2004, he was a Research Assistant with the
Princeton Plasma Physics Laboratory. Since 2009, he has been

Potrebbero piacerti anche