#Kata Ruby Modules.

ruby logo

En Ruby, los módulos (modules) son un componente especial que te permite categorizar y organizar clases, variables, funciones y objetos varios. Un concepto como este no existe en los lenguajes altamente tipados como Java o C#. Por eso me llamo la atención su uso.

Módulos como Namespaces.

El primer uso que vas a encontrar de los módulos en Ruby es el de un espacio de nombres de toda la vida. Un espacio de nombres funciona como un conjunto directorios, que sirven para organizar y categorizar los distintos componentes de tus aplicaciones.

Módulos como Mixins.

Un Mixin es un tipo especial de componente que sirve para ser reutilizado por clases. Cuando una clase hace referencia a un Mixin puede acceder a sus miembros como si fueran suyos, sin ninguna restricción.

Los módulos importados como Mixins pueden ser visibles por clases que heredan de otras.

Módulos y herencia múltiple.

La herencia en lenguajes orientados a objetos y sin alto tipado funciona distinto, a pesar de eso, si llegas a importar módulos en tu clase no estás aplicando herencia múltiple.

 

Gustavo Sánchez