Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

me pueden explicar el concepto de capsulacion

Estas en el tema de me pueden explicar el concepto de capsulacion en el foro de Frameworks y PHP orientado a objetos en Foros del Web. me pueden explicar el concepto de capsulacion muchos autores dicen que 1-escondder al usuario del a clase de detalles de las actividades que realiza pero ...
  #1 (permalink)  
Antiguo 30/01/2013, 21:46
Avatar de jor_0203  
Fecha de Ingreso: octubre-2011
Ubicación: mexico
Mensajes: 760
Antigüedad: 13 años, 1 mes
Puntos: 8
me pueden explicar el concepto de capsulacion

me pueden explicar el concepto de capsulacion
muchos autores dicen que

1-escondder al usuario del a clase de detalles
de las actividades que realiza

pero otros dicen que esta mal y dicen esto

2-Significa reunir a todos los elementos que pueden
pertenecientes a una misma entidad, al
mismo nivel de abstracción. y no es de esconder.


pero sigo sin entender el concepto de en capsulacion

ojala me pudieran definir mejor este concepto ya quese me hace un poco revuelto
por tantas gentes.
  #2 (permalink)  
Antiguo 31/01/2013, 04:23
 
Fecha de Ingreso: abril-2012
Mensajes: 590
Antigüedad: 12 años, 6 meses
Puntos: 58
Respuesta: me pueden explicar el concepto de capsulacion

Te digo lo que yo entiendo que no se si es correcto.

Encapsular yo lo asocio más a programación orientada a objetos. Para mi significa hacer los métodos que no necesite llamar el usuario no accesibles públicamente, ocultar los parámetros propios de la clase, etc etc etc. Hacer todo de forma que el usuario sólo pueda acceder o incluso conocer lo que necesite. De esta forma no podrá estropear el objeto conduciéndolo a un error.

Tampoco dejarle acceder a los atributos directamente. Así que si tienes una clase con los atributos:
private String nombre;

Para definirlos le obligas a usar un método como lo típico, setNombre, y para obtenerlo otro método, getNombre. En lugar de dejarle usar directamente el atributo (variable).

Resumiendo, encapsular es meter unas cosas dentro de otras, protegerlas y dejar sólo visible / usable lo justo y necesario.

Si me equivoco que me corrijan porque yo tampoco entiendo mucho.
  #3 (permalink)  
Antiguo 31/01/2013, 05:30
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: me pueden explicar el concepto de capsulacion

Una de las grandes ventajas de el encapsulamiento (encapsulación creo que como palabra no existe), es que al ser completamente inaccesible la lógica y procesos internos a la clase, puedes cambiar completamente su código sin jamás tener que modificar ni un sólo objeto del resto de la aplicación.
Ese nivel de aislamiento permite hacer mejoras completas, correcciones y evolucionar el software sin que el usuario necesite cambiar de programa.
¿Se entiende?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #4 (permalink)  
Antiguo 31/01/2013, 14:59
Avatar de jor_0203  
Fecha de Ingreso: octubre-2011
Ubicación: mexico
Mensajes: 760
Antigüedad: 13 años, 1 mes
Puntos: 8
Respuesta: me pueden explicar el concepto de capsulacion

Cita:
Iniciado por alyciashape Ver Mensaje
Te digo lo que yo entiendo que no se si es correcto.

Encapsular yo lo asocio más a programación orientada a objetos. Para mi significa hacer los métodos que no necesite llamar el usuario no accesibles públicamente, ocultar los parámetros propios de la clase, etc etc etc. Hacer todo de forma que el usuario sólo pueda acceder o incluso conocer lo que necesite. De esta forma no podrá estropear el objeto conduciéndolo a un error.

Tampoco dejarle acceder a los atributos directamente. Así que si tienes una clase con los atributos:
private String nombre;

Para definirlos le obligas a usar un método como lo típico, setNombre, y para obtenerlo otro método, getNombre. En lugar de dejarle usar directamente el atributo (variable).

Resumiendo, encapsular es meter unas cosas dentro de otras, protegerlas y dejar sólo visible / usable lo justo y necesario.

Si me equivoco que me corrijan porque yo tampoco entiendo mucho.
muy buena definicion genial
  #5 (permalink)  
