Ruby | Encapsulación

La encapsulación se define como el empaquetado de datos en una sola unidad. Es el mecanismo que une el código y los datos que manipula. De otra manera, el encapsulamiento es un escudo protector que evita que el código acceda a los datos fuera de este escudo.

  • Técnicamente, en encapsulación, las variables o datos de una clase están ocultos de cualquier otra clase y solo se puede acceder a ellos a través de cualquier función miembro de la propia clase en la que se declaran.
  • La encapsulación se puede lograr declarando todas las variables de la clase como privadas y escribiendo métodos públicos en la clase para establecer y obtener los valores de las variables.

Ejemplo:

# Ruby program to illustrate encapsulation
#!/usr/bin/ruby 
    
class Demoencapsulation 
        
def initialize(id, name, addr) 
         
 # Instance Variables      
 @cust_id = id 
 @cust_name = name 
 @cust_addr = addr 
 end
     
 # displaying result 
 def display_details() 
 puts "Customer id: #@cust_id"
 puts "Customer name: #@cust_name"
 puts "Customer address: #@cust_addr"
 end
end
    
# Create Objects 
cust1 = Demoencapsulation .new("1", "Mike", 
              "Wisdom Apartments, Ludhiya") 
  
cust2 = Demoencapsulation .new("2", "Jackey", 
                "New Empire road, Khandala") 
    
# Call Methods 
cust1.display_details() 
cust2.display_details() 

Producción:

Customer id: 1
Customer name: Mike
Customer address: Wisdom Apartments, Ludhiya
Customer id: 2
Customer name: Jackey
Customer address: New Empire road, Khandala

Explicación: En el programa anterior, la clase Demoencapsulation encapsula los métodos de la clase. Solo puede acceder a estos métodos con la ayuda de objetos de la clase Demoencapsulation , es decir, cust1 y cust2 .

Ventajas de la encapsulación:

  • Ocultación de datos: el usuario no tendrá idea de la implementación interna de la clase. No será visible para el usuario cómo la clase almacena valores en las variables. Solo sabe que estamos pasando los valores a un método setter y que las variables se inicializan con ese valor.
  • Reutilización: la encapsulación también mejora la reutilización y es fácil de cambiar con nuevos requisitos.
  • Probar el código es fácil: el código encapsulado es fácil de probar para las pruebas unitarias.

Publicación traducida automáticamente

Artículo escrito por ankita_saini 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 *