Usted sabe que debe usar JavaScript cuando… | Programar Plus

Sabe que debe usar JavaScript cuando la tarea no se puede realizar con ninguna otra tecnología.

Eso es lo que sugirió Doug cuando le pedí un giro más agradable a algo que estaba pasando por mi cabeza:

JavaScript: si poder hacerse en otro idioma, se deberían hacerse en otro idioma.

Eso suena tan negativo, que definitivamente no es lo que quiero decir aquí. Pero estoy tratando de hacer un punto. JavaScript es capaz de realizar tareas que también se pueden realizar en otros idiomas. JavaScript también es capaz de hacer cosas que no puede hacerse en cualquier otro idioma. Algunos ejemplos probablemente estén en orden.

Validación de formulario

Puede validar un formulario con JavaScript. Puede crear una excelente experiencia de usuario haciéndolo de esta manera, pero por supuesto sería tonto no validar todas las entradas nuevamente con un lenguaje del lado del servidor antes de procesarlas. Si vas a elegir uno u otro, ve al lado del servidor. Si se puede hacer con otro idioma, utilice el otro idioma.

Insertar contenido

Acabo de tener una circunstancia en la que necesitaba cargar un bloque de navegación dinámica en la página de inicio de un sitio que fue creado por un CMS en un subdirectorio del sitio. Idealmente, esta navegación se crearía en un archivo que podría incluirse en el lado del servidor en la página de inicio y en cualquier otro lugar que lo necesite. Para resumir, no pude hacer que sucediera. En su lugar, utilicé la función de carga de jQuery para tomar el bloque. Funciona muy bien, a menos que no pueda usar JavaScript. Si se puede hacer con otro idioma, utilice el otro idioma.

De manera similar, todo el concepto de AJAX generalmente se considera un truco. Es una forma de simular la comunicación bidireccional en una tecnología creada para la entrega unidireccional. Cuando surge algo nuevo que se adapta de manera más natural a la comunicación bidireccional del navegador y el servidor, AJAX desaparece. Si se puede hacer con otro idioma, utilice el otro idioma.

Estilismo

JavaScript es capaz de aplicar estilo a los elementos de la página. Ese es también el trabajo de CSS. Tener un montón de información de estilo en JavaScript enturbia el agua. Hace que JavaScript sea más difícil de leer y que las actualizaciones de estilo sean más difíciles de rastrear. Si se puede hacer con otro idioma, utilice el otro idioma.

Una de las principales razones por las que las bibliotecas de JavaScript son populares es porque abren increíbles posibilidades de diseño. Puede hacer que las cosas aparezcan y desaparezcan, animar tamaños y posiciones, y hacerlo con suavidad y estilo. Pero estas cosas están relacionadas con el diseño, no (generalmente) con la funcionalidad. Por lo tanto, estamos viendo que CSS comienza a adaptarse para hacer estas mismas cosas. Yo diría que CSS es el lugar apropiado para esto, en lugar de la técnica algo rara de “alterar rápidamente el DOM” que usan las bibliotecas de JavaScript. Si se puede hacer con otro idioma, utilice el otro idioma.

Cuándo usar

Muy bien, basta de casos de no uso. Hay muchas más circunstancias en las que usar JavaScript es la única opción. ¿Qué hay de los eventos? JavaScript es el único lenguaje disponible para que su sitio web se comunique con el navegador y observe eventos: clics, dobles clics, entradas y salidas del mouse, pulsaciones de teclas, tamaño de la ventana del navegador… y la lista continúa. Si necesita acceder a esos eventos, está en territorio de JavaScript.

¿Tengo razón? ¿Es este pensamiento de mente estrecha?