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.
Para esta práctica, deberás crear un nuevo proyecto de Django llamado
traductor
.
El programa a desarrollar consiste en dos páginas generadas
dinámicamente. La primera página contiene un formulario con un
textarea
en donde se le solicita al usuario que capture
cualquier texto en español. Cuando el usuario presiona el respectivo
botón de submit, debe aparecer la segunda página la cual
contendrá el texto del usuario traducido al lenguaje Efe
(descrito a continuación). En esta segunda página se debe incluir una
liga para poder regresarse a la primera página.
Por simplicidad, el lenguaje Efe de nuestra aplicación usará solamente la siguiente regla: para cada vocal "α" utilizada en una palabra, se remplaza por "αfα". Por ejemplo, la traducción al lenguaje Efe del texto "hola mundo" es: "hofolafa mufundofo".
Habrá dos tipos de páginas dinámicas, una para clientes WAP y otra para
clientes Web convencionales. El programa debe considerar el contenido
aceptado por el agente Web y así determinar si es un cliente WAP o Web.
Si el encabezado Accept
de la petición contiene la cadena
application/vnd.wap.xhtml+xml
, entonces ése debe ser el
valor del encabezado Content-Type
de la respuesta. De otra
forma, el valor del Content-Type
debe ser
text/html
. En ambos casos se debe añadir también el
charset
al Content-Type
.
El DOCTYPE
para una página WAP debe ser:
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.2//EN" "http://www.openmobilealliance.org/tech/DTD/xhtml-mobile12.dtd">
Por otro lado, el DOCTYPE
para una página Web debe ser:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
Al inicio de cada página, se debe incluir uno de los siguientes logotipos según sea un cliente WAP (logotipo pequeño) o Web (logotipo grande).
Adicionalmente, sin importar el tipo de cliente, se deben utilizar hojas
de estilo para lograr la siguiente presentación: fondo verde muy
clarito, letras de color verde muy oscuro con fuente de tipo
sans-serif. Al final de cada página, se debe incluir una línea
horizontal <hr />
seguido abajo de los datos de los
autores (nombre y matrícula).
Para evitar duplicidad innecesaria en las dos plantillas a escribir, utiliza "Template Inheritance" tal como se describe en el capítulo 4 de [HOLOVATY].
El URL para ingresar a la primera página del proyecto Web debe ser:
http://localhost:8000/traductor/
Verifica que las salidas sean XHTML o XHTML-MP válido utilizando el Servicio de Validación de W3C.
Sigue las siguientes indicaciones para entregar tu práctica:
readme.txt
. En este archivo debes incluir el
nombre completo y matrícula de los autores de la práctica.
traductor.zip
con el
contenido completo del directorio donde se encuentra tu proyecto
Web.
Esta práctica será evaluada usando los siguientes criterios:
100 | La práctica cumple con todos los requerimientos. |
---|---|
60-90 | La práctica funciona en general, pero contiene uno o varios errores menores. |
50 | Proyecto Web produce un error a tiempo de ejecución. |
DA | La solución es un plagio. |