Ir al contenido principal

Entradas

Mostrando las entradas etiquetadas como framework

chi Router: un framework web ligero para Golang

Ya hemos hablado sobre diferentes frameworks web para Go como Fiber, Gin, Echo y Gorilla. Hoy hablaremos de chi Router . chi Router es un framework web para Go cuyas características son: Ligero.  Robusto.  Rápido.  Usa y extiende el paquete net/http.   Sin dependencias externas. Paquete net/http Este paquete te permite construir servidores HTTP en Go con sus poderosas construcciones de composición. Este framework ( chi Router ) usa y extiende este paquete para mejorar su funcionamiento. Sus características más importantes son: Provee servidores HTTP. Provee clientes HTTP.  Manejo de solicitudes. Enrutamiento.  Middleware. Cookies. Comenzando con chi Router 1. Verificamos versión de Go: $ go version 2. Creamos un directorio y nos ubicamos en el: $ mkdir hola - chi $ cd hola - chi 3. Inicializamos el módulo: $ go mod init hola - chi Se creará el módulo: go: creating new go . mod: module hola - chi 4...

Echo: un framework web minimalista

En este blog ya hemos hablado de tres frameworks web para el lenguaje de programación Go: Fiber Gin Revel Ahora hablaremos de Echo framework , un framework minimalista. Cuyas características son: Optimiza rutas.  Escalable.  TLS automático.  Soporte a HTTP/2.  Enlace a datos.  Con colección de Middleware.  Renderización de datos.  Soporte a templates .  Extensible. Comenzando con Echo framework 1. Verificamos la versión de Go ( deberíamos tener la última versión ): $ go version 2. Crearemos un directorio para el proyecto y nos ubicaremos en el: $ mkdir hola - echo $ cd hola - echo 3. Inicializamos el módulo: $ go mod init hola - echo Esto nos creará un módulo: go.mod 4. Instalamos Echo : $ go get github . com / labstack / echo / v4 Esto nos descarará la dependencia de Echo framework . 5. Creamos un programa llamado main.go package main import ( "net/http" "github.com...

Fiber framework

Fiber es un framework web Go basado en Fasthttp , el motor HTTP más rápido para Go. Diseñado para facilitar el desarrollo, priorizando el rendimiento. Está inspirado en Express JS . Aprovecha la concurrencia de Go para manejar muchas solicitudes simultáneamente. Posee una fácil configuración para servir archivos como HTML, CSS y JS. Comencemos con un simple "Hola, mundo" . En primer lugar verificamos la versión instalada de Go: $ go version Salida: go version go1 .25.4 1. Crearemos un directorio y nos ubicaremos en el: $ mkdir fiber - hola $ cd fiber - hola 2. Inicializamos el módulo: $ go mod init github . com / alquimista / fiber - hola Salida: go: creating new go . mod: module github . com / alquimista / fiber - hola 3. Instalar Fiber framework : $ go get github . com / gofiber / fiber / v2 4. Crear el programa main.go : main.go package main import ( "log" "github.com/gofib...

Gin Web Framework

Gin Framework es un framework web de alto rendimiento escrito en Golang que facilita la creación de aplicaciones web, APIs REST y microservicios. Se destaca por su velocidad, eficiencia y productividad, utilizando httprouter para un enrutamiento rápido y un diseño minimalista. Principales características: Veloz y con poco consumo de recursos de memoria.  Soporte de middleware.  Capaz de recuperarse a bloqueos.  Validación de JSON.  Buen manejo de errores.  Render incluido. Capaz de extenderse. Para instalarlo basta con importarlo: import "github.com/gin-gonic/gin" Veamos un ejemplo. main.go package main import ( "net/http" "github.com/gin-gonic/gin" ) func main() { // Crea un router Gin con middleware por defecto (logger y recovery) r := gin.Default() // Define un endpoint GET sencillo r.GET( "/ping" , func (c * gin.Context) { // Devuelve respuesta JSON c.JSON(http.StatusOK, gin...

Ember JS

Ember.js es un framework JavaScript para construir aplicaciones web ambiciosas. El sitio oficial dice: Ember.js es un framework de JavaScript productivo y probado para crear aplicaciones web modernas. Incluye todo lo necesario para desarrollar interfaces de usuario sofisticadas que funcionan en cualquier dispositivo. Y orientado a Single Page Applications ( SPA ) y aplicaciones web complejas. Características principales: Data Binding: sincronización automática entre modelo y vista.  Router avanzado: facilita la navegación en aplicaciones SPA.  Ember CLI: herramienta oficial para crear, compilar y desplegar proyectos.  Comunidad activa y soporte en proyectos grandes ( ej. Apple Music ). Hola mundo en Ember JS Comencemos con su instalación: $ npm install -g ember-cli Creamos un directorio y nos ubicamos en el mismo: $ mkdir pruebasEmberjs $ cd pruebasEmberjs Creamos un proyecto, nos ubicamos en el directorio y ejecutamos la aplicaci...

Rocket: un framework para Rust

Hace tiempo hablamos de un framework web para Rust llamado Activex Web . Hoy toca hablar de Rocket , un framework web escrito en el lenguaje de programación Rust que está diseñado para simplificar la creación de aplicaciones web seguras, rápidas y de alto rendimiento. Características principales de Rocket: Seguridad de tipos: Aprovecha las características de Rust para garantizar la seguridad de tipos y ayudar a prevenir errores comunes.  Enrutamiento y manejo de solicitudes: Permite definir rutas ( endpoints ) fácilmente utilizando macros para asociarlas a funciones que manejan solicitudes HTTP específicas ( GET, POST, etc. ).  Versatilidad: Ofrece soporte para diversas funciones web, incluyendo gestión de JSON, plantillas, WebSockets , cookies y acceso a bases de datos.  Mínimo código: Está diseñado para que los desarrolladores escriban la menor cantidad de código posible para lograr su tarea, haciéndolo divertido y productivo.  Desarrollo activo: Es un...

PyUnit: Python UnitTesting Framework

Según la documentación oficial, PyUnit es: una herramienta que permite escribir pruebas fácilmente, agregarlas para ejecutarlas en masa y ejecutarlas en modo texto o GUI. Características: PyUnit se basa en JUnit de Java y, por lo tanto, utiliza una arquitectura de pruebas probada.  PyUnit forma parte de la biblioteca estándar de Python 2.1.  Se utiliza en producción en muchos sitios desde su primera versión a finales de 1999.  PyUnit se utiliza para probar Zope, probablemente el software de Python más grande y conocido. Descarga en este sitio: https://sourceforge.net/projects/pyunit/files/pyunit/1.4.1/pyunit-1.4.1.zip/download?use_mirror=master Para versiones de Python superiores a la 2.1 ya viene preinstalado, por lo que no tendremos que descargar ningún paquete adicional. Abrimos una terminal y tecleamos lo siguiente: $ python -- version $ python >> import unittest >> help( "unittest" ) >> quit() Si no hay algún problema...

Ratpack: un conjunto de librerías para aplicaciones basadas en HTTP

Ratpack es un conjunto de librerías ( no es un framework propiamente ) enfocado en la construcción de aplicaciones basadas en el protocolo HTTP y que brinda una eficiencia en términos de recursos y rendimiento. Construido sobre la librería de red de eventos Netty , ofrece una base para desarrollar aplicaciones rápidas y eficientes, inspiradas en la simplicidad de frameworks como Sinatra para Ruby. Es conocido por su flexibilidad, permitiendo la integración con otras tecnologías como Groovy, Guice y Spring Boot. El lenguaje de programación "base" que usa Ratpack es Groovy ( un lenguaje dinámico similar a Python o Ruby, pero siendo heredero de Java ), aunque también se puede usar Java indistintamente. Observemos un ejemplo de código, el clásico "Hola, mundo". Holamundo.java package org.inforhomex.app; import ratpack.handling.Context; import ratpack.handling.Handler; import ratpack.server.RatpackServer; public class Holamundo { public...

Pytest: un framework para crear pruebas de tu código

Pytest es un framework que nos sirve para crear pruebas a nuestro código Python . Facilita la escritura de pruebas pequeñas y legibles, y puede escalar para soportar pruebas funcionales complejas para aplicaciones y bibliotecas. Para quien sepa la filosofía TDD entederá. La instalación no nos lleverá mucho tiempo. Abrimos una terminal y escribimos: $ pip install -U pytest Si ha funcionado, verificamos: $ pytest --version ¿Qué podemos hacer con Pytest? Básica y llanamente nos permite escribir y ejecutar pruebas automatizadas (unitarias, de integración, funcionales y en-to-end) en Python . Esto para tener una mejor calidad de código y evitar futuros errores. ¿Cómo funciona? Veamos un ejemplo. Escribamos una función para sumar dos números. Escribimos un test que falle. pruebas.py import pytest # Función que sume dos números def add (x, y): return x + y # Prueba que falle, 3 + 4 no da 5 def test_fail_add (): assert add( 3 , 4 ) == 5...