Aplicaciones en Cliente ("Client Side")

En el sentido estricto de la palabra nuestro Navegador ( "Explorer" o "Netscape") constantemente ejecuta Aplicaciones o "Programas", de aquí surge el nombre "Aplicación en Cliente". Cuando se nos envía un documento de un "Servidor de Páginas" esta información viene en HTML / XHTML ("Hypertext Markup Language") normalmente, al llegar a nuestro navegador esta información es "ejecutada" o desplegada de acuerdo al formato correspondiente.

Sin embargo,en muchas ocasiones (casi siempre) esta información no solo viene en HTML / XHTML ,además de las imágenes GIF o JPEG , la información puede venir en otro lenguaje como JavaScript,Tcl/Tk o VBScript, estos lenguajes son llamados "Scripting Languages"; inclusive también puede venir un programa en Java (este no es "Scripting language") que lleva por nombre "Applet" . Estos "Scripting Languages" o Java en sí, permiten dar una mayor flexibilidad a la interfase (lo que usted observa en pantalla) de aquella que tiene HTML / XHTML , ya que HTML / XHTML es solo un lenguaje de marcación, como sus siglas lo indican (ML) Markup Language , solo define como será desplegada la información, debido a esto surgieron los "Scripting Languages" que permiten ir más allá del despliegue de información.

Quizás el "Scripting Language" de mayor uso sea "JavaScript" uno de los pocos lenguajes("Scripting Languages") compatible tanto con "Netscape Navigator" e "Internet Explorer" , los demás "Scripting Languages" así como Java, han empezado a ser utilizados conforme las versiones de Navegadores han sido capaces de ejecutarlos, aunque cuando algún Navegador popular no soporta algún lenguaje es muy posible que requiera un Plug-in.

Plug-ins...Plug-ins...Plug-ins

Seguramente en alguna ocasión se le ha solicitado que baje un "plug-in" ya sea para observar un vídeo u oír alguna grabación. Este "plug-in" es un adaptador que permite al "Navegador" ejecutar y desplegar apropiadamente la información que usted esta bajando de Internet, esto es, si la página que usted desea observar contiene "Active X" y usted está utilizando "Netscape Navigator" es muy probable que su "Navegador" requiera de un "plug-in" sobre todo si está utilizando una versión antigua de "Netscape".

Antiguamente (1997) era muy probable que toda página que usted observara ocupara de un "plug-in", esto limitaba a los desarrolladores y diseñadores de páginas, ya que ellos no tenían mucha flexibilidad de presentarle información, era preferible presentarle páginas sencillas a tener que hacer al cliente final (usted) tener que bajar ("download") un "plug-in", y en dado caso que requirieran al cliente bajar el plug-in,era muy probable que este plug-in no funcionara apropiadamente y en el peor de los casos dañara o paralizara su Navegador algo MUY común cuando se visitaba un sitio que tuviera Java o "Active X".

Esto obviamente ha cambiado y actualmente los principales navegadores "Netscape" e "Internet Explorer" son compatibles con varios "Scripting Languages" así como con Java y "Active X" , lo cual permite a los desarrolladores de páginas tener mayor flexibilidad para desarrollar páginas,y a la vez le permite al usuario final tener una interfase mas agradable, aunque de eso depende el tipo de conexión que tenga.

El abuso de una Interfase Espectacular

Muchos desarrolladores y diseñadores gráficos ABUSAN que los nuevos navegadores son capaces de ejecutar varios lenguajes, cosa que antes no era posible. Como se mencionó, anteriormente se requería de un plug-in e inclusive con éste existía la posibilidad de paralizar el Navegador del cliente (Netscape o Explorer). Ahora, ellos saben que Java Script ejecutará una interfase mas limpia en su pantalla, al igual que los desarrolladores de Java y los mercadotecnistas saben que el enviarles un Applet es algo fascinante para otorgar mayor espacio en comercialización, algo superior a cualquier banner!.

En cuantas ocasiones no se observa el Web Site found...waiting for Reply ,estamos esperando que llegue a nuestra pantalla:

Realmente es necesario este programa ?, siendo que con 3 tags de HTML / XHTML se puede lograr el mismo resultado que con 45 o 50 lineas de JavaScript, una simple "lista de contenido" ?