Antiguo 31/01/2013, 15:00
Avatar de jor_0203  
Fecha de Ingreso: octubre-2011
Ubicación: mexico
Mensajes: 760
Antigüedad: 13 años, 1 mes
Puntos: 8
Respuesta: me pueden explicar el concepto de capsulacion

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Una de las grandes ventajas de el encapsulamiento (encapsulación creo que como palabra no existe), es que al ser completamente inaccesible la lógica y procesos internos a la clase, puedes cambiar completamente su código sin jamás tener que modificar ni un sólo objeto del resto de la aplicación.
Ese nivel de aislamiento permite hacer mejoras completas, correcciones y evolucionar el software sin que el usuario necesite cambiar de programa.
¿Se entiende?
genial realmente son buenas definiciones
gracias
  #6 (permalink)  
Antiguo 05/02/2013, 19:22
Avatar de jor_0203  
Fecha de Ingreso: octubre-2011
Ubicación: mexico
Mensajes: 760
Antigüedad: 13 años, 1 mes
Puntos: 8
Respuesta: me pueden explicar el concepto de capsulacion

¿el concepto encapsular y el concepto de visibilidad entonces se puede decir que es lo mismo?

yo pienso que si, pero me gustaría que me dieran su experiencia
  #7 (permalink)  
Antiguo 05/02/2013, 22:43
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: me pueden explicar el concepto de capsulacion

No, no es lo mismo.

Encapsular es que tu objeto sea lo suficientemente autosuficiente, pero que trabaje de una manera que sea parametizable, o sea que pueda dar diferentes resultados en base a los parámetros de entrada pero que sea lo autosuficiente para que sea conciso el comportamiento.

Visibilidad simplemente es eso, que tan visible es el objeto a su entorno.

Saludos.
  #8 (permalink)  
Antiguo 06/02/2013, 19:57
Avatar de jor_0203  
Fecha de Ingreso: octubre-2011
Ubicación: mexico
Mensajes: 760
Antigüedad: 13 años, 1 mes
Puntos: 8
Respuesta: me pueden explicar el concepto de capsulacion

Cita:
Iniciado por alyciashape Ver Mensaje
Te digo lo que yo entiendo que no se si es correcto.

Encapsular yo lo asocio más a programación orientada a objetos. Para mi significa hacer los métodos que no necesite llamar el usuario no accesibles públicamente, ocultar los parámetros propios de la clase, etc etc etc. Hacer todo de forma que el usuario sólo pueda acceder o incluso conocer lo que necesite. De esta forma no podrá estropear el objeto conduciéndolo a un error.

Tampoco dejarle acceder a los atributos directamente. Así que si tienes una clase con los atributos:
private String nombre;

Para definirlos le obligas a usar un método como lo típico, setNombre, y para obtenerlo otro método, getNombre. En lugar de dejarle usar directamente el atributo (variable).

Resumiendo, encapsular es meter unas cosas dentro de otras, protegerlas y dejar sólo visible / usable lo justo y necesario.

Si me equivoco que me corrijan porque yo tampoco entiendo mucho.
pero que crees me estoy dando cuenta que soso definiste que es encapsular
pero no definiste que es la visibilidad
  #9 (permalink)  
Antiguo 10/02/2013, 17:03
Avatar de dashtrash
Colaborador
 
Fecha de Ingreso: abril-2007
Ubicación: Ni en Sevilla,ni en Sanlúcar..qué más da..
Mensajes: 927
Antigüedad: 17 años, 7 meses
Puntos: 270
Respuesta: me pueden explicar el concepto de capsulacion

Encapsular es el principio por el cual se asigna a un objeto, una serie de funciones junto con los datos necesarios para ejecutar esas funciones dentro del sistema.En este sentido, encapsular es una herramienta de diseño, que se puede implementar de muchas formas, no sólo con OOP.Cualquier cosa que diera una forma de aislar espacios de código (ej. módulos), aporta un nivel de encapsulación.

A la vez, el encapsulamiento se refiere a las herramientas que te da un paradigma (OOP) para implementar ese principio de diseño.Define cómo se consigue aportar al sistema las funciones encargadas, ocultando el cómo se realizan.
La "visibilidad" va asociada a esta idea.A través de la "visibilidad", la clase expone al resto del sistema la funcionalidad que se le pide, ocultando el resto.

Gracias al encapsulamiento, y a tener definido qué se le pide a una pieza de un sistema, manteniendo fijo el interfaz, puedes conducir un coche de hace 30 años, aunque lo que hay debajo del capó sea absolutamente diferente.

Etiquetas: concepto, php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:25.