Claves para la optimización de sitios - USERSHOP

Transcripción

Claves para la optimización de sitios - USERSHOP
01_DesarrolloWebProf.qxp
20/05/2008
18:22
Página 13
DESARROLLO WEB PROFESIONAL
Capítulo
1
Claves para
la optimización
de sitios
En este capítulo haremos una breve
introducción a los conceptos y temas
tratados a lo largo del libro y pondremos
énfasis en las ventajas y los principios
en los que se basa la optimización de las
aplicaciones web.
SERVICIO DE ATENCIÓN AL LECTOR: [email protected]
Situación actual
Conceptos generales
Importancia de los estándares
Reglas de optimización
Herramientas tratadas
Niveles de optimización
Conocimientos requeridos
Resumen
Actividades
14
15
17
18
19
20
21
21
22
01_DesarrolloWebProf.qxp
20/05/2008
18:22
Página 14
1. CLAVES PARA LA OPTIMIZACIÓN DE SITIOS
SITUACIÓN ACTUAL
Con el paso del tiempo las necesidades de los sitios web variaron. Más allá de la
aparición de nuevas tecnologías, el perfeccionamiento de las ya existentes, e incluso de los nuevos usos dados a las herramientas que formaron parte y estuvieron presentes en los comienzos de Internet, los servicios demandados por los
usuarios hicieron que las aplicaciones necesitaran dar una respuesta consistente
y estandarizada. Algo que no dependiera totalmente de las buenas intenciones o
del conocimiento del desarrollador.
En la mayoría de los casos, los usuarios de sitios web exigen rapidez para obtener la
mayor cantidad información en el menor tiempo posible sin importarles la estructura interna, la estabilidad o incluso la seguridad de las aplicaciones a las que acceden. Entonces, es responsabilidad del desarrollador mantener sistemas bien organizados que puedan ser modificados y ampliados cada cierto tiempo sin tener que recomenzar el trabajo de manera total. La situación ideal es que haya desarrollos técnicamente competentes que logren abastecer las demandas de los usuarios.
Hasta hace no mucho tiempo había principalmente dos puntos que atentaban
contra el logro de estas premisas. El primero estaba relacionado con las herramientas disponibles para desarrollar sitios. Las alternativas eran pocas y las funcionalidades ofrecidas requerían por parte del autor de sitios una dedicación y
una preparación mucho mayores a las de la actualidad. La segunda tiene que ver
con las velocidades de conexión, que es algo que sin dudas restringía las posibilidades y obligaba a desechar opciones sólo porque la mayoría de los usuarios no
iba a poder acceder a ellas correctamente.
En la actualidad, el número de alternativas es enorme, las herramientas disponibles,
en muchos casos libres y gratuitas, son de nivel profesional y nos permiten resolver de
manera simple la mayoría de los desafíos propuestos. Esto sin contar las aplicaciones
ya desarrolladas puestas a disposición de cualquiera para adecuarlas, modificarlas y
vincularlas casi automáticamente para aumentar los servicios de nuestro sitios. Además, existe una gran comunidad de desarrolladores que destina su tiempo y esfuerzo
a publicar artículos y responder las inquietudes de los demás. Sin dudas, esto ayuda a
ampliar el conocimiento y completar los proyectos particulares en tiempo y forma.
❘❘❘
CARGA MÁS RÁPIDA
Lograr el menor tamaño posible en los archivos que conforman un sitio web nos ayudará a reducir el tiempo de carga de nuestras páginas. En los próximos capítulos observaremos cuáles
son las alternativas para lograrlo y las herramientas necesarias para llevarlo a cabo.
14
01_DesarrolloWebProf.qxp
20/05/2008
18:22
Página 15
Conceptos generales
Figura 1. La oferta de aplicaciones referidas al tratamiento y el control
de sitios web cada vez es mayor. Muchas de ellas incluso son de uso gratuito.
CONCEPTOS GENERALES
Optimizar sitios requiere de mucha paciencia para lograr resultados óptimos. Cada capítulo de este libro enseña cómo abordar una aplicación web y reconocer qué
partes de nuestros sitios pueden lograr una mayor velocidad de respuesta. Las tecnologías que se tratan aquí son reconocidas por entes representativos que especifican reglas básicas necesarias con las cuales comparar y ajustar nuestros desarrollos. También abordaremos qué herramientas son apropiadas para validar cada
uno de nuestros proyectos.
Figura 2. Las aplicaciones para validar la correcta formación
de código en relación con los estándares web son de uso libre.
15
01_DesarrolloWebProf.qxp
20/05/2008
18:22
Página 16
1. CLAVES PARA LA OPTIMIZACIÓN DE SITIOS
Los organismos oficiales que tienen vigencia en la actualidad están formados por
importantes empresas. Ellas fueron las principales propulsoras de la creación, el
mantenimiento y la ampliación de los estándares. Esto les traería como beneficio la posibilidad de competir desarrollando sus productos sobre la base de reglas claras y consensuadas. Algunos casos notorios son la W3C (World Wide Web
Consortium) o la ECMA (European Computer Manufacturers Association). Éstos
son ejemplos de entidades que marcan direcciones y hacen eco de las necesidades y las opiniones no sólo de las principales compañías sino de los propios desarrolladores, que al fin y al cabo son los que en última instancia eligen utilizar
una herramienta u otra.
Figura 3. Apple, AT&T, Cisco, ERICSSON, HP, IBM, Microsoft,
Mozilla y Yahoo! son solo algunas de las empresas que forman parte de la W3C.
Un punto interesante es que la gran mayoría de las tecnologías que componen los
estándares web es de uso libre y gratuito, es decir, que están al alcance de cualquiera que posea los conocimientos necesarios para implementar soluciones. Sin dudas,
esto no es casual. Las herramientas seleccionadas han sido probadas durante largos
períodos (CSS y JavaScript son sólo algunos ejemplos) y las nuevas responden a las
necesidades surgidas en los últimos tiempos (podríamos nombrar a Ajax, XML y
JSON), pero ninguna de ellas es propietaria. No será necesario descargar software
adicional o específico, ni actualizaciones de ningún tipo. Esto deriva en la igualdad
de posibilidades para todos los que quieran participar en el desarrollo de aplicaciones web. Si volvemos al inicio, ante este panorama se vuelve indispensable contar
con una manera concreta de validar la calidad técnica de las aplicaciones. Las reglas
impuestas por los organismos oficiales cumplen ese propósito.
16
01_DesarrolloWebProf.qxp
20/05/2008
18:22
Página 17
Importancia de los estándares
IMPORTANCIA DE LOS ESTÁNDARES
¿Para qué apegarnos a los estándares? Hay más de una razón para hacerlo, pero
una de las más importantes es garantizar de manera real y tangible la calidad de
una aplicación. Un desarrollo puede funcionar perfectamente y cumplir con los
requisitos solicitados por nuestros clientes. Sin embargo, cada día es más necesario demostrar además que internamente todas las partes componentes están
basadas en tecnologías reconocidas a nivel mundial, que mantienen sus principios en documentos públicos y que tienen un alto concepto por parte de los participantes en el desarrollo de aplicaciones web. Los organismos internacionales
que mantienen estas tecnologías nos brindan la posibilidad de comparar nuestro
código contra aplicaciones que se encargan de procesarlo y hacernos saber si éste es válido o no. El proceso es simple y gratuito, y a lo largo de los capítulos que
siguen mostraremos en detalle cuáles son las opciones disponibles y cómo utilizarlas en nuestros propios proyectos.
Figura 4. La W3C es una de las organizaciones más
importantes dedicada a mantener estándares web.
Hasta hace algún tiempo existía la creencia de que los estándares iban por un camino y las aplicaciones reales por otro, es decir que era casi imposible aplicar los
conceptos definidos en la documentación oficial. Esto cambió gracias a aquellos
que necesitaban contar con reglas claras para desarrollar sus sitios, y actualmente es común observar cómo aplicaciones web profesionales, populares y en algunos casos complejas, le dan gran importancia al hecho de respetar los modelos
pautados por los organismos oficiales.
17
01_DesarrolloWebProf.qxp
20/05/2008
18:22
Página 18
1. CLAVES PARA LA OPTIMIZACIÓN DE SITIOS
REGLAS DE OPTIMIZACIÓN
El equipo de desarrollo de la empresa Yahoo! impulsó la creación de un documento
que contiene un listado con las técnicas necesarias para optimizar sitios web. Estas reglas fueron tomadas como base por muchas otras compañías y se convirtieron en un
punto de partida que les sirve mucho a quienes intentan desarrollar sistemas de manera equilibrada, mediante la utilización de la menor cantidad de recursos posible.
Figura 5. Yahoo! realiza uno de los aportes más importantes
a la optimización de sitios web con sus reglas.
Estas catorce normas se han forjado en base a la experiencia obtenida por los empleados en cuanto a la generación de sitios. Yahoo! es una de las empresas que más importancia le presta a sistematizar desarrollos web. Además, mantiene a disposición de los
programadores un gran número de herramientas de propósito general. Todas son libres y gratuitas. El listado completo de pautas se puede obtener en http://developer.
yahoo.com/performance/rules.html, y nos servirá de gran ayuda para mantener una
idea general acerca de qué es lo que podemos hacer y cuáles son las alternativas para
lograrlo. Además, cada regla es ampliada y complementada por los mismos usuarios,
que dejan mensajes con alternativas y mejoras.
Apegarse a los estándares oficiales es un buen comienzo para empezar el recorrido en busca de la optimización de nuestras aplicaciones. En los capítulos que siguen observaremos cómo todo se mueve en conjunto y las acciones se complementan unas con otras. No se trata de una casualidad: más allá de unificar principios y plasmar consensos en documentos oficiales, los organismos responsables
buscan en todo momento tratar de acelerar el intercambio de información entre
18
01_DesarrolloWebProf.qxp
20/05/2008
18:22
Página 19
Herramientas tratadas
clientes y servidores, sin dejar de lado la consistencia de los desarrollos. Como
ejemplo inicial podemos describir la inclusión de código CSS y JavaScript en documentos XHTML. Como veremos, hay distintas maneras de hacerlo, pero las
ventajas de utilizar archivos externos son claras. Por un lado, esto nos permite seguir las recomendaciones de las especificaciones oficiales y al mismo tiempo optimizar nuestros desarrollos y facilitar su mantenimiento.
Figura 6. Tanto Yahoo! como Google y otros buscadores ponen en su página
de resultados el tiempo que llevó arrojarlos. Un claro ejemplo de potencia y optimización.
HERRAMIENTAS TRATADAS
Como mencionamos anteriormente, las tecnologías analizadas y comentadas son de
uso libre, sin restricciones. Por lo tanto, las herramientas que incluimos para controlar y verificar el correcto funcionamiento del código también son, en la mayoría
❘❘❘
PRESENTE Y FUTURO
En la actualidad, distintos agentes de usuario y no sólo los tradicionales navegadores pueden acceder a las aplicaciones web. En los próximos capítulos veremos cómo las tecnologías actuales pueden ayudarnos a mantener distintas versiones de un mismo sitio con un mínimo esfuerzo.
19
01_DesarrolloWebProf.qxp
20/05/2008
18:22
Página 20
1. CLAVES PARA LA OPTIMIZACIÓN DE SITIOS
de los casos, de uso libre. Se trata de aplicaciones intuitivas y casi todas accesibles
mediante un navegador web. Esto nos permitirá mantenernos independientes del
sistema operativo y la arquitectura desde la que trabajemos.
Figura 7. Los navegadores web actuales integran herramientas
para controlar los aspectos relativos al comportamiento de las aplicaciones.
Además, tratamos de incluir más de una alternativa en cada caso, para mantener opciones y que sea el propio lector el que seleccione la herramienta que más y mejor
se adapte a sus posibilidades y necesidades.
NIVELES DE OPTIMIZACIÓN
Dentro de las muchas opciones posibles, podemos definir las alternativas relacionadas con la optimización de sitios en dos categorías: una a nivel de sistema y la otra a
nivel de código. La primera está relacionada con aquellas cuestiones relativas a la configuración de los servidores que alojan las aplicaciones, que si bien en la mayoría de
los casos no están al alcance de los usuarios comunes, pueden sernos de ayuda a la
hora de comprender qué aspectos pueden interferir en el desempeño de nuestros
proyectos. También podrán servirnos a la hora de contratar un servicio de alojamiento y optar por un plan u otro.
En cuanto a la optimización de código, sin dudas se trata de la parte desde la cual
podemos sacar más rédito y ampliar las capacidades de nuestros sitios web.
La intención es que el recorrido por ambas opciones logre ayudar al lector a conseguir una visión completa que abarque todos los aspectos relacionados al diseño y a
20
01_DesarrolloWebProf.qxp
20/05/2008
18:22
Página 21
Conocimientos requeridos
la programación de páginas web, y que la aplicación de las soluciones planteadas no
requiera anular de manera completa los desarrollos sino complementarlos para enriquecer y aumentar su rendimiento.
CONOCIMIENTOS REQUERIDOS
La optimización de sitios es un tema abierto y en continua evolución, por lo que en
cierta manera nunca termina. Se trata de una tarea constante que requiere una atención especial. Más allá de este aspecto, lo cierto es que mantener una idea general
acerca de los puntos habituales que necesitan cuidado nos ayudará a automatizar algunos conceptos para aplicarlos de manera sistemática en todos nuestros desarrollos. Sin dudas, éste uno de los objetivos que plantea nuestro libro.
El desarrollo web en la actualidad se vale de la utilización de algunas herramientas
o tecnologías muy conocidas y abiertas, con historia y con mucho futuro por delante: XHTML, CSS, JavaScript y Ajax, entre otras. Éstas son parte de una realidad
ineludible para cualquiera que implemente aplicaciones web, y a lo largo de los distintos capítulos asumiremos que por lo menos los conceptos básicos y las ideas generales de funcionamiento acerca de cada una están al alcance del lector.
… RESUMEN
En este capítulo observamos los principios generales acerca de la utilidad que nos brindan
las reglas de optimización de sitios y el por qué del respeto a los estándares web que
recomiendan los organismos internacionales. Además, planteamos los lineamientos
fundamentales sobre los que se apoyarán los siguientes apartados.
21
01_DesarrolloWebProf.qxp
20/05/2008
18:22
Página 22
✔ ACTIVIDADES
TEST DE AUTOEVALUACIÓN
1 ¿Qué entiende usted cuando se habla de la
optimización de sitios web?
2 ¿Qué entiende por estándar web?
EJERCICIOS PRÁCTICOS
1 Plantee cinco fallas que nota en sus desarrollos.
2 Busque más información acerca de las reglas propuestas por Yahoo!.
3 ¿Cuál cree que es la importancia real de
respetar los estándares?
3 Busque información acerca de las tecnologías mantenidas por W3C.
4 ¿Qué necesidad motivó el surgimiento de
los estándares web?
4 Busque información acerca de las empresas que componen la W3C.
5 ¿Qué beneficio les traen los estándares a
las empresas?
6 ¿Qué beneficio les traen los estándares a
los desarrolladores?
7 ¿Qué beneficio les traen los estándares a
los usuarios de las aplicaciones?
22

Documentos relacionados