No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Qué es encapsulamiento

11/20
Recursos

Aportes 26

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

¿Qué es encapsulamiento?
Es guardar, proteger, guardar o limitar el acceso de cierto atributos y/o propiedades en nuestros prototipos y objetos.

Cuando hablamos de **encapsulamiento **hablamos de:

  • Esconder métodos y atributos 👻

  • No permitir la alteración de métodos y atributos ❌

Encapsulamiento en JavaScript

  • No permitir la alteración de métodos y atributos ❌

Formas de aplicar encapsulamiento en JavaScript

  • Getters y setters 🖐

  • Namespaces 🙂

  • Object.defineProperties 🎈

  • Módulo de ES6 🤝

Encapsulación
La encapsulación es el empaquetamiento de datos y funciones en un componente (por ejemplo, una clase) y para luego controlar el acceso a ese componente para hacer un ejecto de “caja negra” fuera del objeto. Debido a esto, un usuario de esa clase solo necesita conocer su interfaz (es decir, los datos y las funciones expuestas fuera de la clase), no la implementación oculta.

¿QUÉ ES ENCAPSULAMIENTO?
·
Es la forma de proteger, encapsular, guardar, limitar, esconder el acceso de ciertos atributos y propiedades de nuestros objetos.

  1. Esto nos permite crear métodos y atributos privados. Solamente los métodos y atributos que se encuentren dentro de la clase podrán acceder a estos datos privados.
  2. Así, nosotros podemos prevenir la sobreescritura o alteración de métodos y atributos, de las clases, de los objetos, o los prototipos incluso, o sea las instancias creadas.
    ·
    Pero… en JavaScript, el encapsulamiento no es tan posible. Porque en JS todo es público. Y aunque nos lo puede permitir, debemos tener un dominio más profundo del prototipo Object para lograrlo… otros métodos son usando getters & setters, Namespaces, Object.defineProperties, módulos de ES6.

Primera vez que veo un curso de POO de js superbuenísimo!

En términos de POO, la delimitación de la interfaz interna de la externa se llama encapsulamiento.

Ejemplo:

Protección para los usuarios, para que no se disparen en el pie: Imagínese, hay un equipo de desarrolladores que usan una máquina de café. Fue hecho por la compañía “Best CoffeeMachine” y funciona bien, pero se quitó una cubierta protectora. Entonces la interfaz interna está expuesta.

1. Soportable

Si delimitamos estrictamente la interfaz interna, el desarrollador de la clase puede cambiar libremente sus propiedades y métodos internos, incluso sin informar a los usuarios.

2. Ocultando complejidad

Siempre es conveniente cuando los detalles de implementación están ocultos, y hay disponible una interfaz externa simple y bien documentada.

Y esto nos lleva a otros conceptos tales como las propiedades privadas y publicas

💊 Qué es encapsulamiento

Apuntes

  • El encapsulamiento es crear una intersección, la cual se encargará de administrar, verificar la acciones que se realicen entre nuestra interfaz y el usuario
  • Se encarga de guardar, proteger, guardar o limitar el acceso de ciertos atributos y/o propiedades en nuestros prototipos y objeto
  • Las características de encapsulamiento son:
    1. Esconder métodos y atributos
      • Solo lo que está dentro de nuestra clase podrá acceder a dichos métodos o propiedades, es decir que externamente no se podrá acceder
    2. No permitir la alteración de métodos y atributos
      • Desde afuera podemos alterar o sobreescribir los comportamientos de instancias o prototipos

Encapsulamiento en JavaScript

  • Cuando hablamos de esconder métodos y atributos en JavaScript, no es posible debido a que todo en JS es público
    • Existen formas de encapsular en JS:
      1. Getters y setters
      2. Namespaces
      3. Object.defineProperties
      4. Módulos de ES6
📌 **RESUMEN:** El encapsulamiento es uno de los pilares de la programación orientada a objetos, este sé encargar de guardar, proteger y limitar acceso ya sea a atributos o métodos. Sus características son de esconder y no permitir la alteración de métodos y propiedades.

El encapsulamiento de datos previene que el desarrollador haga cambios inesperados al sistema, como también ocultar la información para que no pueda ser modificada o vista por otras clases y esto es muy útil pero además fácil de hacer, como aprenderemos en la lección de hoy.

¿Cómo accedemos a dicha información de forma segura? En el desarrollo de esta clase van a explicarte cómo podemos modificar de forma segura las propiedades (o variables) de una clase y cómo podemos presentar dicha información al usuario de una forma correcta con el uso de métodos conocidos como Setters y Getters.

