Curso homologado : Curso Universitario Homologado de Desarrollo de Aplicaciones con Tecnologías Web (Titulación Universitaria Homologada + 4 Créditos ECTS)
Tiempo de estudio:110 horas
Realización:Cursos online
Coste: 520 €> 260 €
UNIDAD DIDÁCTICA 1. EL PROCESO DEL DESARROLLO APLICACIONES
- Modelos del ciclo de vida del software
- Análisis y especificación de requisitos
- Diseño
- Implementación. Conceptos generales de desarrollo de aplicaciones
- Validación y verificación de sistemas
- Entornos integrados de desarrollo (IDE) de uso común
- En cascada (waterfall)
- Iterativo
- Incremental
- En V
- Basado en componentes (CBSE)
- Desarrollo rápido (RAD)
- Ventajas e inconvenientes. Pautas para la selección de la metodología más adecuada
- Tipos de requisitos
- Modelos para el análisis de requisitos
- Documentación de requisitos
- Validación de requisitos
- Gestión de requisitos
- Modelos para el diseño de sistemas
- Diagramas de diseño. El estándar UML
- Documentación
- Desarrollo de aplicaciones
- Técnicas de desarrollo de software
- Planificación
- Métodos formales de verificación
- Métodos automatizados de análisis
UNIDAD DIDÁCTICA 2. LA ORIENTACIÓN A OBJETOS
- Principios de la orientación a objetos. Comparación con la programación estructurada
- Clases de objetos
- Objetos
- Herencia
- Modularidad
- Genericidad y sobrecarga
- Desarrollo orientado a objetos
- Lenguajes de modelización en el desarrollo orientado a objetos
- Ocultación de información (information hiding)
- El tipo abstracto de datos (ADT). Encapsulado de datos
- Paso de mensajes
- Atributos, variables de estado y variables de clase
- Métodos. Requisitos e invariantes
- Gestión de excepciones
- Agregación de clases
- Creación y destrucción de objetos
- Llamada a métodos de un objeto
- Visibilidad y uso de las variables de estado
- Referencias a objetos
- Persistencia de objetos
- Optimización de memoria y recolección de basura (garbage collection)
- Concepto de herencia. Superclases y subclases
- Herencia múltiple
- Clases abstractas
- Tipos de herencia
- Polimorfismo y enlace dinámico (dynamic binding)
- Directrices para el uso correcto de la herencia
- Librerías de clases. Ámbito de utilización de nombres
- Ventajas de la utilización de módulos o paquetes
- Concepto de genericidad
- Concepto de Sobrecarga. Tipos de sobrecarga
- Comparación entre genericidad y sobrecarga
- Lenguajes de desarrollo orientado a objetos de uso común
- Herramientas de desarrollo
- Uso del lenguaje unificado de modelado (UML) en el desarrollo orientado a objetos
- Diagramas para la modelización de sistemas orientados a objetos
UNIDAD DIDÁCTICA 3. ARQUITECTURAS WEB
- Concepto de arquitectura Web
- El modelo de capas
- Plataformas para el desarrollo en las capas servidor
- Herramientas de desarrollo orientadas a servidor de aplicaciones Web
- Tipos de herramientas
- Extensibilidad. Instalación de módulos
- Técnicas de configuración de los entornos de desarrollo, preproducción y producción
- Funcionalidades de depuración
UNIDAD DIDÁCTICA 4. LENGUAJES DE PROGRAMACIÓN DE APLICACIONES WEB EN EL LADO SERVIDOR
- Características de los lenguajes de programación Web en servidor
- Tipos y características de los lenguajes de uso común
- Criterios en la elección de un lenguaje de programación Web en servidor. Ventajas e inconvenientes
- Características generales
- Gestión de la configuración
- Gestión de la seguridad
- Gestión de errores
- Transacciones y persistencia
- Componentes en servidor. Ventajas e inconvenientes en el uso de contenedores de componentes
- Modelos de desarrollo. El modelo vista controlador
- Interpretados orientados a servidor
- Lenguajes de cliente interpretados en servidor
- Lenguajes compilados
- Tipos de datos
- Clases
- Operadores básicos. Manipulación de cadenas de caracteres
- Estructuras de control. Bucles y condicionales
- Módulos o paquetes
- Herencia
- Gestión de bibliotecas (libraries)
- Configuración de descriptores
- Configuración de ficheros
- Conceptos de identificación, autenticación y autorización
- Técnicas para la gestión de sesiones
- Técnicas de recuperación de errores
- Programación de excepciones
- Acceso a bases de datos. Conectores
- Estándares para el acceso a bases de datos
- Gestión de la configuración de acceso a bases de datos
- Acceso a directorios y otras fuentes de datos
- Programación de transacciones
- Modelo: programación de acceso a datos
- Vista: Desarrollo de aplicaciones en cliente. Eventos e interfaz de usuario
- Programación del controlador
- Documentación del software. Inclusión en código fuente. Generadores de documentación
UNIDAD DIDÁCTICA 5. ARQUITECTURAS DE APLICACIONES WEB
- Esquema general
- Arquitectura en capas
- Interacción entre las capas cliente y servidor
- Arquitectura de la capa cliente
UNIDAD DIDÁCTICA 6. NAVEGADOR WEB
- Arquitectura de un navegador
- Navegadores de uso común. Comparativa
- Seguridad en navegadores
- Integración de aplicaciones en navegadores. Adaptadores (plugins)
- Conformidad a estándares
- Interfaz de usuario
- Motor de exploración
- Motor de presentación
- Módulos auxiliares: persistencia, interfaz de red, intérprete de scripts, infraestructura de presentación
- Firefox
- Google Chrome
- Safari
- Opera
- Adaptadores comunes en diferentes navegadores
- Configuración de tipos de ficheros y adaptadores
UNIDAD DIDÁCTICA 7. CREACIÓN DE CONTENIDO WEB DINÁMICO
- Fundamentos de programación
- Lenguajes para el desarrollo de contenido dinámico
- Constantes, variables. Tipos de datos simples y estructurados
- Expresiones y sentencias. Operadores básicos
- Control de flujo: secuencial, bucles y condicionales
- Subprogramas: procedimientos y funciones. Librerías
- Tipos de parámetros
- Llamadas a funciones. Recursividad
- Nociones de orientación a objetos: clases y objetos. Herencia
- Principales metodologías de programación
- Lenguajes de guión. Características generales
- Comparativa de lenguajes de guión. Criterios para la selección de un lenguaje de guión
- Máquinas virtuales en navegadores. Miniaplicaciones (applets)
- Otros lenguajes para el desarrollo de aplicaciones web enriquecidas (RIA)
UNIDAD DIDÁCTICA 8. LENGUAJES DE GUIÓN DE USO GENERAL
- Integración de lenguajes de guión en navegadores web
- Estructura general de un programa en un lenguaje de guión
- Funciones
- Manipulación de texto
- Listas (arrays)
- Formatos estándar de almacenamiento de datos en lenguajes de guión
- Objetos
- El modelo de documento web
- Gestión de eventos
- Gestión de errores 229
- Usos específicos de lenguajes de guión
- Entornos integrados (Frameworks) para el desarrollo con lenguajes de guión
- Extensiones útiles de navegadores
- Comparativa y compatibilidad con navegadores
- Diferencias entre versiones
- Variables y tipos de datos
- Operadores
- Objetos
- Sentencias. Anidamiento
- Estructuras de control y condicionales
- Bucles
- Comentarios
- Parámetros
- Variables locales y globales
- Bibliotecas de funciones
- Funciones básicas para la manipulación de texto
- Introducción y validación de texto
- Creación de arrays básicos
- Arrays multidimensionales
- Tratamiento de arrays mediante bucles
- Comparativa
- Tratamiento de formatos estándar
- Diccionarios de datos
- Creación de objetos: métodos y estructuras de datos
- Bibliotecas de objetos
- Estructura de documento
- Navegación por las propiedades de un documento
- Cambio de propiedades mediante lenguajes de guión
- Tipos de eventos
- Técnicas para el manejo de eventos mediante lenguajes de guión
- Manejadores de eventos
- Eventos de carga inicial
- Delegación y propagación de eventos
- Manejo de error «No lenguajes de guión habilitados» (no script)
- Chequeo de errores en funciones
- Captura de errores
- Uso de puntos de ruptura
- Integración multimedia mediante lenguajes de guión
- Animaciones
- Efectos especiales en elementos gráficos y texto
- Rejillas de datos
- Manejo de canales de suscripción (RSS)
- Descripción de las técnicas de acceso asíncrono (AJAX)
- Uso de lenguajes de guión en dispositivos móviles
- Características de los entornos de uso común. Comparativa
- Editores avanzados
- Funcionalidades de validación y depuración de código
- Técnicas para la documentación del código
- Utilidades adicionales para la realización de contenidos dinámicos
- Entornos de desarrollo específicos: desarrollo sobre dispositivos móviles
UNIDAD DIDÁCTICA 9. CONTENIDOS MULTIMEDIA
- Definición de multimedia. Tipos de recursos multimedia
- Inclusión de contenido multimedia en páginas web
- Gráficos multimedia
- Audio
- Vídeo
- Animaciones multimedia
- Elementos interactivos
- Adaptadores para recursos multimedia
- Enlace a diferentes recursos desde páginas web
- Incrustación de contenido multimedia
- Formatos de fichero web. El estándar MIME
- Tipos de reproducción. Streaming y carga progresiva
- Comparativa del tratamiento de contenido multimedia en diferentes versiones de lenguajes de marcado de páginas
- Formatos gráficos. Comparativa
- Repositorios de imágenes
- Tipos de gráficos: fotografías, imágenes vectorizadas e iconos
- Herramientas para el tratamiento gráfico. Filtros y tratamiento de imágenes
- Conversión de formatos gráficos
- Formatos de audio. Comparativa
- Reproductores de audio. Inserción en navegadores web
- Enlace o inserción de canales de audio
- Conversión de formatos de audio
- Herramientas para el tratamiento de sonido. Edición de fragmentos de audio
- Formatos de vídeo. Calidad de vídeo y comparativa
- Repositorios de vídeo
- Reproductores de vídeo. Inserción en navegadores web
- Enlace o inserción de canales de vídeo
- Conversión de formatos de vídeo. Optimización
- Herramientas de edición de vídeo. Creación de efectos y composición
- Principios de la animación
- Herramientas para la creación de animaciones
- Formatos de animaciones
- Inclusión en páginas web
- Creación de elementos interactivos
- Mapas Interactivos
- Ámbitos de uso
UNIDAD DIDÁCTICA 10. VERIFICACIÓN DE APLICACIONES WEB
- Características de un proceso de pruebas
- Tipos de pruebas
- Diseño y planificación de pruebas. Estrategias de uso común
- Consideraciones de confidencialidad. Pruebas con datos personales
- Automatización de pruebas. Herramientas
- Funcionales
- Estructurales
- De integración con sistemas externos
- Usabilidad y accesibilidad
- De detección de errores. Pruebas de caja negra
- De seguridad. Evaluación de la protección frente a los ataques más comunes
- De rendimiento. Pruebas de carga o estrés. Estadísticas
- De integridad de datos