
Modified 15 May 2020
Modified 30 June 2020
Modified 26 July 2021
Modified 28 June 2022
Modified 29 June 2022
Modified 15 May 2023
Testing Front
Duración: 15 horas.
Modalidad: Presencial / Remota.
Metodología: Dinámica y eminentemente práctica, con un enfoque claro de “aprender
haciendo” (desarrollo de ejercicios y casos prácticos).
Requisitos:
Los asistentes a esta formación, necesitan tener conocimientos sólidos o haber recibido
formación en:
_ JavaScript
_ Cliente API Rest
_ Programación Frontend
_ Además deben conocer algún Framework de Frontend (Angular, REACT, VUE).
Temario:
1.- Introducción
o Conceptos: TDD, BDD
o Tipos de Pruebas
o Generación de Informes
2.- Pruebas de Unidad e integración en JavaScript
o Estrategia de Pruebas
o Diseño de Pruebas
o Pruebas de unidad
o Pruebas entre componentes o clases
o Pruebas de integración
o Mock y Proxies
3.- Pruebas de Aceptación
o CumcumberJVM
o Gherkin
o Selenium
o Webdriver
o Cypress
4.- Testing Library
o Introducción
o Frameworks
o Lanzamiento de pruebas e informes
5.- Pruebas de Accesibilidad
o Introducción
o Estándares y Legal
o Herramientas de testeo automatizado
6.- Integración DevOps
o Entornos CI/CD
o Integración Git
o NPM
o Pipelines
o Stages
o Steps
Objetivos del curso
Conocer los fundamentos de los sistemas de virtualización
Entender los sistemas de virtualización en plataformas X86
Saber configurar máquinas virtuales
Saber configurar los recursos de una máquina virtual
Saber controlar el arranque y parada de las máquinas virtuales
Contenido
Introducción a la Virtualización
Historia
Ventajas y técnicas
Soluciones de Software libre
Introducción a KMV
Comparativa de KVM con otras soluciones
Características y arquitectura
Despliegue de máquinas
Repaso de comando de Bash
Instalación y Configuración
Requisitos
Instalación Básica
Arranque y verificación
Configuración de libvirtd
Qemu y libvirt
Almacenamiento virtual
Red Virtual
Máquinas Virtuales
Creación de máquinas
Recursos virtuales
Archivos de Configuración
Máquinas Linux
Máquinas Windows
Inicio y paradas de máquinas
Administración de máquinas y recursos
Control de ejecución
Memoria virtual
CPU’s virtuales
Medios de Almacenamiento
Redes Virtuales
Clonación
Copias de seguridad y restauración
Arquitectura
Proxmox
Virtmanager
NAS
Procesos y buenas prácticas
De Físico a Virtual
Optimización de ficheros de configuración
Alta disponibilidad
Alto rendimiento
Redundancia
- Módulo 01 Arquitectura, proceso de instalación y actualización
Componentes de Drupal
Composer
Drush
Entorno de desarrollo
Docker
Docker compose
Creación de un proyecto
Instalación con drush
Instalación de módulos
Gestión de configuraciones ; Gestión de entornos; Despliegue de Drupal
- Módulo 02.Creación de nuevas plantillas
Sistema base de plantillas
Estructura de plantillas
Regiones
Bloques
Twig
Integración con Bootstrap
Plantillas base
Plantillas hijas
- Módulo 03. Desarrollo de nuevos módulos, tipos de contenidos en Drupal/php.
Creación de Módulos; Estructura de un módulo; Creación de módulos
Actividad 1. Creación de un módulo: Definiciones; Definición de tipos de contenido o Definición de campos; Definición de tipos de campos; Visualización de campos; Vistas; API de Drupal; Acceso a la base de datos; Formularios con Form API ;Envío de emails con Mail API; Filtros, acciones y triggers; Sistema de menú; Traducción de la interfaz
Actividad 3a. Acceso a la base de datos
Actividad 3b. Creación de un formulario
Actividad 3c. Creación de una lista de distribución y envío de correos
Actividad 3d. Uso de filtros, acciones y triggers
Actividad 3e. Uso del sistema de menú; Creación de Bloques; Definición de un bloque; Construcción de un bloque; Opciones de visibilidad de bloques
Actividad 4. Desarrollo de un bloque: Distribución/empaquetado de Drupal; Qué es una distribución; Definición y empaquetado de la distribución
Actividad 5a Creación de una distribución
Actividad 5b. Instalación de una distribución (creada por un compañero de grupo)
- Módulo 04. Despliegue en producción de primeras versiones y posteriores actualizaciones
Script de despliegue
Script de actualización
Script de sincronización de configuraciones
Monitorización
Gestión de logs
• Introducción
• Instalación
• DataStream
• Operadores
• Estados
• DataSink
• Conclusiones
Temario:
1.- Introducción
- Docker
- Imágenes
- Contenedores
- Orquestación
2.- Cluster
- Instalación
- Conexión
- kubectl
- Nodos
3.- Despliegues
- Pods
- ReplicaSet
- Despliegues
4.- Acceso
- Servicios
- Ingress
5.- Datos
- Persistencia
- Volúmenes
- Claims
6.-.Configuraciones
- ConfigMaps
- Secrets/Vaults
GraphQL
OpenAPI
Temario:
• Introducción
• Entorno de desarrollo
• Tipos de Datos
• Estructuras
• Funciones
• Clases, Interfaces y Herencia
• Generics
• Importaciones y Exportaciones
Destinado a
Licenciados, estudiantes o trabajadores en campos de las empresas TIC que realizan trabajos en desarrollo o implantación de aplicaciones, basadas en microservicios, normalmente web, escritas con el framework de Spring (boot)
Requisitos
Temario:
1 Introducción a los Microservicios
• Conceptos
• Arquitectura
• Servicios de Ayuda
2 Spring Boot
• Maven
• Starters
• Apliaciones
• MVC
• Rest
• Serialización y Deserialización
• Pruebas
3 Acceso a Datos
• JPA
• H2
• RestController
• JPARepository
• Named Queries
• MongoDB
• Conslutas a Mongo DB
• Repositorio Mongo DB
4 Consultas Entre Servicios
• Llamadas HTTP
• Consul
• Feign
• Fallback
5 Monitorización de Servicios
• Hystrix
• Stream
• Consola
• Spring Cloud
• Eureka
• Eureka Server
• Eureka Discovery
• Cloud Config
• Zuul
Destinado a:
Programadores, analistas y jefes de proyecto de proyectos de desarrollo de soluciones TIC basadas en Java, que deseen avanzar en los conocimientos sobre el acceso a bases de datos relacionales desde Java basadas en relaciones entre objetos (ORM)
Objetivos:
• Conocer las bases de la configuración de Hibernate
• Saber definir un modelo E/R en el ORM
• Saber integrar Hibernate con Spring
• Saber realizar consultas con HQL
Temario
1. Introducción
2. Acceso a datos con Hibernate
3. Relaciones
4. Herencia
5. Consultas básicas
6. HQL
7. Acceso a datos con JPA (Java Persistencia API)
8. Spring Boot JPA
Temario
- Instalacíón
- Área de Administración
- Gestión de contenidos
- Tipos de Contenido
- Tipos de comentario
- Gestión de Menús
- Gestión de Bloques
- Temas visuales: Instalación y Configuración
- Ampliación de funcionalidades con módulos
- Usuarios, roles y permisos
- Taxonomías
- Formatos de Texto y editores WYSIWYG
- Tipos de contenido: Campos adicionales
- Imágenes y archivos
- Presentación de Contenidos
- Búsquedas
- Idiomas, traducción y sitios multiidioma
- Vistas:
* Creación y configuración
* Campos, filtros y ordenación
* Configuración Avanzada
- Modificación de Temas
- Foros y Books
- Agregar y generar contenido sindicado
- Gestión, mantenimiento y actualización del portal
- Instalación del Servidor Local
- Gestión de la configuración
- Edición de contenido con Paragraphs
- Formularios
- Panels
- Display Suite
- Ampliación de Vistas
- Flujo de trabajo y control de acceso
Temario
1.-Introducción
Conceptos
Objetivos
Herramientas
Versionado
Calidad del Software
2.- Pruebas
Tipos de pruebas
Pruebas de unidad
Pruebas de integración
Pruebas de aceptación
Pruebas de rendimiento
3.- Integración continua
Repositorios
Construcción
Acciones postconstrucción
Calidad del código
Despliegue de pruebas
Lanzamiento de pruebas
Pipelines
4.- Entrega continua
Definición del pipeline
Gestión del pipeline
Toma de decisiones
Coordinación con el cliente
5.- Docker en CI
Introducción
Imágenes
Contenedores
Volúmenes y puertos
Kubernetes
Servicios
Helm
6.- Seguridad
Entorno
Credenciales
Permisos
Gestión de configuraciones
Vaults
Redes
Temario:
Destinado a:
Profesionales con Formación profesional, carrera universitaria o experiencia relacionada el sector industrial y/o la informática que deseen aprender la creación de servicios rest con Java
Objetivos Formativos:
Requisitos:
Temario:
1. Visión general de REST y HTTP
2. JSON e Introducción a JAX-RS
3. Diseño e implementación de recursos REST
4. JAX-RS Injection
5. API Cliente JAX-RS 2.0. Clientes de bajo nivel
6. Control de errores y respuestas del servidor
7. JAX-RS asíncrono
8. Securizando JAX-RS: Autenticación HTTP básica y solución customizada: Cifrado del mensaje 3DES y firma con MAC X9.19
Temario del curso:
- Introducción
• Introducción
• Aplicaciones Nativas
• Aplicaciones Web
• Aplicaciones Híbridas
• Cordova
• Ionic
• Componentes principales
• ¿Y el Control?
• ¿Cómo Empiezo?
• Esto Mola ¿Y Ahora Qué?
- Componentes
• Introducción
• Toolbar
• Navegación
• Listados
• Modales
• Grid
• Scroll
• Formularios
• Action Sheets
• Integración con Cordova
-Native
• Plugins disponibles
• Platform
• Device
• SplashScreen
• Online Offline
• Geolocalización
• Media
• Whitelist
• Vibration
-Empaquetado
• Phonegap
• iOS
• Android
Requisitos
• Fundamentos de Programación
• Programación Orientada a Objetos
• Bases de Datos Relacionales
• Programación Web
Duración 40h
Objetivos:
* Conocer la Arquitectura de Spark desde la perspectiva de un desarrollador
* Saber integrar Spark con fuentes de datos: Hadoop, CVS, Bases de Datos
* Saber construir, procesar y modificar RDD's en Spark
* Saber aplicar algoritmos de Machine learning en Scala para Spark tanto para clasificación, regresión y clusterización
Temario:
1.- Introducción
- Instalación
- Shell
- Dataset
- RDD’s
- DataFrame
2.- RDD/DataSet/DataFrame
* Colecciones
* Dataset Externos
* Operaciones
* Básicas
* Pasando funciones
* Clave Valor
* Transformaciones
* Acciones
* Aleatoriedad
* Persistencia
* Variables compartidas
3.- Jobs
* Desplegando en un cluster
* Lanzando Jobs
* Unit testing
* Job Scheduling
4.- Datasources
* Carga y guardado
* File source
* Ficheros Parquet
* Ficheros JSON
* JDBC
* Ficheros avro
5.- MLLib
- Dataframe
- Clasificaciones y Regresiones
- Regresión linear
- Clustering: Kmeans
- Reducción de DimensioneS: PCA
- Clasificación: Árboles de Decisión
- Regresión: Random Forest
6.- Streaming
- Introducción
- StreamingContext
- Dstream
- Tranformaciones
7.- GraphX
- Introducción
- Grafos
- Operadores
- Algoritmos
Objetivos:
* Conocer y saber manejar Scala como lenguaje de programación
* Saber programar orientado a objetos con Scala
* Saber manejar estrcturas de datos complejas en Scala
* Saber manejar el Acceso a Bases de Datos Relacionales
Temario:
* Scala:
- Introducción
- Entorno de Trabajo
- Sbt
- Variables
- Funciones
- Clases y Objetos
- Herencia
- Paquetes
* Programación Funcional
- Introducción
- Funciones de primer Orden
- Funciones de Alto Orden
Destinado a
Licenciados, estudiantes o trabajadores en campos de las empresas TIC que realizan trabajos en el entorno web, de desarrollo web Frontend y que precisan una aproximación amplia y completa a la Programación Web para poder realizar páginas dinámicas.
Requisitos
Se requiere nivel medio en metodología de la programación web y nociones de HTML, CSS y Javascript.
Temario
1 Introducción
1.1 Que es jQuery
1.2 Añadiendo jQuery a tus páginas
1.3 Ejemplo básico de jQuery
1.4 Descargando jQuery
1.5 Sintaxis jQuery
1.6 La función Document Ready
2 Selectores
2.1 Selectores jQuery
2.2 Selectores de elementos
2.3 Selectores de atributos de jQuery
2.4 Selectores CSS jQuery
3 Manipulación del DOM y de CSS
3.1 Cambiando el contenido HTML
3.2 Añadiendo contenido HTML
3.3 El método jQuery css()
3.4 Devolver la propiedad CSS
3.5 Establecer la propiedad y su valor
3.6 Establecer múltiples pares CSS de propiedad/valor
3.7 Los métodos height() y width() de jQuery
3.8 Atributos, clases y valores
4 Filtrado
4.1 Encontrar los elementos por un índice
4.2 Filtrando elementos
4.3 Localizando elementos descendientes
4.4 Métodos jQuery para recorrido del DOM
5 Eventos
5.1 El objeto Event
5.2 Eventos
6 jQuery UI
6.1 Qué es jQuery UI
6.2 Uso de jQuery UI
6.3 Crear y usar temas de jQuery UI
7 Plugins jQuery
7.1 Preparándonos
7.2 Contexto
7.3 Lo básico
7.4 Manteniendo la cadena
7.5 Valores por defecto y opciones
7.6 Espacios de nombres
7.7 Resumen y buenas practicas
8 AJAX
Destinado a:
Profesionales con Formación profesional, carrera universitaria o experiencia relacionada el sector industrial y/o la informática que deseen aprender la creación de servicios Rest con Python
Requisitos de los Alumnos:
Objetivos Formativos:
Requisitos:
Temario:
1: Introducción
Arquitectura SOA
Ventajas
Desventajas
Servicios Web
SOAP
REST
Resumen
2: Django
Introducción
Características
Mejoras en 2.0
Instalación
IDE’s
3: Rutas y Vistas
Introducción
Gestión de Rutas
Vistas (Controladores)
Funciones del Controlador
Captura de parámetros por URL
4: Modelo de BBDD
Introducción
ORM
Modelos
Migraciones
Shell
Consultas básicas
Agregaciones
Relaciones entre modelos
5: MongoDB desde Python
Introducción
Colecciones y Documentos
Consultas básicas
Agregación
6: Peticiones Rest
Django Rest Framework
Funcionalidades
Instalación
Serializadores
URL's
Vistas
Pruebas
7: Recursos Alternativos
Autenticación
Flask
SqlAlchemy
Pruebas
Requisitos de Equipo:
Destinado a:
Profesionales con Formación profesional, carrera universitaria o experiencia relacionada el sector industrial y/o la informática.
Objetivos Formativos:
• Conocer las técnicas habituales de manejo de datos para su uso posterior
• Conocer las técnicas típicas de estadística
• Saber aplicar los distintos algoritmos de modelos de predicción
• Saber presentar los datos en forma de gráficas
Requisitos:
• Fundamentos de programación
• Programación Python
Temario:
1. Introducción
- Características y Etiquetas
- Aprendizaje supervisado
- Aprendizaje no supervisado
- Aprendizaje por refuerzo
- Sobreajuste
2. Entorno de Desarrollo
- Introducción
- Bases de Datos
- Servicios Web
- Ficheros CSV
- IDE’s
- Pycharm/Anaconda
- Bibliotecas
3. Estadística
- Introducción
- Representación cartesiana
- Histogramas
- Gráficos de dispersión
- Coeficiente de correlación
- Regresión lineal
- Tipos de Correlación
- Agrupaciones
4. Preparación de los datos
- Cargar los datos necesarios para el proyecto
- Modelos de datos (Dataset)
- Carga desde CSV
- Inspección de los tipos de datos
- Inspección cuantitativa y de salud de los datos
- Limpiar los datos
- Manejo de datos faltantes
- Pandas, Numpy, Scipy
5.- Generación de gráficas
- Tipos de Gráficas
- Matplotlib
- Histogramas
- Gráficas de dispersión
- Pyplot
6. Algoritmos: Clasificación y Regresión
- Sklearn
- Regresiones
* Regresión Lineal
* Regresión Logística
* Regresión Logística Multinomial
- Clasificaciones
* KNN
*Kmeans
- Reducción de dimensiones: PCA
7. Árboles
- Introducción
- Árboles de Decisión
- Random Forest
8. Redes Neuronales y Deep Learning
- Introducción
- Problemas de las redes neuronales
- MLPC Multi-layer Perceptron Classifier
- Underfitting y Overfitting
- TFLearn
- TensorFlow
- Pytorch
- Deep Learning
- ImageNet
- Redes convolucionales
8. Proyecto Final
- Proyecto final de módulo
Temario:
1.- Introducción
2.- Variables
3.- Funciones
4.- Estructuras de Control
5.- Clases, Objetos y Herencia
6.- Colecciones
Destinado a
Licenciados, estudiantes o trabajadores en campos de las empresas TIC que realizan trabajos en el entorno web, de desarrollo web Frontend y que precisan una aproximación amplia y completa a la Programación Web para poder realizar páginas dinámicas.
Requisitos
Se requiere nivel medio en metodología de la programación web y nociones de HTML5, CSS3 y Javascript.
Temario
1: Introducción
• Ventajas
• Arquitectura
2: Instalación
• Instancia de VueJS
• Herramientas de Trabajo
• Flujo de Trabajo
3: Básicos
• Introducción
• Sintaxis
• Plantillas
• Componentes
4: Formularios
• Introducción
• Inputs
• Validación
5: Componentes
• Introducción
• Directivas
• Filtros
• Mixins
6: SPA's y Rutas
• Introducción
• Rutas
• Navegación
7: Interfaz
• Introducción
• Animaciones
• Transiciones
• Bootstrap
• Vuetify
8: Acceso a recursos
• Introducción
• Axion
• Vuex
9: Producción
Introducción
• Vue-cli
• Componentes en un mismo fichero
• Reducción de CSS
• Manejo de errores en producción
• Internacionalización
10: Proyecto Final
1. ¿Qué es Python?
1.1.Algunas características
1.2.Propiedades del lenguaje
1.3.Biblioteca estándar
1.4.Comenzando a programar
2. Tipos de datos
2.1.Tuplas, listas y diccionarios
2.2.Estructuras de control de flujo,Bucles
2.3.Comprensiones de listas
2.4.Archivos
2.5.Expresiones regulares
3. Programación funcional
3.1.Definiendo una función
3.2.Llamando a una función
3.3.Argumentos posicionales y nominados
3.4.Argumentos defaults
3.5.Recursividad
4. Programación orientada a objetos
4.1.Definiendo una clase
4.2.Métodos y atributos de instancia
4.3.Métodos y atributos de clase
4.4.Herencia
4.5.Módulos
5. Programación avanzada
5.1.Control de errores, manejo de excepciones
5.2.Programas multitareas
5.3.Interfaz gráfica
6. Trabajando en Red
6.1.Sockets
6.2.Leyendo una URL
6.3.Impactando un Web Service
6.4.Mail
6.5.FTP
Destinatarios:
Profesionales del Sector TIC que quieran iniciarse en el mundo de la programación Frontend con uno de los frameworks más utilizamos en el mundo y con mayor oferta laboral de mercado.
Requisitos:
* Fundamentos de Programación
* Programación Web
* Bases de Datos Relacionales
Temario:
1. ¿Qué es Angular?
• Introducción
• Arquitectura
• Módulos
• Componentes
• Servicios
• Directivas
• Rutas
• Pipes
2. Instalación y Primera Aplicación
• Introducción
• Instalación
• Creación de un proyecto: Angular Cli
• Arrancar el proyecto
• Componentes principales
3: Componentes
• Introducción
• Creación de un componente
• Plantillas
• Directivas
• Pipes
• CSS
• DataBinding
• Asociando el componente
• Servicios
• Modificando un componente
• Inyección de Dependencias
4. Servicios y Presentación de Datos
• Introducción
• Creando un Servicio
• Asociando el Servicio
• Cliente HTTP
• Presentación de Datos
5. Eventos
• Introducción
• Ciclo de Vida
• Click
• $event
• Filtros
6. Formularios
• Introducción
• Crear el modelo
• Asociando al Componente
• Creando el formulario
• Asociando a los Modelos
• Control de Validaciones
• Rellenando Selects
• El evento ngSubmit
• Formularios Reactivos
7. Rutas y Navegación
• Introducción
• Gestión de Rutas
• Asociando rutas a componentes
8. Firebase
Introducción
• Funcionalidades
• Configuración
• Consultas
• Autenticación
9. Material
• Introducción
• Instalación
• Integración con Componentes
• Despliegue en la vista
• Toolbar
• SideNav
• Flex-Layout
• SideNav Completa
• Formularios
10: Testing
• Introducción
• Pruebas de Unidad
• Pruebas de Aceptación
11: PWA
• Introducción
• Service Worker
• App Shell
• Manifest.json
• Angular CLI PWA
• ngsw-config.json
• Lanzando la App en Producción
• SwUpdate
• Creando un Servicio Cacheable
• SwPush
Destinado a
Licenciados, estudiantes o trabajadores en campos de las empresas TIC que realizan trabajos en desarrollo o implantación de aplicaciones, normalmente web y precisan una aproximación amplia y completa a la utilización de contenedores Docker.
Requisitos
Se requiere nivel medio de instalación y configuración de servidores, mejor si son web
Temario:
¿Qué es Docker?
• Infraestructura de hoy
• Sistemas de contenedores
• Arquitectura Docker
• Herramientas Docker
• Docker Hub
Docker Engine
• Instalación
• Imágenes y contenedores
• Buscando imágenes base
• Sistema de Capas
• Construyendo imágenes
• Ejecutando imágenes
• Práctica: Ejecutar un contenedor docker
Gestión de Imágenes
• DockerFile
• Instrucciones
• Referencias entre imágenes: From
• Definiciones: Label, Env, Workdir
• Ejecutando comandos: Run, Cmd, Copy, Entrypoint, User, Onbuild
• Exponiendo recursos: Expose, Volume
• Práctica: creando una imagen
Gestión de Capas en una imagen
• Contenedores y Capas
• ¿Cómo guardo los cambios de una imagen?
• Volúmenes de Datos enlazados a una Imagen
• Drivers de Almacenamiento
Redes, Recursos y Dockerización
• Redes por defecto
• Redes Definidas por el Usuario
• Dockerizando Servicios
• Definición de límites
• Integración Systemd
• Integración Chef, Ansible, Puppet
• Orquestación
Docker Compose
• Introducción
• Instalación
• Componiendo el Stack
• Definiendo servicios
• Práctica: Wordpress
Seguridad
• Introducción
• Securizando Contenedores
• Imágenes Confiables
Destinado a
Licenciados, estudiantes o trabajadores en campos de las empresas TIC que realizan trabajos en desarrollo o implantación de aplicaciones, normalmente web y precisan una aproximación amplia y completa a la utilización de NodeJS y Express JS contra bases de datos desde un API Rest.
Requisitos
• Fundamentos de Programación
• Programación orientada a objetos
• Programación Javascript
• Bases de Datos relacionales
Temario NodeJS
1. Introducción
• NPM
• Instalación
• Configuración básica
2. NPM
• Información y Búsqueda
• Instalación
• Desinstalación
• Global vs Local
• Actualización
3. Módulos
• Creación de módulos
• packages.json
• Webpack
• Publicación de paquetes
• .gitignore y .npmignore
• Versionado
• Módulos privados
• Dependencias Git
4. Patrones
• Estructura en Capas
• HTTP
• Pipes y Filtros
• ORM
• Vista
• Plantillas de aplicación
5. API Rest
• Introducción
• Servidor Node
• Rutas en Express
• Creación de Controladores
• Restify
6. ORM
• Introducción
• Drivers
• MongoDB
• ORM Mongoose
• Mysql
• ORM Sequelize
7. App Completa
• Introducción
• Controladores
• Vistas
• Formularios
• Navegación
8. Recursos
• Introducción
• Buenas Prácticas
• Express JS
• KoaJS
• Oauth
• PassportJS
9. Swagger
• Introducción
• Swagger Editor
• Swagger UI
• Swagger Codegen
10. Testing
• Introducción
• Instalación
• Flujo de Trabajo
• Escribir Pruebas
• Reporting
Destinado a
Licenciados, estudiantes o trabajadores en campos de las empresas TIC que realizan trabajos en el entorno web, de desarrollo web Frontend y que precisan una aproximación amplia y completa a la Programación Web para poder realizar páginas dinámicas.
Requisitos
Se requiere nivel medio en metodología de la programación web y nociones de HTML5, CSS3 y Javascript.
Temario
1: Introducción
• Ventajas
• MVC
• Integración con el HTML
• DataBinding
• Inyección de dependencias
• Tipos de Componentes
• Directivas
• Controlador
• Bootstrap
2: Rutas
• Introducción
• angular-routes.js
• Rutas con template
• Rutas con templateUrl
3: Controladores y Servicios
• Introducción
• Controladores
• Scopes
• Servicios
• $http
4: Filtros
• Introducción
• Filtros predefinidos
• Filtros personalizados
5: Eventos y Validación de Formularios
• Introducción
• Eventos
• Formularios
• Validación de Formularios
• Validación personalizada
6: Directivas
• Introducción
• Restricciones
• Plantilla
• Scope
• Link
• Controlador
• Ejemplo Complejo
Destinado a
Licenciados, estudiantes o trabajadores en campos de las empresas TIC que realizan trabajos en el entorno web, de maquetación y diseño y que precisan una aproximación amplia y completa a la Programación Web para poder realizar páginas dinámicas.
Requisitos
Se requiere nivel medio en metodología de la programación web y nociones de XHTML 1.0 y CSS2.
Objetivos
Conocer los fundamentos del protocolo HTTP/S
Conocer los distintos agentes que forman parte del protocolo HTTP y su función
Conocer los fundamentos de Javascript
Saber construir y reutilizar funciones
Conocer los objetos principales de Javascript
Saber utilizar los objetos de JS para funciones definidas en unos requisitos
Conocer las distintas clases básicas de JS
Saber modificar el DOM según unos requisitos previos
Conocer las buenas prácticas de uso de JS
Temario
1 Sintaxis básica y elementos principales
1.1 Conceptos básicos
1.2 Sintaxis y clases básicas
1.3 Elementos del Lenguaje:
1.4 Operadores
2 Estructuras de control
2.1 Condiciones
2.2 Bucles
2.3 Switch
2.4 Ruptura de Bucles
3 Funciones
3.1 Definición y llamada de funciones
3.2 Manejo de parámetros
3.3 Ámbito de las variables en funciones
3.4 Devolviendo valores en la función
4 Programación orientada a objetos en Javascript
4.1 Empezando con los objetos en Javascript
4.2 Herencia
4.3 Extension de objetos nativos mediante el prototipo
5 Objetos de javascript
5.1 Objetos generales de javascript
5.2 Objetos window, document, y form
5.3 Manejo del DOM
5.4 Javascript en los distintos navegadores
6 Eventos
6.1 Actividades
7 Cookies
7.1 Elementos de una cookie
8 Validación de formularios
8.1 Acceso y manejo de las propiedades de los elementos
8.2 Validación de los datos y notificaciones al usuario (manejo de errores)
Temario JBOSS
1.- Introducción
• Componentes de JEE
• Versiones de JBoss
• Componentes de JBoss
• Instalación de JBoss
• Configuración de JBoss
• Arranque y Parada de JBoss
• Práctica: Instalación
• Trabajando con JBoss
2.- Arquitectura
• Carpetas y Ficheros del Servidor
• Práctica: Revisión de carpetas
• Módulos JBoss
• Práctica: Trabajando con Módulos
• Ficheros de Configuración del Servidor
3.- Gestión y Log
Cliente de Línea de
• Comandos (CLI)
• Práctica: CLI
• Gestión de recursos
• Práctica: Manejando recursos
• Gestión de recursos CLI
• Práctica: Usando operaciones
• La Consola Web
• Gestión
• Práctica: Usando la consola web
• RHQ Monitorización JBoss
• Servidor de Log
• Práctica de Log
4.- Interfaces y Sockets
• Introducción
• Interfaces
• Sockets
• Puntos de acceso de gestión
5.- Despliegues
• Archivos de Despliegue
• Desplegando Aplicaciones
• Práctica: Despliegues
• Scanner de Despliegues
• Práctica: Autodespliegue
6.- Subsistemas
• Threads Pools
• Contenedor Web
• Práctica: contenedor Web
• JNDI
• Práctica: JNDI
• Datasources
• Práctica: Datasources
• EJB
7.- Mensajería
• Introducción
• Configuración de HornetQ
• Manejo con CLI y la consola web
• Práctica: Trabajando con Mensajes
8.- Seguridad
• Introducción
• Asegurando la interfaz de gestión
• Role Based Access Control (RBAC)
• Security Domains
• Práctica: asegurando una app
• DatabaseUsers
• Práctica: DatabaseUsers
• LDAP
• Más sobre asegurar aplicaciones
• TLS/SSL y HTTPS
• Práctica: Habilitar HTTPS
9.- Clúster y balanceo
• Introducción
• Servicios Clusterizados
• Práctica: Cluster EJB
• Balanceadores del Carga
• Práctica: Balanceadores de Carga
10.- Modo Domain
• Introducción
• Trabajando con el Dominio
• Práctica: Arrancando un Controlador de dominio
• Trabajando con el Dominio
• Práctica: Arrancando un Controlador de Host
• Desplegando Contenido en un Dominio
• Práctica: Desplegando en un Dominio
Complemento del Certificado de Profesionalidad: Confección y Publicación de Páginas Web
Destinado a
Licenciados, estudiantes o trabajadores en campos de las empresas TIC que realizan trabajos en el entorno web, de maquetación y diseño y que precisan una aproximación amplia y completa a la Programación Web para poder realizar páginas dinámicas.
Requisitos
Se requiere nivel medio en metodología de la programación web y nociones de XHTML 1.0 y CSS2.
Objetivos
Conocer los fundamentos del protocolo HTTP/S
Conocer los distintos agentes que forman parte del protocolo HTTP y su función
Conocer los fundamentos de Javascript
Saber construir y reutilizar funciones
Conocer los objetos principales de Javascript
Saber utilizar los objetos de JS para funciones definidas en unos requisitos
Conocer las distintas clases básicas de JS
Saber modificar el DOM según unos requisitos previos
Conocer las buenas prácticas de uso de JS
Temario
1 Sintaxis básica y elementos principales
1.1 Conceptos básicos
1.2 Sintaxis y clases básicas
1.3 Elementos del Lenguaje:
1.4 Operadores
2 Estructuras de control
2.1 Condiciones
2.2 Bucles
2.3 Switch
2.4 Ruptura de Bucles
3 Funciones
3.1 Definición y llamada de funciones
3.2 Manejo de parámetros
3.3 Ámbito de las variables en funciones
3.4 Devolviendo valores en la función
4 Programación orientada a objetos en Javascript
4.1 Empezando con los objetos en Javascript
4.2 Herencia
4.3 Extension de objetos nativos mediante el prototipo
5 Objetos de javascript
5.1 Objetos generales de javascript
5.2 Objetos window, document, y form
5.3 Manejo del DOM
5.4 Javascript en los distintos navegadores
6 Eventos
6.1 Actividades
7 Cookies
7.1 Elementos de una cookie
8 Validación de formularios
8.1 Acceso y manejo de las propiedades de los elementos
8.2 Validación de los datos y notificaciones al usuario (manejo de errores)
Destinado a
Licenciados, estudiantes o trabajadores en campos de las empresas TIC que realizan trabajos en el entorno web, de maquetación y diseño y que precisan una aproximación amplia y completa a la Programación Web para poder realizar páginas dinámicas.
Requisitos
Se requiere nivel medio en metodología de la programación web y nociones de XHTML 1.0 y CSS2.
Temario
1: Introducción
1.1 Especificación oficial
1.2 Nuevas funcionalidades
2: Selectores
2.1 Selectores
2.2 Prefijos específicos de navegadores
3: Interfaz básico de Usuario
3.1 box-sizing
3.2 overflow-x y overflow-y
4: Colores
4.1 Propiedad opacity
4.2 Función rgba()
4.3 Función hsl()
4.4 Función hsla()
5: Fondos y Bordes
5.1 Bordes
5.2 Sombras
5.3 Fondos
6: Valores de Imagen y Cambios de Contenido
6.1 CSS gradients
6.2 Degradados lineales
6.3 Degradados radiales
6.4 Repetición de degradados
7: Texto
7.1 Sombra en textos
7.2 Fuentes web
8: Layouts Multicolumna
8.1 Propiedad shorthand
8.2 Equilibro de altura
8.3 Espacios entre columnas
8.4 Trazos entre columnas
8.5 Texto sobre columnas
9: Media Queries
9.1 Sintaxis
9.2 Operadores lógicos o logical operators
10: Transformaciones
10.1 Propiedades principales
10.2 Funciones de transformación 2D
10.3 Ejemplos
10.4 Propiedades 3D
11: Transiciones
11.1 Propiedades "animables"
11.2 Propiedad transition-property
11.3 Propiedad transition-duration
11.4 Propiedad transition-timing-function
11.5 Propiedad transition-delay
11.6 Propiedad transition
11.7 Listas de valores
11.8 Finalización de una transición
11.9 Transiciones y JavaScript
12: Animaciones
12.1 Configuración
12.2 keyframes
12.3 Ejemplos
13: Nuevas maquetaciones
13.1 FlexCSS
13.2 Grid CSS
Accesibilidad
• Introducción
• Referencias sobre Accesibilidad Web
• Marco Legal Actual
• Herramientas de evaluación de la accesibilidad y recursos disponibles
• Principales barreras de Accesibilidad para la discapacidad visual
• Orientaciones para conseguir páginas más accesibles para personas con discapacidad visual
• Metodología de comprobación de Accesibilidad Web
Usabilidad
• Introducción
• 8 Reglas de oro
• Elementos de un buen sitio
1: Introducción
1.1 ¿Qué es CSS?
1.2 Especificación oficial
1.3 Funcionamiento básico de CSS
1.4 Cómo incluir CSS en un documento XHTML
1.5 Glosario básico
1.6 Medios CSS
1.7 Comentarios
1.8 Sintaxis de la definición de cada propiedad CSS
2: Selectores
2.1 Selectores básicos
2.2 Selectores avanzados
2.3 Agrupación de reglas
2.4 Herencia
2.5 Colisiones de estilos
3: Unidades de Medida y Colores
3.1 Unidades de medida
3.2 Unidades absolutas
3.3 Unidades relativas
3.4 Colores
4: Modelo de Cajas
4.1 Anchura y altura
4.2 Margen y relleno
4.3 Bordes
4.4 Margen, relleno, bordes y modelo de cajas
4.5 Fondos
5: Posicionamiento y Visualización
5.1 Tipos de elementos
5.2 Posicionamiento
5.3 Posicionamiento normal
5.4 Posicionamiento relativo
5.5 Posicionamiento absoluto
5.6 Posicionamiento fijo
5.7 Posicionamiento flotante
5.8 Visualización
5.9 Propiedades display y visibility
6: Texto
6.1 Tipografía
6.2 Texto
7: Enlaces
7.1 Estilos básicos
7.2 Estilos avanzados
8: Listas
8.1 Estilos básicos
8.2 Estilos avanzados
9: Formularios
9.1 Estilos básicos
9.2 Estilos avanzados
10: Tablas
10.1 Estilos básicos
10.2 Estilos avanzados
11: Layout Básico
11.1 Centrar una página horizontalmente
11.2 Centrar una página verticalmente
11.3 Estructura o layout
11.4 Alturas/anchuras máximas y mínimas
11.5 Estilos avanzados
12: Otros Estilos
12.1 Versión para imprimir
12.2 Hacks y filtros
12.3 Prioridad de las declaraciones CSS
13: CSS Avanzado
13.1 Técnicas imprescindibles
13.2 Selectores
13.3 Pseudo-elementos
13.4 Propiedades avanzadas
Destinado a
Licenciados, estudiantes o trabajadores en campos de las empresas TIC que realizan trabajos en el entorno web, de maquetación y diseño y que precisan una aproximación amplia y completa a la Programación Web para poder realizar páginas dinámicas.
Requisitos
Se requiere nivel medio en metodología de la programación web y nociones de XHTML 1.0 y CSS2.
Temario
1: Introducción
1.1 ¿QUÉ ES HTML5?
1.2 Especificación oficial
1.3 5 Tips
2: Semántica
2.1 Cabecera del documento
2.2 Nuevas etiquetas semánticas
2.3 Estructura de un documento HTML5
2.4 Uso de las nuevas etiquetas semánticas
2.5 Atributos globales
3: Elementos de Formulario
3.1 Nuevos tipos de input
3.2 Nuevos atributos
3.3 Nuevos elementos
4: ¿Qué es Modernizr?
4.1 Añadir Modernizr a una página
4.2 Objeto Modernizr
4.3 Clases CSS en Modernizr
4.4 El método load()
5: DataSet
5.1 Utilización de los data attributes
5.2 data attributes y JavaScript
6: Multimedia
6.1 Vídeo
6.2 Codecs, la nueva guerra
6.3 API multimedia
6.4 Fullscreen video
6.5 Audio
7: Canvas
7.1 Elementos básicos
7.2 Dibujar formas
7.3 Rutas
7.4 Colores
7.5 Degradados y patrones
7.6 Transparencias
7.7 Transformaciones
7.8 Animaciones
8: Almacenamiento Local
8.1 Web Storage
8.2 Web SQL
8.3 IndexedDB
9: Sin Conexión
9.1 El archivo de manifiesto de caché
9.2 Cómo servir el manifiesto
9.3 Proceso de cacheado
9.4 Actualización de la memoria caché
9.5 Eventos online/offline
10: Drag and Drop
10.1 Detección de la funcionalidad
10.2 Creación de contenido arrastrable
10.3 Eventos de arrastre
10.4 Arrastre de archivos
11: Geolocalización
11.1 Métodos del API
12: Web Workers
12.1 Transferencia de mensajes
12.2 Utilización de Web Workers
12.3 Subworkers
12.4 Gestionar errores
12.5 Seguridad
13: WebSockets
13.1 Introducción
13.2 Crear un WebSocket
13.3 Comunicación con el servidor
13.4 WebSocket en el servidor
14: EventSource
14.1 EventSource en el servidor
15: File API
15.1 Detección de la funcionalidad
15.2 Acceso a través del formulario
15.3 Cómo leer archivos
15.4 Fragmentación de archivos
16: History
16.1 API
17: XMLHTTPREQUEST2
17.1 Recuperación de archivos
17.2 Especificación de un formato de respuesta
17.3 Envío de datos
17.4 Subida de archivos o Blob
17.5 Subida de un fragmento de bytes
17.6 Ejemplos prácticos
1: ¿Qué es HTML?
1.1 HTTP es simple
1.2 Paso 1: el cliente manda una Petición
1.3 Paso 2: el servidor devuelve una Respuesta
2: Introducción a HTML
2.1 ¿Qué es HTML?
2.2 Estructura y primer documento
3: ETIQUETAS, ATRIBUTOS Y ELEMENTOS
3.1 Tipos de atributos
3.2 Elementos
4: TEXTO
4.1 Cómo estructurar un texto
4.2 Marcado básico de un texto
4.3 Marcado avanzado de un texto
4.4 Etiqueta <span>
4.5 Espacios en blanco y nuevas líneas
4.6 Codificación de caracteres
5: Enlaces
5.1 URL
5.2 Enlaces básicos
5.3 Enlaces avanzados
5.4 Otros tipos de enlaces
5.5 Ejemplos prácticos de enlaces
6: Listas
6.1 Listas no ordenadas
6.2 Listas ordenadas
6.3 Listas de definiciones
6.4 Listas anidadas
7: Imágenes y Objetos
7.1 Imágenes
7.2 Mapas
7.3 Objetos
8: Tablas
8.1 Tablas básicas
8.2 Tablas avanzadas
9: Formularios
9.1 Formularios básicos
9.2 Elementos de formulario
9.3 Formularios avanzados
9.4 Otros elementos de formulario
10: Estructura y Layout
10.1 Introducción
10.2 Estructura
11: Metainformación
11.1 Estructura de la cabecera
11.2 Metadatos
11.3 DOCTYPE
12: Otras etiquetas importantes
12.1 Comentarios
12.2 JavaScript
13: Validación
13.1 Validador del W3C
14: Proyecto
14.1 Introducción
14.2 Ánalisis
14.3 Desarrollo
14.4 Pruebas
14.5 Entregas
14.6 Mantenimiento
Enable kernel features.
Set up users and groups.
Configure system logging, the boot process, the network,and storage. Physical Volume Utilities
Volume Group Utilities
Install additional software packages.
Keep the kernel up to date using Ksplice.
Configure services such as NFS, FTP, OpenSSH, PAM.
Network Configuration
Network interfaces
Network configuration files
Network interface utilities
Network interface bonding
TCP wrappers
Virtual Local Networks (VLANs)
Virtualización de máquinas y KVM
Temario
1.- Introducción a Tomcat
2.- Instalación de Tomcat
3.- Fundamentos de Configuración de Tomcat
4.- Despliegue de Aplicaciones Web
5.- Despliegues a Gran Escala
6.- Configuración Avanzada
7.- Conexión de Tomcat con Apache Httpd
8.- Clúster de Alta Disponibilidad
9.- Diagnóstico de Fallos
10.- Tuning de Rendimiento
11.- Fundamentos de JVM
12.- Protocolo HTTP
Destinado a:
Licenciados, estudiantes o trabajadores en campos de las empresas TIC que realizan trabajos en el entorno web, dentro del aḿbito de las pruebas o testing de desarrollo web y que precisan una aproximación amplia y completa a la realización de pruebas de Programación Web en páginas dinámicas.
Objetivos:
Requisitos:
Se requiere nivel medio en metodología de la programación web y nociones de HTML, CSS y Javascript.
Temario:
1. Introducción a las pruebas unitarias
Estrategia de pruebas
Diseño de pruebas correctas
Pruebas unitarias con JUnit
Pruebas de los diferentes componentes de las aplicaciones
Objetos mock y proxies.
Cobertura de código
2. Pruebas de aplicaciones web con Selenium
Introducción a la automatización de pruebas para aplicaciones Web
Entorno de trabajo
Características
Construcción y ejecución de pruebas
Sintaxis del lenguaje de script
Pruebas de Selenium desde Java
API Selenium
Selenium Grid
3.Jenkins
Introducción
Visión global de las funcionalidades
Instalación y Configuración
Configuración de trabajos de ejecución
Invocación de comandos y scripts externos
Interfaz con CVS
Interfaz con SVN
Ejecución de pruebas automatizadas
Notificaciones
Métricas de calidad de código automatizadas. Sonar
Despliegue automatizado
Construcciones distribuidas
4. Maven
Introducción a Maven
Estructura
Repositorios, Dependencias y Objetivos
Plugins
Despliegue de servicios web con Maven.
Nexus
5. JMETER
Visión general de la herramienta
Construcción de un plan de pruebas
Configuración de los elementos de un plan de pruebas
Construcción de planes de pruebas para las siguientes tecnologías
Proyectos Web
Servidores de bases de datos
Webservices
Servidores de mensajería (pruebas de colas y temas)
Monitorización de un plan de pruebas
Receptores disponibles
Lanzamiento de pruebas en remoto y en grupo
6 JIRA
Administración
Revisión de requerimientos e instalación
Configuración de la presentación en la consola administrativa
Gestión de usuarios y grupos
Gestión de proyectos
Configuración de la seguridad
Configuración de flujos de trabajo
Configuración de correo electrónico
Archivado de proyectos individuales
Integración con sistemas de control de versiones
Configuración de opciones globales y administración del servidor
Usuario
Conceptos básicos sobre JIRA (proyecto, flujo de trabajo, incidencia)
Interacción inicial con el espacio de trabajo
Trabajando con incidencias
Adjuntando ficheros, capturas de pantalla
Creación de incidencias, de subtareas
Edición de incidencias
Envío por correo de una incidencia
Etiquetado de incidencias
Modificación de múltiples incidencias
Búsqueda de incidencias
Generación de informes
Visualización de la información de un proyecto
Personalización del cuadro de mando
1. Introducción
2. El entorno de desarrollo
Instalación del entorno de Desarrollo
Bibliotecas de Acceso
Primeros Pasos
3. Introducción al Modelo CRUD
Mapeo de consultas SQL a MongoDB
Consultas básicas y búsquedas de información
Operaciones de lectura
Operaciones de escritura
Un proyecto MongoDB
4. Agregación
Pipelines
Map-reduce
Operaciones de agregación de un sólo propósito
5 Índices
Conceptos básicos
Tipos de índices
Propiedades
Creación
Intersecciones
6 Herramientas y Servicios Complementarios
MMS
MongoDB Enterprise
OpsManager
7 Paso a producción
Sistemas soportados
Consideraciones por plataforma
Concurrencia
Consistencia de Datos
Networking
Consideraciones de hardware
Arquitectura
Compresión
Monitorización de rendimiento
Backups
Recursos adicionales
1. Introducción a iOS
- Dispositivos iOS
- Arquitectura de Software
- iOS Dev Center
- Tipos de Aplicaciones
- Requisitos Administrativos
2. Entorno de Desarrollo iOS: XCode
- Instalación
- XCode
- Interface Builder
- Instruments
- iOS Simulator
3. Mi primera App iOS
- Patrones de Diseño de Apps
- Creación del Proyecto
- Single View Application
- Storyboard
- View Controller
- Inspector de Conexiones
- Probando la App
4. Vistas
- UIView
- Vistas de Formulario
- Manejo de Teclado
- Selectores: Pickers
5. Imágenes
- UIImageView
- Imágenes en el proyecto: ArtWork
- UIImage
- Carga de imágenes desde Internet, galería y cámara
6. UITableView
- Colecciones de Datos en Pantalla
- UITableViewCell
- Protocolos: DataSource y Delegate
- UITableViewController
- Acciones en UITableView
7. Apliaciones Multi-View
- Segues
- Navigation Controller
- TabBar Controller
- Combinando
- Utility App
8. Persistencia de Datos: Sqlite
- AppDelegate
- Ciclo de Vida
- SQlite
9. CoreData
- Arquitectura
- Manejo de Entidades
- Integración en el Proyecto
- Consultas y llamadas
- Ejemplo CRUD
10. Publicación en la App Store
- iTunes Connect
- Guía de Apple para Publicación
- Exportación del Proyecto
- Proceso de publicación
- Ficha de la App
- Precio y Distribución
- Publicación Final
Temario:
1- Introducción
historia
características del lenguaje
Máquina Virtual
Compilador e intérprete
Hola Mundo
import
2- Variables
introducción
declaración
ámbito
tipos de datos primitivos
operadores
3- Estructuras de control
if
switch
while
do while
for
break, continue
4- Arrays y cadenas
arrays
clase String
5- Programación Orientada a Objetos
introducción
propiedades de la POO
clases
atributos
objetos
constructores
polimorfismo
especificadores de acceso
JavaBeans
métodos y propiedades genéricos (static)
destrucción de objetos
6- reutilización de clases
herencia
constructores anidados
final
clases internas
interfaces
clases abstractas
creación de paquetes
7.- Clases fundamentales
la clase Object
clase Class
reflexión
clase StringBuffer
números aleatorios
Fechas
cadenas delimitadas StringTokenizer
clases para la entrada y la salida
entrada y salida estándar
8.- Colecciones
estructuras estáticas de datos y estructuras dinámicas
interfaz Collection
Listas enlazadas
Sets
Maps
9.- excepciones
introducción a las excepciones
try y catch
manejo de excepciones
throws
throw
finally
10.- Ficheros
clase File
Lectura de archivos
Escritura de archivos
11.- JDBC
introducción
conexión
Interfaz Statement
Ejecución de consultas
Excepciones en la base de datos
Cursores
Procesos por lotes
Objetivos:
Formar profesionales con sólidos conocimientos en Wordpress capaces de realizar el análisis, diseño, desarrollo e implementación de aplicaciones corporativas siguiendo las particularidades de este gestor de contenidos (CMS).
Requisitos:
Formacion profesional o universitaria o experiencia en Informática
Objetivos:
Conocer el lenguaje de programación Kotlin
Saber definir funciones y estructuras de datos lógicas
Saber programar orientado a objetos
Saber manejar entrada y salida y ficheros
Saber crear y utilizar paquetes y bibliotecas
Temario
Introducción
Introducción a Kotlin
Ventajas de Kotlin
Compilación y ejecución
Instalación: JDK, JRE
Entornos de Desarrollo
Programación Básica
Sintaxis de Kotlin
Comentarios
Tipos de Variables
Tipos de Datos
Números
Arrays
Cadenas de Caracteres
Estructuras de Control
Control del Flujo
Sentencias condicionales
Bucles
Excepciones
Funciones
Programación Funcional
Definición de funciones
Paso de parámetros
Argumentos por defecto
Recursividad
Programación Orientada a Objetos
Clases y Objetos
Propiedades y Métodos
Constructores
Herencia
Herencia Múltiple
Interfaces
Clases Abstractas
Estructuras complejas de Datos
Generics
Listas
Set
Mapas
Diccionarios
Programación Avanzada
Archivos
Programación Funcional
Lambdas
Closures
Bibliotecas
Sobrecarga de Operadores
Anotaciones
Reflections
DSL
Destructuring
Comunicación con Java
Uso de Java desde Kotlin
Uso de Kotlin con Java
Temario de Android
Objetivos:
Conocer los fundamentos de la programación Móvil
Conocer la base de una App Android
Entender el sistema de compilación Gradle y la generación de APK’s
Saber implementar funcionalidades según la Arquitectura de Componentes Android
Saber definir una interfaz adaptable
Saber navegar entre las distintas pantallas de la App
Saber traducir una serie de requisitos a funcionalidades en Android
Saber conectar a un API Backend para buscar y gestionar informacion
Temario
Introducción
• Plataforma Android
• Requisitos del Desarrollo
• Tipos de Aplicaciones
Android Studio
• Introducción
• Gestión de Proyectos
• Vistas
• SDK Manager
• AVD Manager
Mi Primera Aplicación
• Creando el Proyecto
• Componentes Principales
• Hola Mundo al Detalle
• Probando la Aplicación
Componentes
• Activity
• Kotlin-Extensions
• Application
• Intent
• Fragmentos
• Navegación
Interfaz de Usuario
• Layouts
• Views y Eventos
• ModelView y LiveData
• RecycleView
• Formularios
• Menús y Diálogos
• Notificaciones
Gestión de Datos
• Preferencias compartidas
• Almacenamiento de ficheros
• Bases de Datos
• Room
• Paging
Publicación en la Google Play
• La consola de Publicación
• Proceso de publicación
• Firma del APK
• Ficha de la Play Store
• Precio y Distribución
• Productor InApp
• Sugerencias de Optimización
• Publicación Final
• La consola de Publicación
• Proceso de publicación
• Firma del APK
• Ficha de la Play Store
• Precio y Distribución
• Productor InApp
• Sugerencias de Optimización
• Publicación Final
Destinado a
Licenciados, estudiantes o trabajadores en campos de las empresas TIC que realizan trabajos en el entorno web, de desarrollo web Frontend y que precisan una aproximación amplia y completa a la Programación Web para poder realizar páginas dinámicas.
Requisitos
Se requiere nivel medio en metodología de la programación web y nociones de HTML, CSS y Javascript.
Temario
1 Introducción
1.1 Que es jQuery
1.2 Añadiendo jQuery a tus páginas
1.3 Ejemplo básico de jQuery
1.4 Descargando jQuery
1.5 Sintaxis jQuery
1.6 La función Document Ready
2 Selectores
2.1 Selectores jQuery
2.2 Selectores de elementos
2.3 Selectores de atributos de jQuery
2.4 Selectores CSS jQuery
3 Manipulación del DOM y de CSS
3.1 Cambiando el contenido HTML
3.2 Añadiendo contenido HTML
3.3 El método jQuery css()
3.4 Devolver la propiedad CSS
3.5 Establecer la propiedad y su valor
3.6 Establecer múltiples pares CSS de propiedad/valor
3.7 Los métodos height() y width() de jQuery
3.8 Atributos, clases y valores
4 Filtrado
4.1 Encontrar los elementos por un índice
4.2 Filtrando elementos
4.3 Localizando elementos descendientes
4.4 Métodos jQuery para recorrido del DOM
5 Eventos
5.1 El objeto Event
5.2 Eventos
6 jQuery UI
6.1 Qué es jQuery UI
6.2 Uso de jQuery UI
6.3 Crear y usar temas de jQuery UI
7 Plugins jQuery
7.1 Preparándonos
7.2 Contexto
7.3 Lo básico
7.4 Manteniendo la cadena
7.5 Valores por defecto y opciones
7.6 Espacios de nombres
7.7 Resumen y buenas practicas
8 AJAX
Destinado a
Licenciados, estudiantes o trabajadores en campos de las empresas TIC que realizan trabajos en el entorno web, de maquetación y diseño y que precisan una aproximación amplia y completa a la Programación Web para poder realizar páginas dinámicas.
Requisitos
Se requiere nivel medio en metodología de la programación web y nociones de XHTML 1.0 y CSS2.
Objetivos
Conocer los fundamentos del protocolo HTTP/S
Conocer los distintos agentes que forman parte del protocolo HTTP y su función
Conocer los fundamentos de Javascript
Saber construir y reutilizar funciones
Conocer los objetos principales de Javascript
Saber utilizar los objetos de JS para funciones definidas en unos requisitos
Conocer las distintas clases básicas de JS
Saber modificar el DOM según unos requisitos previos
Conocer las buenas prácticas de uso de JS
Temario
1 Sintaxis básica y elementos principales
1.1 Conceptos básicos
1.2 Sintaxis y clases básicas
1.3 Elementos del Lenguaje:
1.4 Operadores
2 Estructuras de control
2.1 Condiciones
2.2 Bucles
2.3 Switch
2.4 Ruptura de Bucles
3 Funciones
3.1 Definición y llamada de funciones
3.2 Manejo de parámetros
3.3 Ámbito de las variables en funciones
3.4 Devolviendo valores en la función
4 Programación orientada a objetos en Javascript
4.1 Empezando con los objetos en Javascript
4.2 Herencia
4.3 Extension de objetos nativos mediante el prototipo
5 Objetos de javascript
5.1 Objetos generales de javascript
5.2 Objetos window, document, y form
5.3 Manejo del DOM
5.4 Javascript en los distintos navegadores
6 Eventos
6.1 Actividades
7 Cookies
7.1 Elementos de una cookie
8 Validación de formularios
8.1 Acceso y manejo de las propiedades de los elementos
8.2 Validación de los datos y notificaciones al usuario (manejo de errores)
Tema 1 Introducción
Tema 2 Motores de almacenamiento
Visión general de la arquitectura y tipos de motores de almacenamiento
InnoDB
Conceptos y arquitectura
Configuración
Administración
Gestión de espacios de tablas
Gestión de tablas
Tablas comprimidas
Gestión del formato de ficheros
Ajuste de rendimiento
Opciones de arranque
Copia de seguridad y recuperación
Resolución de problemas
MyISAM
Conceptos y arquitectura
Opciones de arranque
Formatos de almacenamiento de tablas
Resolución de problemas
Tema 3 Optimización
Visión general de la optimización
Optimización SQL
Optimización de índices
Optimización de la estructura de la base de datos
Optimización de tablas InnoDB
Optimización de tablas MyISAM
Optimización del servidor MySQL
Análisis del plan de ejecución de consultas SQL
Gestión de bufferes y cache
Buffer en InnoDB
Cache de claves en MyISAM
Cache de consultas SQL
Cache de sentencias preparadas y procedimientos
Análisis de operaciones que requieren bloqueo
Monitorización del rendimiento
Tablas de PERFORMANCE SCHEMA
Particionamiento
Visión general del particionamiento
Tipos de particionamiento
Restricciones y limitaciones
Tema 4 Alta disponibilidad y escalabilidad
Visión general de las diferentes posibilidades
Empleo de DRBD
Empleo de Windows Failover Clustering
Empleo de MemCached
Empleo de MySQL Proxy
Tema 5 Replicación
Visión general
Configuración
Implementación
Soluciones basadas en replicación
Tema 6 MySQL Cluster
Visión general y conceptos
Instalación
Configuración
Utilidades de gestión
Gestión
Replicación
Limitaciones
Tema 7 MySQL Galera Cluster
Visión general y conceptos
Arquitecturas de despliegue (replicación /no replicación, distribución de carga,…)
Configuración
Copias de seguridad
Monitorización
Temario
Laravel API REST
Creación del proyecto
Dependencias
Manejo de rutas
- controladores
- paso de parámetros
API Rest
- Recoger consultas
- Devolver resultados
- JSON
- XML
Manejo de Datos
- Acceso BBDD
- Manejo de tablas y relaciones
- Validaciones de datos
- Consultas
- Cluster Mysql
- Cache de datos (redis-memcached)
CRUD API REST
- listado
- búsqueda
- creación
- mostrar
- Editar
- Borrar
Testing
- Probar API REST
Documentación
- Swagger
1.- Introducción
o Introduccion
o Aprovisionamiento
o Automatización
o Despliegues
2.- Instalación
o Versiones
o Requisitos
o Nodo Gestionado
o Instalacion en Linux
o Conexión Remota
3.- Primeros Pasos
o Inventario
o Patrones
o YAML
o Inventario en formato YAML
o Inventario dinamico
o Ansible en modo Ad-Hoc
4.- Playbooks
o Introduccion
o Patrones
o Variables
o Handlers
o Include e import
o Bucles
o Condiciones
5.- Modulos
o Introducción
o Argumentos Permisos
o Módulos Ficheros
o Módulos Gestor de Paquetes
o Módulos para ejecutar comandos
o Módulos notificaciones
o Módulos sistema
o Módulos Windows
o Módulos docker
o Módulos infraestructura Web
o Módulos herramientas de red
6.- Características Avanzadas
o Etiquetas
o Lookups
o Vault
o Tareas ansicronas
o Opciones Avanzadas
o Implementación de Ansible en un entorno DevOps
o Implementación de Ansible en un entorno DevOps mediante el uso de Vagrant.
7.- Ansible Galaxy
o Introducción
o Comandos Ansible Galaxy
o Importar nuestro rol para Galaxy
o Ficheros requisitos
Introducción
Proveedores
Lenguaje
Cómputo
Nerworking
Volúmenes
DNS
Balanceadores de Carga
Seguridad
Objetivos
Los principales objetivos del curso son:
Conocer la Arquitectura del sistema operativo
Aprender a instalar y gestionar paquetes
Conocer los fundamentos de red
Utilizar comandos GNU y Linux
Analizar los Shells, scripts y la gestión de datos
Gestionar el interfaz de usuario y el entorno de sobremesa
Realizar tareas administrativas
Comprender el uso de los dispositivos, archivos de sistema de Linux y su estándar jerárquico
Entender los fundamentos del sistema de seguridad
Activar los servicios esenciales del sistema
Duración
30 horas
Contenidos
INTRODUCCIÓN A LINUX
Historia de Linux.
El movimiento GNU.
Distribuciones más importantes.
INSTALACIÓN, CONFIGURACION Y GESTIÓN DE UBUNTU SERVER
Determinación del hardware.
Instalación del Sistema Operativo.
Particionado del disco duro.
Configuración del arranque del sistema.
Establecimiento de los niveles de ejecución, apagado y reinicio del sistema.
Configuración de idioma, teclado, tarjeta de red.
Instalación y gestión de paquetes.
Configuración de la contraseña de administrador.
Gestión de librerías compartidas.
Paquete de herramientas Debian.
Paquete de herramientas RPM y YUM.
COMANDOS DE ADMINISTRACIÓN
Uso de la consola de comandos.
Comandos de procesamiento de texto.
Comandos de información del sistema.
Comandos de gestión de procesos.
Comandos de gestión de directorios y ficheros.
Uso del editor Vi.
GESTIÓN DE DISPOSITIVOS Y SISTEMAS DE FICHERO
Creación de particiones y sistemas de ficheros.
Integridad de los sistemas de ficheros.
Montaje y desmontaje de sistemas de ficheros.
Control de propietarios.
Control de permisos.
Búsqueda de información y ficheros.
ENTORNOS SHELL Y SCRIPTING
Personalización del entorno Shell.
Codificación de scripts básicos.
Personalización de scripts existentes.
Comandos SQL.
INTERFACES DE USUARIO
Instalación y configuración de X11.
Instalación de un gestor de visualización.
Accesibilidad.
TAREAS ADMINISTRATIVAS
Gestión de usuarios y grupos de usuario.
Automatización de tareas.
Localización e internacionalización.
SERVICIOS BÁSICOS
Gestión del sistema horario.
Acceso de usuarios.
Configuración del correo electrónico.
Gestión de las impresoras.
CONFIGURACIÓN Y GESTIÓN DE RED
Conceptos sobre protocolos de Internet.
Configuración y gestión de red.
Establecer la seguridad del Host.
Encriptación de datos.
- Introducción
- Variables y declaraciones
- Métodos
- Argumentos nombrados
- Parámetros por defecto
- Herencia de Clases
- Delegación
- Enhancement
- Sentencia Using
- Sentencias de manejo de bibliotecas
- Bloques
- Manejo de Cadenas
- Plantillas
- Colecciones
- Operadores
- Sentencias de control
- Bucles
- Manejo de Null
- Clases y Objetos
- Manejo de propiedades
Curso OWASP 2021 Top 10
Duración: 12h
1.- Introducción a OWASP
• Sobre OWASP (Open Web Application Security Project )
• Introducción a OWASP TOP 10 2017
• Anotaciones sobre la Publicación
• OWASP Mutillidae II
• OWASP Zed Attack Proxy (ZAP)
• Riesgos de Seguridad en Aplicaciones
2.- Top 10 Tipos de Ataques
• A01:2021-Broken Access Control (Control de Acceso Roto)
• A02:2021-Cryptographic Failures (Exposición de Datos sensibles)
• A03:2021-Injection (Inyección)
• A04:2021-Insecure Design (Fallos de Diseño)
• A05:2021-Security Misconfiguration (Malas Configuraciones en Seguridad)
• A06:2021-Vulnerable and Outdated Components (Utilizar componentes con Vulnerabilidades Conocidas)
• A07:2021-Identification and Authentication Failures (Autenticación Rota)
• A08:2021-Software and Data Integrity Failures (Fallos de Integridad de Datos y Software)
• A09:2021-Security Logging and Monitoring Failures (Insuficiente Registro de Sucesos y Vigilancia de Seguridad)
• A10:2021-Server-Side Request Forgery (Seguridad a nivel de Servidor)
3.- Gestión y Metodología
• Información para los Desarrollares
• Información para los Evaluadores de Seguridad
• Información para las Organizaciones
• Información para los Gerentes de Aplicaciones
• Anotaciones sobre el Riesgo
• Detalles Sobre los Factores de Riesgo
• Metodología y Datos
Duración 40h
Teamrio:
1.- Introducción
- Google API's
- Consola de Acceso
- Api Keys
- Mi primer script
2.- Sheets API
- Introducción
- Spreadsheets
- Sheet
- Cell
3.- SpreadSheets
- Introducción
- Creación
- Modificación
- Borrado
4.- Sheets
- Creación
- Modificación
- Borrado
5.- Cells
- Lectura
- Modificación
- Formatos de Fechas
- Fórmulas
- Funciones
- Relaciones entre Celdas
- Vinculación
- Limpieza
- Rangos
6.- Columnas y Filtros
- Creación de un filtro
- Ordenación
- Criterios
7.- Movimiento de datos
- Selección de Datos
- Filtrado de Datos
- Escritura de Datos
8.- Emails
- Definición del Email
- Asunto
- Destinatarios
- Contenido del Email
- Plantillas
- Lectura de Emails
9.- Google Drive
- Lectura de directorios
- Lectura de Ficheros
- Ordenación
- Filtrado
Lit Element
Duración:
20h
Temario:
1.- Introducción
* Web Components
* Lit Element
* Componente
* Plantilla
* Eventos
* Typescript
2.- Entorno de Trabajo
* Node JS
* NPM
* Starter Kits
* IDE's
3.- Mi primer Componente
* Introducción
* Estructura de ficheros
* Propiedades
* Plantilla+ Estilos
4.- Propiedades
* Declaración de propiedades
* Tipos y conversiones
* Uso de Propiedades en Plantilla
5.- Plantillas
* Lit HTML
* Condicionales
* Bucles
* Binding
* Slots
* Composición
* Directivas HTML
6.- Estilos
* Propiedad Styles
* Reutlización
* Shadow Dom
* Variables CSS
7.- Eventos
* EventListeners
* DispatchEvent
* Custom Event
8.- Ciclos de Vida
* WebComponent
* Lit Element
* Render
* FirstUpdated
9.- Composición de Componentes
* Introducción
* Llamada entre componentes
* Mixins
* Controllers
10.- Publicación
* Publicación de un Componente
* Uso de componentes
* RollUp
11.- Pruebas
* Pruebas de Unidad
* Pruebas de Integración
* Pruebas de aceptación
Temario React
1. Introducción
- ¿Qué es React?
- Conceptos básicos
- Componentes
2. Creando una aplicación
- Create React App cli
- Generación del proyecto
- Añadir Typescript
- Lanzamiento de proyecto
- Estructura del proyecto
- Lanzamiento de pruebas
3. Componentes
- Introducción a JSX
- Renderizando elementos
- Componentes y propiedades
- El estado y el ciclo de vida
- Gestionando eventos en React
- Manejo de estado
4. Vistas
- Aplicación de estilos
- Renderizado condicional
- Pintando listas
- Formularios
- Subiendo el estado
5. Rutas y Menús
- Definición de rutas
- Uso de menús
- Navegación entre rutas
- Redirecciones
- Parámetros por url
6. Framework de Vista
- Material UI
- React Bootstrap
7. Redux
- Motivaciones
- Principios básicos de Redux
- Middlewares
- Redux-form
- Redux-thunk
- Redux-observable
8. Extendiendo React
- Renderización en servidor con Next
- Programación nativa con React-Native
- Sitios estáticos con GatsbyJS
9. Conceptos avanzados de React
- Accesibilidad
- Testing
- Internacionalización
- Gestión de errores
- Fragmentos
- Rendimiento
- Portales
- Modales
- Hooks
1. Introducción
2. Arquitectura
3. Clientes
4. Almacenamiento en caché
5. Movimiento de datos
6. Control de Acceso
7. Gestión de usuarios
8. Protección de datos continúa
9. Compartir datos
Introducción
Ciclo de vida de un proyecto de ML
Colección de datos
Limpieza de datos
Preparación de los datos con SageMaker
Modelo de entrenamiento con SageMaker
Imágenes y Despliegue