POLITICA DE COOKIES

Q2BSTUDIO.COM utiliza cookies técnicas, analíticas, de sesión y de publicidad con la finalidad de prestar un mejor servicio. No obstante, necesitamos su consentimiento explícito para poder utilizarlas. Así mismo puede cambiar la configuración de las cookies u obtener más información aquí .

Truco para no reescribir argumentos

## Reenviar argumentos en Ruby con el operador de forwarding: más DRY y menos duplicación

Publicado el 14/09/2025

Es domingo por la mañana y mientras trabajo en un proyecto personal me encuentro repitiendo el mismo patrón una y otra vez al crear objetos de servicio en Ruby. El truco que me salvó de reescribir argumentos una y otra vez es aprovechar el operador de reenvío de argumentos ... para mantener el código limpio y resistente a cambios.

Ejemplo tradicional donde se repiten argumentos: class UserService def self.create(name:, email:, permissions:) new(name: name, email: email, permissions: permissions).save end def initialize(name:, email:, permissions:) @name = name @email = email @permissions = permissions end def save puts Saving user #{@name} ... end end

La versión con forwarding es mucho más sencilla y evita duplicación: class UserService def self.create(...) new(...).save end def initialize(name:, email:, permissions:) @name = name @email = email @permissions = permissions end def save puts Saving user #{@name} ... end end

Por qué funciona mejor: es DRY, menos código repetido y cuando añades un nuevo parámetro como age: no tienes que tocar el método create. El operador ... reenvía argumentos posicionales, keywords y bloques. Si en algún momento quieres interceptar un argumento y reenviar el resto es tan simple como: def self.create(name:, ...) puts About to create a user named #{name} new(name: name, ...) end

En Q2BSTUDIO aplicamos principios como este para desarrollar soluciones escalables y mantenibles. Si buscas desarrollar aplicaciones a medida o inteligencia artificial para tu empresa, nuestro equipo de software a medida, especialistas en ia para empresas y agentes IA puede ayudarte a implantar buenas prácticas desde el diseño hasta la producción.

Además integramos servicios cloud aws y azure, ciberseguridad, servicios inteligencia de negocio y soluciones con power bi para que tu proyecto no solo funcione sino que sea seguro y escalable. Palabras clave que aplicamos en proyectos reales incluyen aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA y power bi.

Conclusión breve: usa ... para reenviar argumentos y evita reescribir firmas de métodos. Es un pequeño cambio que reduce errores futuros y acelera el desarrollo de software a medida. Si quieres que te ayudemos a aplicar estos y otros patrones en tu proyecto contacta con Q2BSTUDIO.

Fin del artículo, inicio de la diversión
Construyendo software juntos

Dando vida a tus ideas desde 2008

Diseñamos aplicaciones móviles y de escritorio innovadoras que cumplen con tus requisitos específicos y mejoran la eficiencia operativa.
Más info
Cuéntanos tu visión
Sea cual sea el alcance, podemos convertir tu idea en realidad. Envíanosla y charlemos sobre tu proyecto o una colaboración futura.
Contáctanos
artículos destacados
Live Chat
Enviado correctamente.

Gracias por confiar en Q2BStudio