PDF de programación - RyF Framework v2

Imágen de pdf RyF Framework v2

RyF Framework v2gráfica de visualizaciones

Publicado el 1 de Febrero del 2019
380 visualizaciones desde el 1 de Febrero del 2019
2,3 MB
33 paginas
Creado hace 10a (24/05/2013)
RyF Framework v2

Pablo Alejandro BALEZTENA

[email protected]

Leonardo ISASMENDI

[email protected]

Version 0.1, Noviembre 2012

Índice general

1. Introducción

2. Aplicación Simple en RyF Framework

.

.

.

.

2.1. Estructura de RyF .

.
2.1.1. Objetos en Lua .
2.1.2. Estructura de Clases
2.1.3. Configuración .
2.1.4. Widgets .
.
2.1.5.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Jerarquía de directorios de una aplicación típica . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2. Aplicación simple .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.1. Hello World!
2.2.2. Stages y MainStage .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.3. Agregando MainStage al StageLoader . . . . . . . . . . . . . . . . . .

.
.

.
.

.
.

3. Configuración Básica
.
.

.
3.1. Modules .
.
3.2. StagesLoader
.
3.3. FrameworkConfig .

.
.

.

.
.
.

.
.
.

.
.
.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4. Widgets

.

.
.

.
.

.
.
.
4.1.
Imágenes
.
.
.
4.2. Texto .
.
4.3. Contenedores .
.
4.4. Listas de Seleccion .
.
4.5. Definidos por el usuario .

.
.
.
.

.
.
.

.
.
.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5. Módulos adicionales

.
5.1. GlobalWidgetPool
.
.
5.2. SimpleEvent .
.
5.3. Timer
.
.
.
.
5.4. Tools .
.
5.5. Connection .
.
.
5.6. LoadingAnimation .

.
.
.
.

.
.
.
.

.
.

.
.

.
.

.
.
.
.
.
.

.
.
.
.
.
.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

I

1

4
4
4
5
7
8
9
9
9
10
11

12
12
13
14

15
15
15
16
16
17

20
20
21
21
22
22
23

ÍNDICE GENERAL

5.7. EditingCommand .
5.8. EventManager .
.

.
.
Interactividad .

.
.

.

5.8.1.

6. Apéndice

.
.
.

.

.
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.1. Módulos adicionales NCL y Lua . . . . . . . . . . . . . . . . . . . . . . . . .
applicationBase.ncl y connectorBase.ncl . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
applicationBase.ncl con interactividad . . . . . . . . . . . . . . . . . .

6.1.1.
6.1.2. main.lua .
6.1.3.

.

.

.

.

II

23
24
25

27
27
27
29
29

Listings

.

.
.

.
.

.
.

.
.
.

2.1. Definición de nueva clase . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2. HelloWorld - MainStage .
2.3. HelloWorld - StageLoader
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1. CONFIG - Modules .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
shared/scripts/chapter3/Modules.lua . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2. CONFIG - StagesLoader
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3. CONFIG - FrameworkConfig . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
4.1. Ej Widget Image
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
4.2. Ej Widget Texto .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3. Ej Widget Container
.
4.4. Ej Widget SelectionList .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
4.5. Codigo Widget Menu .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.6. Ej Widget Menu .
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1. módulo Adicional - GlobalWidgetPool . . . . . . . . . . . . . . . . . . . . . .
.
5.2. Ej Widget SimpleEvent .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
5.3. Ej Widget Timer
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4. Ej Módulo Tools
.
5.5. Ej módulo Connection .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.6. Ej Widget LoadingAnimation . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.7. Ej Widget EditingCommand . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.8. HelloWorld - MainStage Interactivo . . . . . . . . . . . . . . . . . . . . . . .
.
.
6.1. applicationBase.ncl
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
6.2. connectorBase.ncl .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3. main.lua .
.
.
.
6.4. applicationBase.ncl + int
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

.
.
.

.

.

.
.

.

.

.

.

4
10
11
12
13
13
14
15
16
16
16
17
19
20
21
21
22
22
23
23
25
27
28
29
29

III

Capítulo 1

Introducción

RyF Framework 2 es un framework para desarrollo de aplicaciones para Ginga.AR, desarro-
llado por completo en el lenguaje de scripting LUA, en cumplimiento de la norma de radiodifu-
sión de Televisión Digital Terrestre (norma) y diseñado para desarrollar rápidamente aplicacio-
nes grandes.

La principal característica del mismo es la velocidad de desarrollo y la escalabilidad que
nos otorga. Podemos desarrollar aplicaciones realmente complejas en cuestión horas con la se-
guridad de que las mismas funcionarán tanto en los dispositivos STB como en las plataformas
Móviles (como las netbooks) sin tener que realizar trabajo de más.

Esta ventaja viene con un pequeño contra que es el peso adicional de la aplicación. Para
aplicaciones grandes este peso adicional es imperceptible. Pero para una aplicación pequeña, si
bien la facilidad de desarrollo también aumenta en gran medida, el incremento de espacio en
memoria requerido puede llegar a ser indeseable.

RyF 2.0 está en desarrollo desde diciembre del 2011 y ha sido utilizado una gran cantidad de
veces en el desarrollo de aplicaciones para la Televisión Digital Terrestre, tanto de prueba como
comerciales. Algunas de las aplicaciones fueron:

Aplicación
Cines

Imagen

de

Features
-Canal
Re-
torno(Obtención de
información)
-HTML(mostrar
paginas)
-Widgets Comple-
jos (SelectionList)

Link
http://www.
youtube.
com/watch?v=
OAFK9nNYU3k

Cuadro 1.1: Apps usando RyF 2.0

1

CAPÍTULO 1. INTRODUCCIÓN

2

Link
http://www.
youtube.
com/watch?v=
qRd6-i_smi8

http://www.
youtube.
com/watch?v=
19AdneVQp4I

http://www.
youtube.
com/watch?v=
BNzoiXKINB0

http://www.
youtube.
com/watch?v=
wnwFSQtf0EU

Imagen

Aplicación
Dengue

Clima

Info Salud

Por

Viaja
Buenos
Aires

Features
-Códigos QR para
relación con segun-
da pantalla
-Widgets Comple-
jos Definidos por el
usuario (Dentro del
juego)

-Canal de Retorno
(Actualizaciones)
Com-
-Editing
mands (Señales de
emergencia)
-Widgets Definidos
por
el Usuario
(Provincias)

-Información basa-
da en tablas (auto-
generación de da-
tos)
-Widgets Comple-
jos (SelectionList,
DataWidget)

-Canal de Retorno
(Actualización de
datos)
-Información basa-
da en tablas (auto-
generación de da-
tos)
Com-
-Editing
mands
(Emergen-
cias y actualizacio-
nes forzadas)

Cuadro 1.2: Apps usando RyF 2.0

CAPÍTULO 1. INTRODUCCIÓN

3

Imagen

Aplicación
Presupuesto
Participativo

TweetFeeder

Features
-Información basa-
da en tablas (auto-
generación de da-
tos)
-Widgets Comple-
jos (SelectionList)

-Canal de Retorno
(Obtención de da-
tos)
-Widgets Comple-
jos
(TweeterFeed,
WidgetOption)

Link
http://www.
youtube.
com/watch?v=
yzSgitZ-1Ig

http://www.
youtube.
com/watch?v=
0kCiwNKjTYw

Cuadro 1.3: Apps usando RyF 2.0

Capítulo 2

Aplicación Simple en RyF Framework

En este Capítulo se explicara la estructura de RyF Framework y luego se mostrará un ejemplo
paso a paso de una aplicación simple en RyF 2.0. El mismo abarca como hacer las configuracio-
nes más básicas y necesarias para poder ejecutar la aplicación sin problemas y el uso más simple
de los widgets #Image y #Text.

Para una explicación más profunda de las configuraciones disponibles ir al Capítulo 3 en la

página 12. o al Capítulo 4 en la página 15 sobre los widgets.

2.1. Estructura de RyF

Antes de mostrar un ejemplo concreto, vamos a comentar brevemente qué puede encontrarse
dentro de los directorios de la aplicación y dar un explicación muy corta de para qué sirve cada
cosa. Todo esto será profundizado en los capítulos subsiguientes.

2.1.1. Objetos en Lua

En el framework tenemos un sistema de objetos con herencia simple y sobrescritura de

métodos. Para definir una nueva clase utilizamos el siguiente código:

Listing 2.1: NuevaClase.lua

1 module (’NuevaClase’, package.seeall)
2 NuevaClase = {
3 }
setmetatable(NuevaClase,Object)
4
5 NuevaClase.__index = NuevaClase
6 NuevaClase.super = Object
7
8
9
10
11
12 end

self.super.Init(self)
−−Instance Atributes Initialization

_G.NuevaClase = NuevaClase

function NuevaClase:Init()

4

CAPÍTULO 2. APLICACIÓN SIMPLE EN RYF FRAMEWORK

5

Al utilizar setmetatable(NuevaClase,Object) decimos efectivamente que NuevaClase va a he-

redar todos los métodos y atributos de la clase Object. 1

Para sobrescribir métodos simplemente definimos nuevamente el método y este queda efec-

tivamente re-definido.

2.1.2. Estructura de Clases

El framework basa su funcionamiento en representar los estados de la aplicación mediante
objetos llamados Stages. Estos objetos obtienen de a uno el control de la aplicación y mediante
una maq
  • Links de descarga
http://lwp-l.com/pdf15031

Comentarios de: RyF Framework v2 (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad