Durante esta práctica, los alumnos serán capaces de:
Esta actividad promueve las siguientes habilidades, valores y actitudes: análisis y síntesis, capacidad de resolver problemas, creatividad, y uso eficiente de la informática y las telecomunicaciones.
Esta práctica puede ser elaborada de manera individual o en parejas.
Tus archivos fuente de JavaScript deben comenzar con un comentario que contenga el título de la práctica, la fecha y los datos personales de los autores (nombre y matrícula). Por ejemplo:
/*---------------------------------------------------------- * Práctica 4: Utilizando XML * Fecha: 13-Sep-2016 * Autores: * A01166611 Pepper Pots * A01160611 Anthony Stark *----------------------------------------------------------*/
Instala el módulo xml2js
de Node. Desde la terminal teclea:
sudo npm install xml2js
Revisa la documentación de xml2js para ver como usar este módulo.
Crea un directorio llamado practica4
. Coloca en este directorio el siguiente documento XML llamado movies.xml
:
<?xml version="1.0" encoding="UTF-8"?> <!-- Archivo: movies.xml --> <movies> <!-- Esta es una de las mejores películas de todos los tiempos. --> <film name="The Godfather" year="1972"> <cast>Marlon Brando</cast> <cast>Al Pacino</cast> <cast>Diane Keaton</cast> <director>Francis Ford Coppola</director> </film> <!-- Esta es la película más taquillera del 2008. --> <film name="The Dark Knight" year="2008"> <cast>Christian Bale</cast> <director>Christopher Nolan</director> <cast>Maggie Gyllenhaal</cast> <!-- ¿Dónde quedó Katie Holmes? --> <cast>Heath Ledger</cast> <cast>Michael Caine</cast> <cast>Gary Oldman</cast> <cast>Morgan Freeman</cast> </film> <film name="The Mission" year="1986"> <!-- La música fue escrita por Ennio Morricone --> <director>Roland Joffé</director> <cast>Robert De Niro</cast> <cast>Jeremy Irons</cast> </film> <film name="Black Swan" year="2010"> <director> Darren Aronofsky </director> <cast> Natalie Portman </cast> <cast> Mila Kunis </cast> <cast> Vincent Cassel </cast> <cast> Winona Ryder </cast> </film> <film name="The Hobbit: An Unexpected Journey" year="2012"> <director>Peter Jackson</director><cast>Ian McKellen</cast> <cast>Martin Freeman</cast><cast>Andy Serkis</cast></film> <film name="THX 1138" year="1971"/> <film name="The Avengers" year="2012"> <director>Joss Whedon</director> <cast>Robert Downey Jr. <!-- Iron Man --></cast> <cast>Scarlett Johansson <!-- Black Widow --></cast> <cast>Chris Evans <!-- Captain America --></cast> <cast>Samuel L. Jackson <!-- Nick Fury --></cast> <cast>Chris Hemsworth <!-- Thor --></cast> <cast>Mark Ruffalo <!-- The Incredible Hulk --></cast> </film> </movies>
Escribe un programa en Node.js llamado peliculas.js
que lea y realice el parseo del archivo movies.xml
y que imprima en la salida estándar todas las películas ahí contenidas de la manera como se muestra a continuación:
The Godfather (1972), director: Francis Ford Coppola The Dark Knight (2008), director: Christopher Nolan The Mission (1986), director: Roland Joffé Black Swan (2010), director: Darren Aronofsky The Hobbit: An Unexpected Journey (2012), director: Peter Jackson THX 1138 (1971) The Avengers (2012), director: Joss Whedon
Notar la salida del caso especial que ocurre cuando una película no tiene información del director (THX 1138).
Escribe otro programa en Node.js llamado actores.js
que lea y realice el parseo del archivo movies.xml
y que imprima en la salida estándar todas los actores ahí contenidos de la manera como se muestra a continuación:
The Godfather Marlon Brando Al Pacino Diane Keaton The Dark Knight Christian Bale Maggie Gyllenhaal Heath Ledger Michael Caine Gary Oldman Morgan Freeman The Mission Robert De Niro Jeremy Irons Black Swan Natalie Portman Mila Kunis Vincent Cassel Winona Ryder The Hobbit: An Unexpected Journey Ian McKellen Martin Freeman Andy Serkis THX 1138 The Avengers Robert Downey Jr. Scarlett Johansson Chris Evans Samuel L. Jackson Chris Hemsworth Mark Ruffalo
Notar que hay una línea en blanco después de cada grupo de actores de una misma película.
Escribe el reporte de la práctica tal como se detalla en el documento Reportes de prácticas. El nombre del archivo fuente de AsciiDoctor debe ser reporte_practica4.adoc
. A partir del código fuente de AsciiDoctor debes generar el archivo PDF correspondiente. Dicho archivo se debe llamar reporte_practica4.pdf
. Coloca estos archivos junto cualquier otro archivo adicional que se requiera para generar el reporte dentro del directorio practica4
.
Crea un archivo tarball con todo el contenido del directorio practica4
. Nombra a este archivo practica4.tgz
. Este archivo se puede crear desde la terminal tecleando lo siguiente (asegúrate que te encuentres en el mismo nivel que el directorio practica4
):
tar czf practica4.tgz practica4
Para entregar el archivo practica4.tgz
, ingresa los siguientes datos:
Si la práctica fue desarrollada en pareja, basta que solo uno de los miembros la entregue. No se aceptan prácticas por ningún otro medio.
Fecha límite: Martes, 13 de septiembre.
Esta actividad será evaluada usando los siguientes criterios:
50% | Implementación de los requerimientos. |
---|---|
50% | Reporte de la práctica de laboratorio. |
DA | El programa y/o reporte es un plagio. |