Concepto y diferencias: JavaScript y Servidor

Programación en lenguaje de cliente: JavaScript
Los lenguajes de  programación  del lado cliente  se usan para su integración  en páginas  web. Un código escrito en un lenguaje de script se incorpora directamente dentro de un código HTML y se ejecuta interpretado, no compilado.
Con la  programación  del  lado del  cliente se  pueden  validar  algunos  de  los  datos  en  la máquina cliente antes de enviarlos al servidor. Esto proporciona a los usuarios informes de error inmediatos, mientras siguen en esa página de formulario y sin necesidad de volver atrás tras recibir un mensaje de error. Puede resultar necesario acceder a una base de datos para validar determinados valores, mientras que no suele disponer de un acceso directo a la base de datos en la máquina del cliente, aunque ese acceso a la base de datos es factible.
Para incorporar un fragmento de código script en una página HTML se introduce el script entre los tags  <SCRIPT>  y  </SCRIPT>. Dos  son  los  lenguajes  de  script que  hay  en la actualidad:  el VBScript (derivado de Visual Basic) y el JavaScript (derivado de Java).
JavaScript   es  un  lenguaje de  scripts  compacto basado en  objetos  (y  no  orientado  a objetos). Originariamente era denominado  LiveScript,  y  fue  desarrollado por  Netscape para su navegador Netscape Navigator 2.0. Fue éste el primer cliente en incorporarlo. Se ejecuta sobre 16 plataformas diferentes, incluyendo los entornos de Microsoft.
Las diferentes versiones de JavaScript han sido finalmente integradas en un estándar denominado ECMAScript-262. Dicho  estándar  ha  sido realizado  por  la  organización  ECMA  dedicada a la estandarización de  información  y  sistemas  de  comunicación. Las  versiones  actuales  de  los navegadores soportan este estándar.
Programación en lenguaje de servidor
Los Lenguajes de programación del lado del servidor son especialmente útiles en trabajos que se tiene que  acceder a información  centralizada, situada  en una  base  de  datos  en  el  servidor,  y cuando por razones  de  seguridad los  cálculos  no  se pueden realizar en  la  computadora  del usuario.
Es  importante destacar que los  lenguajes  de  programación  del  lado del  servidor  son  necesarios porque para hacer la mayoría de las aplicaciones  web se debe  tener acceso a muchos recursos externos  a  la  computadora  del  cliente, principalmente  bases  de  datos  alojadas  en  servidores  de  Internet. Un caso claro es un banco: no tiene ningún sentido que el cliente tenga acceso a toda la base de datos, sólo a la información que le concierne.
Las páginas dinámicas del servidor se suelen escribir en el mismo archivo HTML, mezclado con el código

HTML, al igual que ocurría en las páginas del cliente. Cuando una página es solicitada por parte de un cliente, el servidor ejecuta los scripts y se genera una página resultado, que solamente contiene código HTML. Este resultado final es el que se envía al cliente y puede ser interpretado sin lugar a errores ni incompatibilidades, puesto que sólo contiene HTML.
Luego es  el  servidor el  que maneja toda la información  de las  bases  de datos  y  cualquier otro recurso, como imágenes o servidores  de correo y  luego envía al cliente una página  web con  los resultados de todas las operaciones.
Diferencias entre ambos
El lugar donde se ejecutan los scripts tiene una gran influencia en la estructura de los proyectos web. Cuantos más scripts se trasladan al ámbito de responsabilidad del navegador, más ligera es la página o la aplicación web para el servidor y, aunque esto significa una descongestión importante para el servidor, puede acarrear un peor rendimiento para el usuario. Por añadidura, los desarrolladores han de enfrentarse a un alto grado de complejidad si apuestan exclusivamente por un lenguaje del lado cliente como JavaScript, ya que en este caso han de recrear muchos mecanismos propios de frameworks más potentes como ASP.NET MVC. Y eso sin contar que, al usar lenguajes del lado cliente, se espera que el navegador soporte el lenguaje utilizado con todas sus funciones y de que el usuario no utilice extensiones de bloqueo.
En consecuencia, para no cargar excesivamente ni a un lado ni al otro, lo idóneo sería optar por una buena combinación de lenguajes del lado servidor y del lado cliente y garantizar tiempos de carga razonables con medidas adicionales como el cacheo de contenidos estáticos y la aplicación de tecnologías modernas como AJAX, acrónimo de “Asynchronous JavaScript and XML” (JavaScript asíncrono y XML).

Comentarios

Entradas populares de este blog

CRM y Actividad 6.5

Métricas básicas de Google Analytics