Está en la página 1de 3

UNIVERSIDAD NACIONAL EXPERIMENTAL DEL TÁCHIRA

VICERRECTORADO ACADÉMICO
DECANATO DE DOCENCIA
DEPARTAMENTO DE INFORMÁTICA
ASIGNATURA: PROGRAMACION I (0416202T) LAPSO 2016-1

Examen 1er Parcial Valor: 75 Puntos Fecha: 24/09/16

WhereList, es un servicio de Listas de reproducción que usa los diferentes proveedores de medios
por streaming en Internet, para personalizar tu música o videos musicales favoritos y tenerlas
disponibles donde quieras que te encuentres, disponible en tu dispositivo favorito para todas las
plataformas actuales (Desktop, Android, iOS, WindowsPhone).

El usuario que desee usar el servicio, debe crear una cuenta introduciendo los siguientes datos
personales: nombre, correo, país, edad y sexo.

Cada usuario puede agregar las Canciones que desee, de ellas se registra: Nombre,
proveedor/servicio, url, puntuación (1 al 5) y duración en segundos.

El proveedor o servicio de contenido, es quien almacena y provee los medios a utilizar. De cada uno
de ellos es necesario guardar un id del proveedor así como información necesaria para la
comunicación entre la aplicación y su cuenta de usuario en dichas plataformas por cuanto WhereList
usa características avanzadas para la presentación del contenido, y eso depende específicamente del
proveedor. Hasta el momento se tiene disponible el uso de los siguientes proveedores: Youtube,
Vimeo y iTunes.

Cada usuario debe configurar en su perfil, el proveedor con el que está registrado.
Los datos solicitados para cada proveedor son:

Youtube Vimeo iTunes

mail (cadena) user (cadena) apple_id (cadena)


api_key (cadena) password (cadena) api_app_id (numerico)
secret_key (cadena) api_key (numero)
api_secret_key (cadena)

Se requiere crear un prototipo a nivel del backend de la aplicación WhereList, que cumpla con las
siguientes premisas:
● Escribir en lenguaje C++ la estructura de clases con Herencia (Extensión y/o Composición),
Polimorfismo (funciones virtuales); así como todos los atributos y métodos necesarios.
● Se le hace entrega de una Clase Configuracion (Configuracion.h), y de esta forma crear los
objetos necesarios a partir de los siguientes datos:
○ Vector de string Cuentas de usuarios, que tiene los siguientes datos separados con
comas (,): nombre,correo,pais,edad,sexo.
Contiene el método getCuenta(número de índice) que devuelve un ítem con la
información anterior y con el método getCantCuentas(), devuelve un entero con la
cantidad de Cuentas totales.
Ejemplo: “Juana,jperez@gmail.com,ve,23,f”
○ Vector de string Proveedores por Cuenta, con valores separados con comas (,): correo
del usuario, tipo (0: Youtube, 1: Vimeo, 2: iTunes), además de los datos que dependen
del tipo de proveedor:
■ 0: mail google, api_key,secret_key
■ 1: user,password
■ 2: apple_id, api_app_id, api_key, api_secret_key
De igual forma tiene los métodos getProveedor(n) y getCantProveedor() con las
mismas características de los métodos de Cuentas.
Ejemplo:
“jperez@hotmail.com,0,jperez@gmail.com,12T75568,aF6jg32tHfIi0t1240”
○ Vector de Canciones por Cuenta, con valores separados por comas (,): correo del
usuario, título canción, url y datos generales codificados en bits, con la siguiente
estructura

Ejemplo:
“jperez@gmail.com,Paranoid,https://itunes.apple.com/us/album/live-in-jb-
2009-city-rock/id339974351,1049178”
Además se pide:
1. Cargar la información en un vector dinámico de Usuarios. Como se muestra en el diagrama,
ésta clase debe contener un vector dinámico de canciones y un objeto polimórfico de
proveedor.

2. Desplegar un listado de todas las canciones, clasificado por usuario. Ejemplo:


Nombre Edad N_Canciones Proveedor
Juana 23 3 iTunes
Wherelist:
Titulo Puntos
Paranoid 5
Rihanna – Umbrell 4
Eminen - Bad Guy 5

Nombre Edad N_Canciones Proveedor


Juan 41 1 Vimeo
WhereList
Titulo Puntos
Radio Elvis – Solarium 5

Total de canciones 4

3. Si se reproducen todas las canciones registradas en la WhereList cuánto tiempo tardarían en


ejecutarse. Use el formato hh:mm:ss donde hh:horas, mm:minutos, ss:segundos.

4. Solicitar al usuario el nombre de algún proveedor e indicar todos los datos que se tengan
registrados de ese proveedor y los emails de los usuarios que están registrados con él.

Baremo de Corrección:
A Estructura de las clases 4
B Separar los datos del usuario y cargarlos en el vector de objetos 3 Tiempo de duración: 3 horas.
C Separar los datos del proveedor y cargarlos en el objeto 4 Puede utilizar cualquier material de
D Decodificación correcta de canciones 8 apoyo, siempre y cuando no sea en
E Carga de datos de canciones 6 formato digital.
F Aplicación de herencia y polimorfismo basado en herencia 10
G Listado clasificado por usuario 15 ES SU RESPONSABILIDAD GUARDAR
H Visualización y cálculo del tiempo de reproducción de todas las canciones 10 CORRECTAMENTE EL EXAMEN.
I Listado de usuarios según un proveedor dado 15 EXÁMENES MAL GUARDADOS TIENE 0
PUNTOS
Total 75

También podría gustarte