You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.3 KiB

Go Framework Project ACTIVE

ACTIVETHING Software Fabrik

Source git.activething.com/go
✍️ Autor Juan V. Navarro

blds (ActiveBuiLDerS)

blds es una librería de Go diseñada para facilitar la creación eficiente y rápida de serializaciones o formatos de objetos, mapas, listas, y otros tipos de datos comunes en Go. Su propósito principal es proporcionar una alternativa eficiente a la reflexión en Go, que puede tener un coste de ejecución considerable.

¿Qué hace ablds?

blds proporciona una serie de interfaces y tipos que permiten construir y manipular estructuras de datos de forma modular y flexible, evitando así el uso de reflexión. Estas estructuras de datos pueden ser luego serializadas en diferentes formatos, como JSON, XML, o cualquier otro formato personalizado, según las necesidades del usuario.

¿Cómo funciona?

La librería se basa en dos conceptos principales: los Builders y los Buildables.

  • Builders: Son interfaces que definen métodos para construir diferentes tipos de estructuras de datos. Por ejemplo, tenemos builders para listas, mapas, y objetos.
  • Buildables: Son interfaces que representan los diferentes tipos de datos que pueden ser construidos utilizando los builders. Estos tipos pueden incluir cualquier cosa, desde valores simples como strings o números hasta estructuras de datos más complejas.

blds ofrece una serie de métodos para cada tipo de builder, lo que permite agregar y configurar los datos de manera incremental y modular. Esto hace que la construcción de estructuras de datos sea más flexible y fácil de manejar, especialmente en casos donde se necesita construir objetos complejos con múltiples niveles de anidamiento.

Ejemplo de Uso

// Crear un objeto blds
builder := NewObjectBuilder()

// Agregar campos al objeto
builder.Field("name").String("John Doe")
builder.Field("age").Int(30)
builder.Field("is_active").Bool(true)

// Construir el objeto
obj := builder.Build()

// Serializar el objeto a JSON
jsonBytes, _ := json.Marshal(obj)
fmt.Println(string(jsonBytes))


🔒 Copyright 2024 activething.com

Powered by TurnKey Linux.