Materiales de Desarrollo de Aplicaciones en Internet¶
Universitat d’Alacant, curso 2019–2020¶
«The web is more a social creation than a technical one», Tim Berners-Lee
Novedades¶
30 Jun |
Los siguientes son algunos comentarios adicionales respecto a los exámenes de teoría y prácticas de la convocatoria C4 a celebrar el día 9 de julio de 2020. Lee, en primer lugar, lo que se dice en el apartado de evaluación de la guía docente en el subapartado «Adaptación de la evaluación a la COVID-19 para el curso 2019-20». Ambos exámenes se realizarán online a través de una reunión en |
05 May |
Por resolución rectoral, el examen del |
05 May |
Se han movido todos los problemas que estaban diseminados por las distintas páginas de cada tema a un nueva página titulada «Problemas». A esta página se le han incorporado también los enunciados de los problemas del examen de enero de 2020. |
13 Ene |
Lo siguiente son algunas normas y recomendaciones para los exámenes de la asignatura del 24 de enero de 2020.
|
13 Ene |
Por un error en el texto de los materiales de la asignatura, las instancias de bases de datos que estábamos creando en Google Cloud SQL eran de un tipo excesivamente potente (y costoso) para el uso que les damos en la asignatura (unas pocas tablas con unos pocos registros cada una). El apartado «Publicación de la aplicación del carrito en Google App Engine» ya se ha corregido para indicar que la instancia que aloja la base de datos MySQL ha de ser de tipo |
07 Ene |
Ya están publicadas las notas de la práctica 4 en la web del departamento. |
30 Dic |
Las medianas del tiempo dedicado por los estudiantes a realizar cada una de las cuatro prácticas, según los datos indicados por los estudiantes al pie de la página web de la aplicación entregada, han sido 6, 12, 10 y 19 horas respectivamente. La suma de estas medianas supone 47 horas de trabajo, de las que en principio unas 26 serían horas de trabajo en las sesiones de prácticas y el resto, 21 horas, trabajo personal fuera del aula. Recordad que dado que la asignatura tiene 6 créditos ECTS, el tiempo medio dedicado a ella fuera del aula (incluyendo el repaso de la teoría, la realización de las prácticas, la preparación del examen, etc.) debería de ser de 90 horas en total. |
09 Dic |
Se ha añadido al final de la página web que contiene los enunciados de las prácticas algunos ejemplos de posibles ampliaciones de la práctica que te permitan preparar el examen práctico. |
08 Dic |
Las dos últimas sesiones de teoría del curso las dedicaremos principalmente a resolver algunos de los problemas que aparecen en los materiales de la asignatura, por lo que es recomendable haber trabajado con ellos antes de la clase. Recuerda que las preguntas del examen teórico serán similares a estas. |
05 Dic |
Ya está publicada en el enunciado la segunda parte (opcional) de la práctica 4. La primera parte permitirá obtener un 8 como nota máxima de la práctica. Los dos puntos restantes corresponden a la segunda parte, que no es obligatorio que implementes ni para la entrega de esta práctica ni para el examen de prácticas, ya que el enunciado del examen supondrá que no ha sido implementada. |
25 Nov |
Ya está publicado el enunciado de la primera parte de la práctica 4. Antes de ponerte a programar, asegúrate de que entiendes bien el contenido de los temas de servicios web y de la computación en la nube. |
18 Nov |
De cara a las próximas clases y a la práctica 4, asegúrate de que tienes habilitada la cuenta de correo electrónico que la universidad te asigna con dominio gcloud.ua.es; entra para ello en la opción Servicios externos de UACloud. |
12 Nov |
Léete la definición de computación en la nube del NIST (organización norteamericana de estandarización) antes de la clase del 19 de noviembre. |
11 Nov |
Ya están publicadas las notas de la práctica 2 en la web del departamento. |
10 Nov |
Léete la parte 1 de la introducción a los componentes web de Caleb Williams antes de la clase del 12 de noviembre. |
05 Nov |
Ya está publicado el enunciado de la práctica 3. |
24 Oct |
Ya están publicadas las notas de la práctica 1 en la web del departamento. |
15 Oct |
El día 29 de octubre no habrá clase de la asignatura por tener que asistir el profesor a una reunión de trabajo. Para que esta interrupción no afecte al normal discurrir de la asignatura se proponen las siguientes medidas: el plazo para la entrega de la práctica 2 se alarga una semana, hasta el 4 de noviembre; el día 22 de octubre no habrá clase de prácticas, pero se impartirá una clase de teoría más larga de lo habitual en el laboratorio OP-INF1 de la planta baja del edificio de Óptica (próximo al edificio Politécnica IV donde se imparten normalmente las clases) en uno de estos dos turnos a elegir libremente por el estudiante: de 9.00 a 12.00 o de 12.00 a 15.00 horas. |
14 Oct |
Léete los capítulos sobre desarrollo en el lado del cliente y peticiones Ajax del libro «Client-Side Web Development» antes de las clases del 22 de octubre. |
07 Oct |
Léete el capítulo sobre el Document Object Model del libro «Client-Side Web Development» antes de las clases del 15 de octubre. |
01 Oct |
Léete el capítulo de introducción a la programación funcional con JavaScript del libro «Client-Side Web Development» antes de las clases del 1 de octubre. |
30 Sep |
Ya está publicado el enunciado de la práctica 2. |
23 Sep |
Léete el capítulo de introducción a JavaScript del libro «Client-Side Web Development» antes de las clases del 1 de octubre. |
22 Sep |
Por error se había colado en la página de prácticas la afirmación de que las prácticas se podían hacer en parejas, pero este curso las prácticas de la asignatura son individuales. Si ya habías comenzado a realizar la práctica 1 en pareja y la tienes relativamente avanzada, habla con el profesor. |
16 Sep |
Léete el capítulo de introducción a CSS del libro «Client-Side Web Development» antes de las clases del 24 de septiembre. |
09 sep |
Antes de las clases del 17 de septiembre e necesario haber leído el capítulo sobre HTML del libro «Client-Side Web Development». |
08 sep |
Ya está publicado el enunciado de la práctica 1. Las clases de prácticas comienzan el 17 de septiembre. |
Guía docente y normas del curso¶
Estos son los materiales de clase de la asignatura Desarrollo de Aplicaciones en Internet, coordinada por el profesor Juan Antonio Pérez Ortiz (cuenta de Twitter: @japer3z) de la Universitat d’Alacant. Para obtener información sobre la evaluación de la asignatura puedes consultar la guía docente. Algunos aspectos adicionales que no están recogidos en la guía son los siguientes:
La asistencia a prácticas es obligatoria, aunque se puede tener un máximo de 5 faltas no justificadas. Si tienes alguna ocupación que te impide asistir a todas o gran parte de las prácticas, envía un justificante escaneado al profesor a través del sistema de tutoría de UACloud. Para justificar una falta puntual, enseña al profesor el justificante durante la próxima sesión de prácticas a la que acudas. Cada falta no justificada por encima de las permitidas, restará una parte de la nota final de prácticas.
La visita al profesor durante sus horas de tutoría no puede ser obligatoria por cuestiones normativas, pero es muy recomendable, ya que es la oportunidad de recibir supervisión sobre tus conocimientos de la materia o la calidad del código que has desarrollado. Reserva turno a través de UACloud. Si el horario no es compatible con tu agenda, escribe al profesor e intentará encontrar un hueco fuera de dicho horario. Si no resultara posible consensuar una hora de visita, también puedes contactar previa cita por chat, videollamada o teléfono. El despacho del profesor está en la segunda planta del módulo 2 del Edificio Politécnica 4, justo en este punto del mapa.
Las prácticas se realizan individualmente. Lee lo que se comenta más abajo sobre plagios.
Cada una de las cuatro prácticas contribuye un 25% a la nota final de las prácticas.
Los exámenes de teoría y prácticas se realizan uno a continuación del otro en la fecha oficial del calendario de exámenes. Salvo excepciones autorizadas expresamente por el profesor, el único material que puedes llevar a cada examen es un documento identificativo, un boligrafo y una hoja de tamaño ISO/DIN A5 (148 x 210 mm) en la que puedes escribir o imprimir toda la información que consideres útil. La hoja se entregará al profesor al acabar el examen y no puede compartirse con otros estudiantes. Puedes llevar una hoja diferente para el examen teórico y para el práctico, pero no puede superar las medidas indicadas.
El examen de prácticas se realizará en los ordenadores de los laboratorios de la Escuela Politécnica Superior; durante su realización no habrá acceso a internet.
Para acceder a Google Cloud Platform en las últimas semanas del curso necesitarás tu cuenta de correo electrónico de GCloud con dominio
@gcloud.ua.es
de la que dispones como alumno de la Universitat d’Alacant. Asegúrate antes de la cuarta semana de clase de que la tienes activada entrando en la sección Servicios externos de UACloud.
Puedes encontrar algo de información adicional en las diapositivas usadas en la presentación del curso.
El código fuente de estas páginas, escrito en reStructuredText, está disponible en Github.
Puedes obtener una copia local de estas páginas (por ejemplo, para poder consultarlas sin conexión) ejecutando:
wget --mirror --no-parent --convert-links --page-requisites https://jaspock.github.io/dai1920/index.html
Recomendaciones¶
Este prefacio es un buen lugar para decir unas palabras sobre integridad profesional y ética académica. Durante este cuatrimestre, la carga de trabajo producida por esta y otras asignaturas puede hacer que en ocasiones te sientas desbordado por la faena pendiente. Esta situación también se producirá frecuentemente en el ámbito profesional para el que te estás formando. Es muy importante que afrontes esos momentos de presión con integridad. El Massachusettts Institute of Technology (MIT) da una serie de recomendaciones a sus estudiantes al respecto que es importante que leas. Este tipo de universidades suelen tener bien especificado los procedimientos y sanciones posibles en caso de fraude académico; también la Universitat d’Alacant tiene un reglamento al respecto, que probablemente ya conoces. Todos estos aspectos también has de tenerlos en cuenta en esta asignatura: se pueden discutir soluciones en equipo pero nunca compartir código.
Este es el momento también en el que enfatizar la importancia de tomar apuntes para poder preparar la asignatura con garantías. Las diapositivas, por ejemplo, solo contienen una parte de lo estudiado en clase. Por si se nos ha olvidado mencionarlo, también es muy aconsejable que acudas de vez en cuando a una tutoría presencial; usa antes para ello el sistema electrónico de solicitud de cita de UACloud.
Contenidos:
- 1. Lenguajes de marcado
- 2. Lenguajes de estilo
- 3. Programar el lado del cliente
- 4. Servicios web
- 4.1. El protocolo HTTP
- 4.2. Herramientas para desarrolladores
- 4.3. Promesas de JavaScript
- 4.4. El objeto XMLHttpRequest
- 4.5. La API Fetch
- 4.6. La política del mismo origen
- 4.7. La arquitectura REST
- 4.8. Programación de servicios web en Node.js
- 4.9. Configuración del entorno de trabajo para ejecutar localmente una aplicación web
- 4.10. Modificación de la API REST
- 4.11. Despliegue de la aplicación web en Heroku
- 4.12. Autenticación de usuarios
- 4.13. Términos de uso de las APIs web
- 5. Componentes web
- 6. Computación en la nube
- 7. Problemas
- 8. Enunciados de las prácticas