Descripción general
Go ofrece velocidad, seguridad y herramientas fáciles de desarrollar para aplicaciones web.
Go está diseñado para permitir a los desarrolladores desarrollar rápidamente aplicaciones web escalables y seguras. Go viene con un servidor web fácil de usar, seguro y eficaz e incluye su propia biblioteca de plantillas web. Go tiene un excelente soporte para todas las últimas tecnologías, desde HTTP/2, hasta bases de datos como MySQL, MongoDB y Elasticsearch, con los últimos estándares de cifrado, incluido TLS 1.3. Las aplicaciones web Go se ejecutan de forma nativa en Google App Engine y Google Cloud Run (para escalar fácilmente) o en cualquier entorno, nube o sistema operativo gracias a la extrema portabilidad de Go.
Beneficios clave
Despliega en plataformas a una velocidad récord
Para las empresas, Go es preferible porque proporciona una implementación multiplataforma rápida. Con sus gorutinas, compilación nativa y espacio de nombres de paquetes basado en URI, el código Go se compila en un único y pequeño binario, sin dependencias, lo que lo hace muy rápido.
Aprovecha el rendimiento listo para usar de Go para escalar con facilidad
Tigran Bayburtsyan, cofundador y director de tecnología de Hexact Inc., resume cinco razones clave por las que su empresa cambió a Go:
-
Se compila en un solo binario : “Usando enlaces estáticos, Go combina todas las bibliotecas y módulos de dependencia en un solo archivo binario según el tipo de sistema operativo y arquitectura.”
-
Sistema de tipos estáticos — “El sistema de tipos es realmente importante para aplicaciones a gran escala”.
-
Rendimiento : “Go tuvo un mejor desempeño debido a su modelo de concurrencia y escalabilidad de CPU. Siempre que necesitamos procesar alguna solicitud interna, lo hacemos con Goroutines separadas que son 10 veces más baratas en recursos que Python Threads”.
-
No se necesita un framework web : "En la mayoría de los casos, realmente no necesitas ninguna biblioteca de terceros".
-
Excelente soporte y depuración de IDE : "Después de reescribir todos los proyectos en Go, obtuvimos un 64 por ciento menos de código que antes".
Usuarios destacados
Cliente | Breve introducción | Proyectos usando go |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Comienza
Libros de Go sobre desarrollo web
-
Desarrollo Web con Go
-
Programación Web con Go
-
Libro de recetas de desarrollo web: crea aplicaciones web completas con Go
-
Creación de servicios web RESTful con Go
-
Dominar los servicios web de Go
Frameworks web
-
Buffalo
Un framework para el desarrollo web rápido en Go, curando bibliotecas Go y JS juntas.
-
Echo
Un framework web Go minimalista, extensible y de alto rendimiento
-
Flamingo
Un framework rápido de código abierto basado en Go con una arquitectura limpia y escalable
-
Gin
Un framework web escrito en Go, con una API tipo martini.
-
Gorilla
Un kit de herramientas web para el lenguaje de programación Go.
Routers
-
julienschmidt/httprouter
Un enrutador de solicitudes HTTP liviano y de alto rendimiento
-
gorilla/mux
Un potente enrutador HTTP y comparador de URL para crear servidores web Go con 🦍
-
Chi
Un enrutador liviano, idiomático y componible para crear servicios Go HTTP.
-
net/http
Un paquete HTTP de biblioteca estándar
Template Engines
-
html/template
Un motor de plantillas HTML de biblioteca estándar
-
flosch/pongo2
Una sintaxis de Django como lenguaje de plantillas
Bases de datos y controladores
-
database/sql
Una interfaz de biblioteca estándar con soporte de controladores para MySQL, Postgres, Oracle, MS SQL, BigQuery y la mayoría de las bases de datos SQL
-
mongo-driver/mongo
El controlador compatible con MongoDB para Go
-
elastic/go-elasticsearch
Un cliente Elasticsearch para Go
-
GORM
Una biblioteca ORM para Go
-
Bleve
Búsqueda e indexación de texto completo para Go
-
CockroachDB
Una evolución de la base de datos, diseñada para la nube para ofrecer SQL distribuido, resiliente y consistente a escala
Bibliotecas Web
-
markbates/goth
Autenticación para aplicaciones web
-
jinzhu/gorm
Una biblioteca ORM para Go
-
dgrijalva/jwt-go
Una implementación Go de tokens web json
Otros Proyectos
-
gopherjs
Un compilador de Go a JavaScript que permite a los desarrolladores escribir código de interfaz de usuario en Go que se ejecutará en todos los navegadores.
Cursos
- Aprende a crear aplicaciones web usando Go, un curso online pago
Proyectos
- gopherjs, un compilador de Go a JavaScript, lo que permite a los desarrolladores escribir código de interfaz de usuario en Go que se ejecutará en todos los navegadores.
- Hugo, el framework más rápido del mundo para crear sitios web
- Mattermost, una plataforma de mensajería flexible y de código abierto que permite la colaboración segura en equipo
- Caddy, un poderoso, listo para la empresa, servidor web de código abierto con HTTPS automático escrito en Go