Claro esta que JavaScript no sólo es utilizado para "listas de contenido", ya que es capaz de realizar operaciones matemáticas , generar contenido dinámico todo esto sin solicitar verificación al "servidor de páginas".

Existen sitios que toda su información es en JavaScript o Shockwave. Deficiencias para el usuario:

Para observar un menú tiene que esperar que arriven:

PERO si son 7 menús + contenido dinámico + gráficas dinámicas en Shockwave :

El caso es peor aún para las páginas que envían Vídeos o Programas de Java en su aplicación, ya que se requiere bajar aun más información (no solo unas 45 o 50 lineas, sino todo un programa) , solo para ver un Applet de sus patrocinadores que dice: "Visita nos estamos en www...."

En el mejor de los casos, el usuario ("usted") puede durar 2 minutos o más viendo la pantalla en BLANCO, en el peor "Request Time Out" después de 5 minutos y el peor aún , se pega el Navegador y nuestra computadora se congela con todos los archivos que no estaban guardados !.

JavaScript útil

Existen ocasiones en que una aplicación es más benéfica si se ejecuta en el cliente a que sea una aplicación de servidor , el ejemplo más claro de esto sería un programa para solicitud de datos o estimación de costos. A pesar de las 200 o 300 lineas que pueda contener el programa, sus beneficios son mayores en varios aspectos:

ConceptoCantidad/DescripciónSub-Total/Total
Numero de Personas

Aperitivio/Entrada $
Platillo Principal $
Bebidas $
Gran Total $
Blanco

Además es posible agregarle restricciones a este tipo de programas , esto es especialmente útil para revisar información extensa como: faltas de ortografía en un correo electrónico, código postal,telefono...etc. estas se realizan instantáneamente sin la necesidad de consultar el servidor ("Host") para corroborar la veracidad de los datos. Sin embargo, una de las desventajas más grandes que presenta este tipo de aplicación es que un usuario con suficiente conocimiento puede alterar información en su cliente ("Netscape o Explorer") y enviar información apócrifa al servidor("Host"), es por esto que las aplicaciones en cliente que recaban datos están limitadas a un ambiente seguro (Intranets) o transacciones con información trivial (Nombres, Teléfonos, etc..)

Aunque ya se critico el uso de JavaScript para menús, algunas barras de navegación en Osmosis Latina se encuentran en JavaScript las justificaciones:

Si observa los menús notará que no fue necesario utilizar gráficas (GIF o JPEG) para lograr un despliegue gráfico de diferenciación, ni tampoco escribir 100 lineas de JavaScript, el menú son solo 30 lineas, además es reutilizado por varias páginas no sólo una. Sea consciente con sus usuarios finales, cerciorese que hasta el último byte que envíe al "Navegador" sea absolutamente necesario y de ser posible reutilizable por otras páginas.

XML: Lenguaje del Futuro

Como se mencionó al inicio de esta sección, nuestro navegador ("Netscape" o "Explorer") recibe la información del servidor de páginas en formato HTML / XHTML o en un "Scripting Language" como JavaScript , hoy en día ya se han iniciado trabajos para que los distintos navegadores del mercado sean capaces de interpretar y procesar el lenguaje XML .

Este procesamiento de información en el Navegador es llevado acabo a través de DOM y XSL ; aunque muchos sitios en Internet aún carecen las facilidades para enviar información en formato XML a su Navegador, al igual que muchos Navegadores antiguos son incapaces de procesar XML, es muy probable que este formato abunde en el futuro.

La conclusión anterior se debe a la misma flexibilidad que otorga el lenguaje XML y a la evolución que han tenido los Clientes ("Navegadores") en Internet; en sus primeros indicios un Navegador solo era capaz de interpretar HTML / XHTML , posteriormente se le integró lógica de ejecución a través de "Scripting Languages" como JavaScript, a través de XML (via DOM/XSL) será posible transformar la información en el Cliente ("Navegador") directamente a HTML / XHTML o cualquier otro formato, en el proceso empujando más trabajo al Cliente ("Navegador") , tal y como se ha dado la tendencia.

Links: