Te iba a hablar de la arquitectura clásica cliente-servidor en las aplicaciones web, móvil o escritorio.
Lo que me ha hecho pensar es la palabra “clásica”.
Claro, ¿cúal es la clásica, la que se usa hora o la que se usaba hace 10-15 años?
Te cuento las dos y te anticipo que la clásica es la vieja, la nueva es más moderna.
Tiene más sentido.
La arquitectura cliente servidor también se conoce como maestro y esclavo.
Para explicártela por encima creo que viene bien tener la analogía de maestro y esclavo (master and slave en inglés).
Si tienes en cuenta la época de esclavitud clásica (porque ahora trabajar 40 horas o más para alguien es la esclavitud moderna) el maestro solía tener uno o más esclavos que estaban a su servicio.
Los esclavos esperaban que el maestro les de una orden y estos obedecían forzados y trabajaban para él.
“Tráeme un vaso de agua”.
“Lleva la burra al río.”
“Haz esto, haz lo otro.”
El maestro siempre mandaba algo.
Ya no entre en si habían mejores o peores.
A lo que iba, en el software pasa lo mismo, no con las personas, con los programas.
El cliente es el maestro. Y el servidor es el esclavo.
En la arquitectura clásica, el código del cliente y el servidor solían estar en la misma máquina.
Para que nos entendamos, el cliente es la pantalla con la que interactúa el usuario y el servidor es quién gestionaba esas interacciones y guarda los datos.
Estos programas tenían millones de líneas y hacían que la accesibilidad a ellos fuera poca y que fueran muy lentos (tenía más problemas, que los dejo para otro momento).
Algún genio o algunos, no lo sé, se pusieron a pensar como podrían resolver este problema y aprovechando internet, se inventaron la arquitectura cliente servidor moderna.
El cliente (en adelante frontend) y el servidor (en adelante backend) no tienen que estar en la misma máquina, eso catapulta la accesibilidad de tu programa (entre otras cosas).
Era la creme de la creme y se creaban dos disciplinas más del software: el frontend y el backend.
Pa quien no lo sepa, el frontend es todo lo que ves, con lo que el usuario interactúa, la parte gráfica, si estás leyendo este mail, tu frontend puede ser la aplicación de Gmail del móvil o Outlook o lo que sea que uses.
En cambio, el backend es lo que no ves, es todo ese mecanismo que ha hecho posible que este mail llegue a tu bandeja de entrada a las 9 de la mañana después de yo haberlo escrito antes y programado para esa hora.
Se me está quedando largo este mail para contarte más cosas del proyecto, así que te las cuento mañana.
Feliz martes,
Josué.
PD1: si tienes algo que aportar, no te cortes.
PD2: si te gusta la que lees, comparte que es gratis.
Soy Josué Alcántara y cada día envio un mail con una idea para escribir software de calidad. ¿A quién se la envío? A mi lista de suscriptores. Día que estás fuera, idea que te pierdes. Así de fácil.