La arquitectura Web 2.0 abre un número increíble de opciones para un diseño web flexible, reutilización creativa y actualizaciones sencillas. Además de cubrir los lenguajes clave y las técnicas, esta obra le presenta todas las tecnologías que preparan la Web 2.0 a un nivel superior y profesional.
Con este manual explorará las tecnologías que son usadas para crear aplicaciones web; esto incluye un minucioso vistazo a XHTML, Cascading Style Sheets (CSS), JavaScript, Ajax y los principios del diseño. A continuación, adquirirá un mejor entendimiento de los protocolos y formatos que permiten el intercambio de información entre los usuarios web y los servidores. Finalmente, descubrirá justo lo que necesita saber sobre la programación de software de servidor para implementar nuevas ideas y desarrollar sus propias aplicaciones robustas.
Prefacio
Introducción
Para quién es este libro
Qué cubre este libro
Cómo se estructura este libro
Qué necesita para usar este libro
Convenciones
Código fuente
1. Hola Mundo Web 2.0
Introduciendo BuzzWatch
Haciendo un mapa del paisaje
Explorando detrás del escenario
Haciendo de BuzzWatch un mejor ciudadano Web
Haciendo de BuzzWatch una aplicación más fácil de mantener
Dando el toque final
Conclusión
2. Presentación de página
Creando páginas simples y claras
Produciendo HTML válido
Usando hojas de estilo en cascada
Eligiendo los elementos apropiados
De HTML a XHTML
XHTML 1.0
XHTML 1.1
¿Por qué usar XHTML?
XHTML es más fácil de manipular
XHTML anima a usar CSS
XHTML funciona mejor en dispositivos móviles
XHTML es extensible
Diferencias con respecto a HTML
XHTML es una aplicación XML
Elementos vacíos
ID y nombres
El Document Object Model
Niveles DOM
Revisión de la API DOM
Referencia sobre la API DOM
Hojas de estilo en cascada
Esquinas redondeadas
Pestañas
Herramientas
El DOM Inspector para Firefox
La barra de herramientas para el desarrollador Web de Firefox
La barra de herramientas para el desarrollador Web de Internet Explorer
DevBoi para Firefox
Resumen
3. JavaScript y Ajax
JavaScript: Comprendiendo aspectos poco conocidos pero muy importantes
El tipo y el valor indefinido
El operador ===
Iterando con for-in
Programación funcional
Parámetros de funciones
Optimizaciones JavaScript
Reduciendo el tiempo de descarga de JavaScript
Mantenga las actualizaciones del DOM al mínimo
Ajax
Todo sobre la experiencia del usuario
La historia de XMLHttpRequest
Ejemplo de XMLHttpRequest
La librería Yahoo! UI
El Google Web Toolkit
Gestionando las pérdidas de memoria
Resumen
4. Principios de diseño
Aspectos generales de diseño
Favoritos
Navegación
Minimizando el tráfico
Manteniendo la comunicación
Combinando múltiples peticiones
Procesando en el servidor cuando sea posible
Limitando el uso de llamadas
Soporte para dispositivos de bajo nivel
Requisitos de accesibilidad y líneas maestras
No confíe solo en imágenes y colores para el contenido
Separar el contenido de la presentación
Evitar distracciones
Ofrezca enlaces contextuales
URL amigables
Usar scripts independientes del dispositivo
Etiquetar los campos de los formularios
Evitar los marcos si es posible
Uso de CSS Aural
Evitar ventanas emergentes
Evitar los refrescos y los redireccionamientos automáticos
Manejando cabeceras y barras laterales
Probando el producto final
Resumen
5. ¿Qué es lo próximo para la Web 2.0?
XSLT y XPath
Ejemplo Hola Mundo para XSLT
Más XSLT
Estilos XSLT
Más XSLT
Usando XSLT en un navegador
SVG
Ejemplo Hola Mundo en SVG
Definiendo el estilo para SVG
Más SVG
XForms
Ejemplo Hola Mundo en XForms
Definiendo el estilo para XForms
Más ejemplos de XForms
Qué es lo siguiente en HTML
Las propuestas del W3C
Las contrapropuestas del WHATWG
Comparando XHTML 2.0 y HTML 5
Resumen
6. Alternativas basadas en clientes ricos
De los navegadores a los clientes ricos
Desventajas de los navegadores
Una solución, clientes ricos
Clientes ricos a día de hoy
Comparando Frameworks para clientes ricos
OpenLaszlo
Aspectos básicos de Lazlo
Ayuda al desarrollador
Un ejemplo más avanzado
XUL
Aspectos básicos de XUL
XUL más avanzado
Localización
XAML
Aspectos básicos de XAML
XAML más avanzado
Resumen
7. HTTP y URI
Cómo se impuso la Web
La Web 1.0: HTML, URL y HTTP
Entrando en detalles
Cliente-Servidor
Protocolos por capas
Nombres de dominio
URL y URI
Analizando URI
Peligros del código oculto
¿Qué hace un servidor Web realmente?
La Web tiene dos formas
El modelo Web y REST
Recursos
Representaciones
Estado
Transferencia: Usando métodos HTTP
Consideraciones para desplegar un servicio HTTP
Tipos de medio
Recursos de interés
Representaciones solicitadas
Respuesta del servidor
¿Qué hay en el cable?
Kit de referencia
Un ejemplo HTTP
Más representaciones
Negociación del contenido
Viendo los mensajes con HTTPTracer
Resumen
8. XML y sus alternativas
XML
Los fundamentos de XML
Elementos
Atributos
Datos de texto
Comentarios
Declaración XML
Los nombres de espacios XML
Unicode y codificación de texto
Tratar con datos binarios
Características de XML que usualmente no necesitará
Tipos de datos
Lenguajes de Esquema
XSLT y XPath
Otras tecnologías XML
Formatos de datos existentes y protocolos
API
Alternativas a XML
JSON
JavaScript
HTML
Otros formatos
Resumen
9. Sindicación
Algunos fundamentos de la sindicación
Microcontenidos
El alimentador
El proceso de sindicación
Formatos de sindicación
RSS 2.0: Contenido Simple
Identificar el elemento
Especificaciones
Codificación de contenido
Extensibilidad
Tipos MIME y la suscripción One-Click
Autodescubrimiento
RSS 1.0: Descripción del recurso
Especificaciones RSS 1.0 y módulos
Atom: ¿Lo mejor de ambos mundos?
Especificaciones y Extensiones Atom
Comparar elementos a través de los formatos
Adjuntos y Podcasting
Resumen
10. Microformatos
La base de los microformatos
CSS y los microformatos
La semántica de HTML
Contenido, presentación y datos
Clarificación
Los perfiles HTML
Los perfiles XMDP
Cobertura
Microformatos relacionales
Componentes de los microformatos
Diseño de patrones
Documentos compuestos
Normas de Org 2.0
Comunidad
Principios
Procesos
Crear documentos microformatos
Ejemplo: Cronología de acontecimientos
Consideraciones adicionales
Arquitectura de la aplicación
Visión general del código
Código de origen
Resumen
11. Combinar protocolos para construir Servicios Web
Servicios REST
Una aplicación de muestra
El protocolo de publicación Atom
Los servicios REST al natural
Más recursos en REST
Servicios WS-*
Los servicios WS-* y SOAP
Servicios WS-* y WSDL
La Pila WS-*
REST contra WS-*
SOAP
WSDL
Herramienta de soporte
Resumen
12. Sirviendo XML sobre HTTP
¿Cuál es la diferencia con servir HTML?
Tipos de medios
Codificación de caracteres
Sirviendo a un XML bien realizado
Sirviendo al contenido estático
Servir a un contenido dinámico
Principios
Servir XML con Java
Servlets
Páginas JavaServer
Serialización de API
Servir XML con ASP.NET y C#
Servir XML con Ruby on Rails
Servir XML con PHO, Perl, Python y más
Usar XSLT por el lado del servidor
Usar una plataforma XML
XQuery y Bases de datos XML
Servir XML con eXist
WebDav y Subversion
Servir con JSON
Resumen