Abstracción de datos en Ruby

La idea de representar detalles significativos y ocultar detalles de funcionalidad se denomina abstracción de datos. La interfaz y la implementación están aisladas por esta técnica de programación. La abstracción de datos también es una de las características de la programación orientada a objetos. La abstracción trata de minimizar la información para que el desarrollador pueda concentrarse en unas pocas ideas a la vez. La abstracción es la base para el desarrollo de software.

Considere un ejemplo de la vida real de hacer una llamada telefónica. Lo único que sabe la persona es que escribir los números y presionar el botón de marcación hará una llamada telefónica, no conocen el sistema interno del teléfono o el botón de marcación del teléfono. Eso es lo que llamamos abstracción.
Otro ejemplo de abstracción de la vida real es que los usuarios de televisores podemos encenderlo o apagarlo, cambiar el canal y ajustar el volumen sin conocer los detalles sobre cómo se ha implementado su funcionalidad.

Abstracción de datos en módulos : en Ruby, los módulos se definen como un conjunto de métodos, clases y constantes juntos. Por ejemplo, considere el método sqrt() presente en el módulo Math. Siempre que necesitemos calcular la raíz cuadrada de un número no negativo, simplemente llamamos al método sqrt() presente en el módulo matemático y enviamos el número como parámetro sin entender el algoritmo real que realmente calcula la raíz cuadrada de los números.

Abstracción de datos en clases: podemos usar clases para realizar la abstracción de datos en Ruby. La clase nos permite agrupar información y métodos usando especificadores de acceso (privado, protegido, público). La Clase determinará qué información debe ser visible y cuál no.

Abstracción de datos mediante control de acceso: hay tres niveles de control de acceso en Ruby (privado, protegido, público). Estas son las implementaciones más importantes de abstracción de datos en Ruby. Por ejemplo-

  • Se puede acceder a los miembros que han sido declarados públicos en una clase desde cualquier parte del programa.
  • Solo se puede acceder a los miembros declarados como privados en una clase desde dentro de la clase. No se
    les permite acceder a ninguna parte del código fuera de la clase.
# Ruby program to demonstrate Data Abstraction 
  
class Geeks 
  
    # defining publicMethod 
      
    public
  
    def publicMethod 
        puts "In Public!"
        # calling privateMethod inside publicMethod 
        privateMethod
    end
  
    # defining privateMethod 
      
    private 
  
    def privateMethod 
        puts "In Private!"
    end
end
  
  
# creating an object of class Geeks 
obj = Geeks.new
  
# calling the public method of class Geeks 
obj.publicMethod

Producción:

In Public!
In Private!

En el programa anterior, no se nos permite acceder directamente a privateMethod() de la clase Geeks, sin embargo, podemos llamar a publicMethod() en la clase para acceder a privateMethod().

Ventajas de la abstracción de datos:

  • Ayuda a aumentar la seguridad de un sistema porque solo los detalles cruciales están disponibles para el usuario.
  • Aumenta la reutilización y evita la redundancia de código.
  • Podría alterar la implementación de la clase interna de forma independiente sin afectar al usuario.

Publicación traducida automáticamente

Artículo escrito por riturajsaha y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *