¿Por qué necesitamos un código del lado del cliente?

Para construir productos más ricos y más suaves que requieren menos recursos.

Conceptualmente , estoy totalmente de acuerdo con la idea de clientes ligeros y la mayor parte del trabajo que se realiza en el servidor.

Siempre me sorprende cuando alguien dice que crear una aplicación de Android que tenga una iOS requeriría grandes cambios en el backend: ¿no debería ser el mismo para la versión del navegador web, la versión del navegador móvil o una aplicación nativa para cualquier plataforma?

(Hace un blog sobre esto hace un tiempo: ¿Qué es la liberación de datos?)

De hecho, personalmente me encantaría vivir en el mundo donde la interfaz de usuario de la mayoría de los sitios se vería como http://stallman.org/. [Desafortunadamente], Internet ha evolucionado desde entonces, tenemos diferentes grupos sociales bien representados en línea, y los servicios deberían y se han adaptado significativamente.

Tecnológicamente , el código del lado del cliente puede hacer que la solución sea mucho más barata.

Ciertas tareas, como las animaciones y el renderizado, no pertenecen más que al código del lado del cliente. Moverlos al lado del servidor requeriría literalmente una capacidad de red y servidor 100x, sin mencionar requisitos más altos para el hardware y la red del cliente.

El contenido dinámico de la página siempre requiere un código del lado del cliente. Cualquier cosa más allá de simples gifs animados simplemente se ve demasiado feo si se hace exclusivamente en el lado del cliente. Todos los marcos sexy modernos son frontend-heavy.

En cuanto al producto , el código del lado del cliente hace que los servicios sean más fluidos.

Quora no sería Quora si no fuera por el código del lado del cliente. Facebook no sería Facebook.

GMail no sería GMail … ¡ah, espera! GMail tiene la interfaz “HTML básico” de bajo tráfico, que efectivamente no es un código del lado del cliente. Compruébalo si tienes curiosidad: Gmail .

Gracias por el A2A.

¿Desea hacer uso de las capacidades del cliente? Con frecuencia, existen recursos informáticos y recursos de almacenamiento que pueden agregar escalabilidad a su solución. Además, puede implementar operaciones personalizadas directamente.

  1. Los idiomas del lado del cliente se ejecutan en el lado del cliente a través de un navegador, en lugar de utilizar su servidor. Por lo tanto, el servidor no experimenta mucha carga cuando se ejecuta el código. Por lo tanto, podemos reducir la carga en nuestro servidor y luego distribuir la carga al cliente, que tiene muchos recursos.
  2. No necesitamos que el intérprete del lado del cliente se ejecute en nuestro servidor. Eso será manejado por el navegador.
  3. Como el código se ejecuta en el lado del cliente, el código se ejecutará mucho más rápido. Si su código requiere que cada solicitud se envíe a su servidor, tomará algún tiempo terminar de ejecutarse.

Para mi generación actual de aplicaciones, las razones clave son la localización de datos y la operación fuera de línea. La localización de datos permite que las operaciones se ejecuten más rápido que si tuvieran que hacer un viaje de ida y vuelta a la red. La operación fuera de línea es crítica para áreas con conectividad limitada, errática o costosa.

No lo necesitamos en absoluto, pero es conveniente para escalar y reducir cargas en el servidor (¿opuesto a la computación en la nube?). Afortunadamente, muchos desarrolladores no saben realmente la diferencia entre el lado del cliente y el código del lado del servidor además de los idiomas. ¡El desarrollador de fondo necesita educarse sobre estas diferencias!

Siempre necesitamos un código del lado del cliente, independientemente de si se trata de una aplicación web o una aplicación de escritorio. El código del lado del cliente hace que las cosas funcionen más rápido. Por ejemplo, en una aplicación web Si vamos a representar una animación, es más lento permitir que la representación ocurra en el servidor en lugar del cliente. Aunque el lado del servidor a menudo puede ser más potente, la velocidad de la red sería el cuello de botella en la representación aquí. Los pros y los contras deben aplicarse a lo que debe estar en el cliente / servidor.

La alternativa es que todos los clientes compartan memoria y CPU del servidor.

Creo que podemos resumirlo en tres palabras: Mejora de la experiencia del usuario.

More Interesting

¿Cuál es el alcance de la piratería ética?

Cómo comenzar una carrera en seguridad de la información

¿Cuáles son las reglas para una buena contraseña?

Cómo desarrollar sitios web seguros más rápido

¿Pudo el FBI identificar los correos electrónicos de Paula Broadwell, Kelley y Petraeus sin una orden judicial?

Cómo encontrar la contraseña de Wi-Fi para un enrutador en una Mac sin la contraseña / privilegios de usuario de los administradores

Cómo eliminar contraseñas guardadas

Para 2020, se usarán alrededor de 40 mil millones de dispositivos inteligentes. Hay softwares de seguridad para computadoras e incluso teléfonos inteligentes, pero ¿qué pasa con los wearables y otros dispositivos inteligentes?

¿Por qué el gobierno de los EE. UU. Reveló que había pirateado con éxito el iPhone, en lugar de simplemente dejar caer la demanda en silencio?

¿Cuáles son algunos consejos de seguridad para Wannacry Ransomware?

¿Qué hardware se necesita para una computadora portátil si planea trabajar en seguridad cibernética?

¿Cisco Catalyst 4948 tiene credenciales predeterminadas (nombre de usuario y contraseña)?

¿Cuáles son los buenos algoritmos mentales para generar contraseñas seguras?

¿Qué ataques de intrusión de red emergentes NO crean eventos en los sistemas SIEM actuales?

¿Es posible proteger el código ejecutable de la descompilación cifrándolo, o de alguna manera usando el cifrado para hacer que la descompilación sea imposible o al menos muy difícil de lograr?