Devjlopez

Posts

OOP en Golang
4 minutes

¡Hola, Go-pers! Hoy vamos a platicar sobre un tema que a veces genera debate:

La Programación Orientada a Objetos (OOP en inglés) en Go. Algunos dicen que Go no es orientado a objetos, otros que sí, pero a su manera.

¿Quién tiene razón?, yo creo que ambos, si bien Go no sigue el modelo clásico de POO como Java o C++, nos da herramientas para lograr cosas similares, con un enfoque más práctico y flexible.

Herencia en Go: Composición sobre Herencia Tradicional
4 minutes

Go, a diferencia de lenguajes como Java o C++, no implementa la herencia de clases de la forma tradicional. En lugar de jerarquías de clases, Go promueve la composición como mecanismo principal para la reutilización de código y la creación de tipos más complejos. Esta aproximación ofrece mayor flexibilidad y evita algunos de los problemas asociados con la herencia profunda.

¿Qué es la Composición en Go?

La composición es un principio fundamental en el diseño de software que prioriza la construcción de objetos complejos mediante la combinación de objetos más simples. En lugar de heredar características de una jerarquía de clases (como en la herencia tradicional), la composición permite crear tipos nuevos componiéndolos a partir de otros tipos existentes. Esto fomenta la reutilización de código, la flexibilidad y un menor acoplamiento entre las partes del sistema.

Organizando contenedores - docker compose
6 minutes

Cuando trabajamos con contenedores muchas veces se vuelve complejo manejar manualmente uno por uno, ya que en un entorno de trabajo usualmente se requieren, además de la app, varios servicios como base de datos, un servicio de queues, redis, casandra, etc.

Existen diversas formas de manejar esta situation, pero vamos a concentrar en las más usuales, primero veremos como lograr esto manualmente y después nos iremos a docker compose

Usar docker o algún software para manejo de contenedores puede verse tan simple como lo siguiente:

Introducción a Kubernetes: La Plataforma para la Gestión de Contenedores
3 minutes

En el mundo tecnológico y moderno, donde una aplicación tiene que ser rápida, escalable y confiable, Kubernetes es una de las soluciones más potentes y versátiles para la administración de contenedores. Si alguna vez se ha preguntado cómo despliegan y administran sus aplicaciones en gran escala las grandes empresas, la respuesta probablemente incluye Kubernetes.

Kubernetes, a veces referido como K8s, es una plataforma de código abierto que automatiza la implementación, el escalado y la operación de aplicaciones en contenedores. Desarrollado por Google y donado a la Cloud Native Computing Foundation o CNCF, Kubernetes creció muy rápidamente para convertirse en el estándar de facto en la administración de contenedores.