Express.js y su influencia en .NET

El universo de Javacript es cada día más grande y resulta difícil hacerse hueco en él. Basta con mirar herramientas como Grunt que es relativamente nueva para darse cuenta que ya existen otras parecidas que pueden ser mejores como es el caso de Gulp. La comunidad de Javascript es rica y los avances son a veces demasiado rápidos. No da tiempo a que una tecnología se asiente para que otra intente ya ocupar su lugar.

Express.js

Quizá Express.js sea uno de los primeros frameworks de Javascript de servidor que se ha asentado con fuerza y todavía no se le ven competidores en el horizonte. No en vano Express.js es el framework MVC de servidor de las nuevas arquitecturas MEAN (Mongo Express Angular Node).

¿Cómo funciona Express.js?

Programar con Express.js es sencillo ya que para acceder a un recurso de nuestro servidor simplemente tenemos que declarar una ruta y en la misma declaración de la ruta definiremos la funcionalidad a ejecutar.

var express = require('express')
var app = express()

app.get('/holaMundo', function (req, res) {

  res.send('Hola mundo')
});

Cada ruta hacia una URL nos dará acceso a un recurso. En este caso el ejemplo es tan elemental que simplemente imprimimos "Hola Mundo" cuando un navegador nos solicita la URL /holaMundo. Lo importante aquí es darnos cuenta como Express.js agrupa el concepto de ruta /holaMundo con la propia gestión de esta res.send("HolaMundo"). Este tipo de organización ayuda mucho al desarrollador a tener las cosas más organizadas . Estamos ante una buena práctica que genera influencia sobre otras plataformas.

Express y su influencia ASP.NET MVC

Uno de los frameworks que más me gusta de .NET es ASP.NET MVC siempre me ha parecido un framework bien construido. Ahora en su versión 5 soporta un nuevo tipo de sistema de enrutamiento. A este nuevo tipo de enrutamiento se le denomina Attribute Routing y vamos a ver como se parece de forma muy clara a lo que Express define.

public class HolaController : Controller {

        [Route("HolaMundo")]
        public String Index() {

            return "Hola Mundo";
        }

    }

Como podemos ver en este caso definimos un controlador y en el método Index asignamos tanto la ruta que va a ser gestionada como el resultado. Se trata de un ejemplo muy similar al de Express.js. En muchas ocasiones los patrones de diseño y las buenas prácticas se van deslizando entre las diferentes plataformas. En este caso ha sido .NET la que se ha apoyado en una buena idea que existía ya en otras plataformas. Otras veces sucede al contrario como en el caso de Microsoft LinQ que ha influido en otras plataformas de forma clara.

Ver todos los comentarios en https://www.genbeta.com

VER 0 Comentario

Portada de Genbeta