Este curso cubre varios de los aspectos relativos al diseño y desarrollo de una aplicación web de tres capas. Se proporcionan los fundamentos del desarrollo frontend utilizando tecnologías como HTML, CSS y JavaScript, se extienden los conocimientos de la POO previamente adquiridos al contexto del desarrollo backend utilizando JEE y se plantean las bases de la persistencia y el acceso a datos relacionales. Complementariamente, se avanza en algunos aspectos del diseño de software, control de versiones de código con GIT, despliegue de aplicaciones, seguridad y web sockets.
El curso cuenta con un componente teórico a cargo del docente en donde se brindan las bases conceptuales para el desarrollo web, complementado con una serie de presentaciones a cargo del estudiante. El componente práctico del curso permite al estudiante crear soluciones de software basadas en tecnologías web a partir de un caso de estudio real. Para lograr estas competencias, se ofrecen un conjunto de tutoriales guiados a cargo del docente, seguido de un trabajo autónomo por parte del estudiante. También se plantea un proyecto final el cual le permite al estudiante integrar la mayor cantidad de conocimientos y tecnologías cubiertos en clase.
La línea de software de la carrera de Ingeniería de Sistemas de la Universidad El Bosque se compone de una serie de cursos a lo largo de ocho semestres que permiten al estudiante desarrollar las habilidades y competencias requeridas para el diseño y desarrollo de software como parte de su ejercicio profesional.
Si bien este curso cuenta con un componente teórico que busca dar seguimiento a lo aprendido hasta el momento, también fomenta el uso de diferentes tecnologías y herramientas vigentes para la implementación y despliegue de aplicaciones web de tres capas, que aprovechan la persistencia de datos relacionales para dar soporte a una gran variedad de funcionalidades en diferentes contextos de negocio y que además deben ser accedidas por múltiples usuarios a través de internet.
Muchas de las bases trabajadas en este curso serán de utilidad para que el estudiante, si lo desea, extienda su campo de trabajo a otro tipo de tecnologías de gran auge en la actualidad como las aplicaciones móviles y/o aquellas basadas en inteligencia artificial, blockchain, IoT, entre otras.
Para lograr un buen desempeño en este curso, se espera que los estudiantes tengan un sólido conocimiento en las siguientes áreas:
Debido a que este curso es mayoritariamente práctico, no hay bibliografía oficial. Las presentaciones están basadas en un conjunto de lecturas seleccionadas cuidadosamente y la documentación oficial de las diferentes tecnologías que se trabajan. Cualquier referencia adicional será proporcionada oportunamente.