Bien empezaremos por decir que esta es una certificación triple ya que, además de contar como crédito para la certificación "MCSD: Windows Metro style Apps using HTML5
" tambien cuenta como crédito para la certificación "
MCSD: Web Applications" y es, en si mismo una certificación, "
Programming in HTML5 with JavaScript and CSS3 Specialist". Así que interesa sacarlo por partida triple.
Empezaremos con el temario (traducido) tal y como viene en la web de microsoft, luego pasaremos a detallar cada área temática. Debo advertir (como advierte microsoft) que los porcentajes son el peso relativo dentro del examen, cuanto más peso, más preguntas es probable que caigan, no obstante las preguntas tienen un grado de dificultad que también cuenta en la valoración, así podemos tener 15 preguntas de un área con dificultad baja que sumen, por ejemplo, 150 puntos y podemos tener 4 preguntas con dificultad alta de otro área que sumen lo mismo.
Además, cada área temática incluye las competencias que se muestran, pero no se limitan a ellas, es decir, puede, perfectamente, caer una pregunta que se englobe dentro de un área temática pero que no se muestre en el temario.
El examen consta de cuatro áreas temáticas:
Implementar y manipular las estructuras de documentos y objetos (24%)
Implementar el flujo del programa (25%)
Acceder y Asegurar datos (26%)
Uso de CSS3 en Aplicaciones (25%)
Implementar y manipular las estructuras de Documentos y Objetos
Este área temática incluye las siguientes subáreas:
- Crear la estructura del documento.
- Estructurar la interfaz de usuario mediante el uso de marcado semántico,
incluyendo motores de búsqueda y lectores de pantalla (etiquetas Section, Article, Nav, Header, Footer y Aside).
- Crear un
contenedor de diseño en HTML
- Escribir código que interactúe con los controles de la interfaz de usuario.
- Añadir y modificar los elementos HTML mediante programación.
- Implementar controles multimedia.
- Implementar HTML5 Canvas y gráficos SVG.
- Aplicar un estilo a elementos HTML mediante programación.
- Cambiar la ubicación de un elemento.
- Aplicar una transformación.
- Mostrar y ocultar elementos.
- Implementar el API HTML5.
- Implementar las APIs de almacenamiento, AppCache, y Geolocalización.
- Establecer el alcance de los objetos y variables.
- Definir
la duración de las variables.
- Mantener los objetos fuera del espacio de
nombres global.
- Uso de "this" para hacer referencia a un
objeto que ha disparado un evento.
- Variables de ámbito local y global
- Crear e implementar los objetos y métodos.
- Implementación de objetos nativos.
- Crear objetos personalizados y
propiedades personalizadas para los objetos nativos con prototipos y
funciones.
- Heredar de un objeto.
- Implementar los métodos
nativos y crear métodos personalizados.
Implementar el flujo del programa
Este área temática incluye las siguientes subáreas:
- Implementar el flujo del programa.
- Recorrer elementos de colecciones y arrays.
- Gestionar las
decisiones del programa mediante el uso de sentencias switch, if /
then, y los operadores.
- Evaluar expresiones
- Lanzar y controlar un evento.
- Controlar
los eventos comunes expuestos por DOM (onBlur OnFocus, OnClick).
- Declarar y manejar eventos traspasados.
- Controlar un evento mediante el
uso de una función anónima
- Implementar el manejo de excepciones.
- Establecer y responder a los códigos de error.
- Lanzar una excepción.
- Petición de cheques nulos.
- Implementar bloques try-catch-finally
- Implementar una devolución de llamada.
- Recibir
mensajes de la API HTML5 WebSocket.
- Usar jQuery para hacer una
llamada AJAX.
- Cablear un evento.
- Implementar una devolución de llamada(callback)
mediante el uso de funciones anónimas.
- Manejar el puntero "this".
- Crear un proceso de trabajo web.
- Iniciar
y detener un trabajador web.
- Pasar datos a un trabajador Web.
- Configurar los tiempos de espera y los intervalos en el trabajador
web.
- Registrar un detector de eventos para el trabajador de la Web.
- Limitaciones de un trabajador Web
Acceder y Asegurar datos
Este área temática incluye las siguientes subáreas:
- Validar la entrada del usuario mediante el uso de elementos de HTML5.
- Elegir
los controles apropiados basados en las necesidades.
- Aplicar los
tipos de entrada HTML (por ejemplo,,,) y los atributos de contenido (por
ejemplo, requerido) para recolectar información del usuario.
- Validar la entrada del usuario mediante el uso de JavaScript.
- Evaluación de una
expresión regular para validar el formato de entrada.
- Validar que se introduce el tipo de tipo de datos correcto mediante el uso de las funciones
integradas.
- Evitar la inyección de código
- Consumir los datos.
- Consumo
de datos JSON y XML.
- Recuperar datos mediante el uso de servicios
web.
- Cargar datos u obtener datos de otras fuentes mediante el uso de
XMLHttpRequest.
- Serializar, deserializar y transmitir datos.
- Datos binarios.
- Datos de texto (JSON, XML).
- Implementación del método serializar de
JQuery.
- Form.Submit.
- Parsear Datos.
- Enviar
datos mediante el uso de XMLHttpRequest.
- Filtrar los datos mediante el
uso de codificación URI / form.
Uso de CSS3 en Aplicaciones
Este área temática incluye las siguientes subáreas:
- Estilo de propiedades de texto HTML.
- Aplicar
estilos a la apariencia del texto (color, negrita, cursiva).
- Aplicar
estilos a la fuente del texto (WOOF y @ font-face, size, understudy fonts).
- Aplicar estilos a la alineación del texto, el espaciado, y la sangría.
- Aplicar estilos a los guiones de texto.
- Aplicar estilos de sombra de texto arrojada.
- Un cuadro de propiedades de estilo HTML.
- Aplicar
estilos para modificar los atributos de apariencia (tamaño, bordes y
esquinas, redondeo de fronteras, contorno, relleno, márgenes).
- Aplicar
estilos para alterar los efectos gráficos (transparencia, opacidad, imagen de fondo, gradientes, sombras, de recorte).
- Aplicar estilos para establecer y cambiar la posición de un elemento (estática, relativa, absoluta fija,)
- Crear un diseño flexible de contenido.
- Implementar
un diseño con un modelo de caja flexible.
- Implementar un diseño con
varias columnas.
- Implementar un diseño usando posición flotante y
exclusiones.
- Implementar un diseño mediante la alineación de la red.
- Implementar un diseño con las regiones, agrupando y anidando.
- Crear una interfaz de usuario animada y adaptable.
- Animar
objetos mediante la aplicación de las transiciones CSS.
- Aplicar transformaciones
3-D y 2-D.
- Ajustar la interfaz de usuario basada
en las consultas multimedia (adaptaciond para
dispositivos de los formatos de salida, exposiciones y
representaciones).
- Ocultar o deshabilitar los controles
- Buscar los elementos mediante el uso de selectores CSS y jQuery.
- Elegor
el selector correcto para hacer referencia a un elemento.
- Definir los
elementos, el estilo y selectores de atributos.
- Encontrar elementos
mediante el uso de los pseudo-elementos y pseudo-clases (por ejemplo, :before, :first-line, :first-letter, :target, :lang, :checked, :first-child)
- Estructura de un archivo CSS mediante el uso de selectores CSS.
- Referenciar los elementos correctamente.
- Implementar la herencia.
- Anular la herencia mediante el uso de !important.
- Estilo de un
elemento basado en los pseudo-elementos y pseudo-clases (por ejemplo, :before, :first-line, :first-letter, :target, :lang, :checked, :first-child).
Recomiendo como material de preparación los siguientes libros:
HTML5 for Web Designers y
CSS3 for Web Designers de
A BOOK APART que, si sabeis y habeis trabajado algo con HTML4 y CSS van de sobra para este examen y
jQuery in Action para la parte de Javascript de
Manning.
Esperando que os sea de ayuda. Mañana veremos el 70-481 de desarrollo esencial de aplicaciones para Windows 8 (Metro Style) en HTML, CSS y Javascript.