La abstracción es la habilidad de ignorar los detalles de las partes para enfocar la atención
en un nivel más alto de un problema.
El encapsulamiento sucede cuando algo es envuelto en una capa protectora. Cuando el
encapsulamiento se aplica a los objetos, significa que los datos del objeto están protegidos,
“ocultos” dentro del objeto. Con los datos ocultos, ¿cómo puede el resto del programa
acceder a ellos? (El acceso a los datos de un objeto se refiere a leerlos o modificarlos.) El
resto del programa no puede acceder de manera directa a los datos de un objeto; lo tiene
que hacer con ayuda de los métodos del objeto.
En el supuesto de que los métodos de un objeto estén bien escritos, los métodos aseguran
que se pueda acceder a los datos de manera adecuada. Al hecho de empaquetar o proteger
los datos o atributos con los métodos se denomina encapsulamiento.

Encapsulamiento : Este se considera el mecanismo de unir los datos y ocultarlos del mundo exterior. Esto se debe a que nosotros como programadores no permitimos que los datos fluyan libremente dentro del sistema. El proposito de encapsulamiento de lo que he estudiado son al menos los siguientes:

  • Poner resticciones en su lugar para que no se pueda acceder directamente a los componentes de un objeto.
  • Vincular los datos con metodos que actuarán sobre esos datos formando una cápsula.
    Viendo este criterio se puede observar al encapsulamiento como metodos que nos sirven como la interfaz entre el objeto y el mundo exterior.

📌 El Encapsulamiento se refiere al ocultamiento o limitación de propiedades de un prototipo, al ocultar o no permitir la alteración de algunos de sus métodos y atributos

Se utiliza para ocultar el objeto del exterior. Este aislamiento hace que los datos (propiedades) del objeto sólo puedan gestionarse con las operaciones (métodos) definidos en ese objeto. Se decía que JavaScript no podía ocultar y/o encapsular datos porque los objetos no podían tener variables y métodos privados como sucede Java y otros lenguajes. Douglas Crockford fue uno de los que echó abajo este mito tal como expone en el documento del año 2001 Private members in JavaScript, lo cual se consigue precisamente con el efecto closure. Por otro lado JavaScript no tiene clases como Java, pero se simulan con funciones que hacen las veces de constructores.

Con esto de encapsular. Me viene a la mente el juego Habbo Hotel:

Ciertos usuarios podrían usar métodos y atributos de algunas salas. O sea, podían dejar pasar a otros players, poner música, entrar a ciertos cuartos o funciones de la casa…

Los demás solo podían ver o simplemente no saber nada de lo que pasaba.

Juan buen dia, queria darte las gracias porque explicas super bien la verdad que uno comprende muy bien coo explicas aunque en mi humilde opinion el taller de matematicas y taller de video juegos deberia ir despues de haber estudiados POO y arrays porque ahi en ese curso jejej uno ve tanta cosa que queda mas perdido que la mama del chavo pero muchisimas Gracias explicas 1A

Uno de los objetivos más importantes de la Programación Orientada a Objetos, el cuál es poder proteger y ocultar información, a dicho proceso se le denomina encapsulamiento.

Encapsular es restringir u ocultar el acceso a datos . Sólo podrán ser accedidos por la clase.

**Encapsular
**

  • Esconder métodos y atributos

  • No permitir la alteración de métodos y atributos

Encapsular:

  • Esconder métodos y atributos.
  • No permitir la alteración de métodos y atributos.

Encapsular en JS

  • Getters y setters
  • Namespaces
  • Object.defineProperties
  • Módulos de ES6

Encapsulamiento, controlar el acceso a los datos y funciones de una clase, no lo veo muy claro en JS

No viene al caso, bueno, viene medio al caso: había alguien de prácticas aprendiendo en mi oficina del banco e hizo una transacción con un 0 extra en el importe 👁👄👁 (un número muy, muy grande). Por suerte, lo que dice Juan, gracias al registro de la plataforma se pudo solucionar antes de que la orden se ejecutara.

Wow no puedo esperar por aprender namespaces y Object.defineProperties, el otro curso al parecer estará demasiado bueno

Encapsulamiento

Es el proceso de almacenar en una misma sección los elementos de una abstracción que constituyen su estructura y su comportamiento; sirve para separar el interfaz contractual de una abstracción y su implantación. Esto se consigue a través de la ocultación de información, ocultación de información es el proceso de ocultar «Todos los Secretos» de un objeto que no aportan a sus características específicas.

Para que la abstracción funcione como debe, la implementación debe estar encapsulada, nunca está de más recordar que cada clase debe tener dos partes, una interfaz y una implementación

Encapsular → esconder

Encapsulamiento.- Proteger datos, información, en este caso atributos y métodos de nuestros objetos. En JavaScript, no podemos esconder del todo a nuestros métodos y atributos, pero si podemos impedir que estos sean modificados desde fuera, limitando el acceso a estos.