Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% encontró este documento útil (0 votos)
119 vistas14 páginas

Informe (Encapsulamiento)

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1/ 14

Materia

Programacin Estructurada

Catedratico

Ing. Fabin Zaldivar

Te m a

Encapsulamiento y Ocultamiento de Datos

Diana Madrigales Motio

201410040123

U n i v e r s i d a d Te c n o l g i c a d e H o n d u r a s

E l P r o g r e s o , Yo r o

2017
ndice

I n t r o d u c c i n ..............................................................................................................................3

O b j e t i v o s .....................................................................................................................................4

E s p e c f i c o s .............................................................................................................................4

G e n e r a l e s ................................................................................................................................4

E n c a p s u l a m i e n t o ......................................................................................................................5

D e f i n i c i n ...............................................................................................................................5

E n c a p s u l a m i e n t o ..................................................................................................................6

F o r m a s d e e n c a p s u l a r ........................................................................................................6

O c u l t a c i n d e i n f o r m a c i n .................................................................................................7

H i s t o r i a ....................................................................................................................................7

D e f i n i c i n ...............................................................................................................................7

U s o s ...........................................................................................................................................8

E j e m p l o s ..................................................................................................................................9

R e c o m e n d a c i n ......................................................................................................................1 2

C o n c l u s i o n ...............................................................................................................................1 2

B i b l i o g r a f i a .............................................................................................................................1 3
I n t ro d u c c i n

S e d e n o m i n a E n c a p s u l a m i e n t o a l o c u l t a m i e n t o d e l e s t a d o , e s d e c i r, d e l

dato miembro de un objeto de manera que slo se pueda cambiar

mediante las operaciones definidas para ese objeto.

Se conoce como principio de ocultacin de informacin a la

ocultacin de decisiones de diseo en un programa susceptible de

cambios con la idea de proteger a otras partes del cdigo si stos se

producen.

A continuacin, hablaremos ms a fondo acerca de estos temas

Encapsulamiento y ocultamiento de Datos

Pgina | 3
O bj e t i v o s

Especficos

Definir que es el Encapsulamiento de Datos


Definir que es el Ocultamiento de Datos
Conocer para que se utilizan ambos

Generales

Desarrollar un alto nivel de conocimiento acerca de encapsulamiento

y ocultamiento de datos, para poder desarrollar un programa en C++,

ms profesional y entendible.

Pgina | 4
E n c a p s u l am i e n t o

Definicin

E n p r o g r a m a c i n m o d u l a r, y m s e s p e c f i c a m e n t e e n p r o g r a m a c i n

orientada a objetos, se denomina Encapsulamiento al ocultamiento del

e s t a d o , e s d e c i r, d e l o s d a t o s m i e m b r o d e u n o b j e t o d e m a n e r a q u e s l o

se pueda cambiar mediante las operaciones definidas para ese objeto.

C a d a o b j e t o e s t a i s l a d o d e l e x t e r i o r, e s u n m d u l o n a t u r a l , y l a

aplicacin entera se reduce a un agregado o rompecabezas de objetos. El

aislamiento protege a los datos asociados de un objeto contra su

modificacin por quien no tenga derecho a acceder a ellos, eliminando

efectos secundarios e interacciones.

De esta forma el usuario de la clase puede obviar la

implementacin de los mtodos y propiedades para concentrarse slo en

cmo usarlos. Por otro lado, se evita que el usuario pueda cambiar su

estado de maneras imprevistas e incontroladas.

Pgina | 5
Encapsulamiento

Como se puede observar de los diagramas, las variables del objeto se

localizan en el ncleo del objeto. Los mtodos rodean y esconden el

ncleo del objeto de otros objetos en el programa. Al empaquetamiento

de las variables de un objeto con la proteccin de sus mtodos se le

llama encapsulamiento. Tpicamente, el encapsulamiento es utilizado

para esconder detalles de la puesta en prctica no importantes de otros

objetos. Entonces, los detalles de la puesta en prctica pueden cambiar

en cualquier tiempo sin afectar otras partes del programa.

Formas de encapsular

Estndar (Predeterminado)
Abierto: Hace que el miembro de la clase pueda ser accedido desde

el exterior de la Clase y cualquier parte del programa.


Protegido: Solo es accesible desde la Clase y las clases que heredan

(a cualquier nivel).
Semi-cerrado: Solo es accesible desde la clase heredada.
Cerrado: Solo es accesible desde la Clase.

En el encapsulamiento hay analizadores que pueden ser semnticos

y s i n t c t i c o s . [ C I TAT I O N e s w 1 6 2 \ l 3 0 8 2 ]

Pgina | 6
Ocultacin de informacin

Historia

El concepto de ocultacin de informacin apareci documentado por

primera vez en un artculo de David Parnas, "On the Criteria to Be Used

in Decomposing Systems Into Modules", publicado en "Communications

of the ACM" en diciembre de 1972.

Definicin

En informtica, se conoce como principio de ocultacin de informacin

a la ocultacin de decisiones de diseo en un programa susceptible de

cambios con la idea de proteger a otras partes del cdigo si stos se

producen. Proteger una decisin de diseo supone proporcionar una

interfaz estable que proteja el resto del programa de la implementacin

(susceptible de cambios). En los lenguajes de programacin modernos el

principio de ocultacin de informacin se manifiesta de diferentes

maneras, como por ejemplo la encapsulacin.

Pgina | 7
Usos

El trmino encapsulacin a menudo se utiliza como sinnimo de la

ocultacin de informacin, si bien existen ciertas diferencias entre

a m b o s c o n c e p t o s . S i n e m b a rg o , p a r e c e q u e n o e x i s t e u n a c u e r d o s o b r e

dichas diferencias, siendo comn la idea de que la ocultacin de

informacin es el principio mientras que la encapsulacin es la tcnica.

Un mdulo de software oculta informacin encapsulndola en otro

mdulo u otra construccin con la que se comunica mediante una

interfaz.

El uso ms comn de la ocultacin de informacin es ocultar el

diseo del almacenamiento fsico de los datos, de manera que si dicho

diseo es modificado solamente afecte a un pequeo subconjunto del

programa total. Por ejemplo, si un punto tridimensional de coordenadas

( x , y, z ) e s r e p r e s e n t a d o e n u n p r o g r a m a c o n t r e s v a r i a b l e s e s c a l a r e s d e

coma flotante y posteriormente dicha representacin es modificada a

una variable array de tamao 3, un mdulo diseado mediante la

ocultacin de informacin en principio protegera al resto del programa

de este cambio.

Pgina | 8
En la programacin orientada a objetos, la ocultacin de

informacin reduce los riesgos en el desarrollo de software al superar la

dependencia del cdigo de una implementacin an incierta (es una

decisin de diseo) gracias a una interfaz bien construida. Los clientes

de la interfaz realizan sus operaciones a travs de ella de modo que, si

la implementacin cambia, los clientes no tienen conocimiento de ello.

Los autores de los patrones de diseo comentan las tensiones entre la

herencia y la encapsulacin en cuanto a que los diseadores abusan de

esta ltima (Gang of Four 1995:20). El peligro es expresado del

siguiente modo:

"Puesto que la herencia expone a una subclase los detalles de la

implementacin de su clase padre, a menudo se dice que 'la herencia

rompe la encapsulacin'". (Gang of Four 1995:19)

Ejemplos

Por ejemplo, una marca de coches puede ofertar una versin de

lujo de un cierto modelo del que tambin ofrecen una versin bsica. La

v e r s i n d e l u j o m o n t a u n m o t o r m s p o t e n t e q u e l a b s i c a . S i n e m b a rg o ,

los ingenieros han realizado el diseo de ambos motores de forma que la

"interfaz" sea la misma: ambos motores encajan en la carrocera

Pgina | 9
compartida por los dos modelos, estn acoplados a la misma transmisin

y tienen los mismos controles. La diferencia entre ellos reside en que la

versin de lujo, ms potente, es de mayor cilindrada y va alimentado

mediante inyeccin.

Adems de un motor ms potente, la versin de de lujo ofrecera

otras opciones como un mejor sistema de sonido, asientos ms cmodos,

una mejor suspensin con neumticos ms anchos y diferentes colores

para la carrocera. Pese a todos estos cambios, el coche en s es el

mismo. El sistema de sonido reemplaza a la radio bsica, que es de por

s un mdulo; los asientos van montados sobre la misma base que los

bsicos, etc.

Los ingenieros han diseado el coche dividiendo el trabajo en

distintas tareas asignadas a sus respectivos equipos. Cada equipo disea

entonces sus componentes con la nica restriccin de adaptarse a un

determinado estndar o interfaz que asegure la cohesin del resultado

final.

Como se ve en el ejemplo, la ocultacin de informacin supone

mayor flexibilidad. Esta flexibilidad permite al programador modificar

diferentes funciones del programa para adaptarlo a las necesidades de

Pgina | 10
los usuarios. Si durante el diseo se han seguido estas pautas, los

cambios evolutivos son mucho ms fciles de realizar ya que suelen

tener un alcance local y no global.

Vo l v i e n d o a l o s c o c h e s , o t r o e j e m p l o e s l a i n t e r f a z d e l c o n d u c t o r

con la mquina, compuesta por pedales, volante, testigos, palancas...

Salvando las distancias, es comn entre todos los coches, de manera que

cuando una persona aprende a conducir y recibe su permiso de

conduccin no tiene que volver a obtenerlo si cambia de coche.

[ C I TAT I O N e s w 1 6 3 \ l 3 0 8 2 ]

P g i n a | 11
Recomendacin

Profundizar ms el tema investigado acerca de los

encapsulamiento y ocultamiento de datos, plantearlo en la hora clase,

para poder utilizarlo al momento de realizar un programa con el

Lenguaje C++

Pgina | 12
Conclusin

Gracias al encapsulamiento y ocultamiento de Datos, podremos

desarrollar un programa ms completo, ordenado, y sobre todo con

instrucciones adecuadas para un manejo fcil y entendible

Pgina | 13
Bibliografa

/ e s . w i k i p e d i a . o rg . ( L u n e s 2 0 d e m a r z o d e 2 0 1 7 ) . h t t p s : / / e s . w i k i p e d i a . o rg .

h t t p s : / / e s . w i k i p e d i a . o rg / w i k i / E n c a p s u l a m i e n t o _ ( i n f o r m % C 3 % A 1 t i c a )

e s . w i k i p e d i a . o r g . ( L u n e s 2 0 d e M a r z o d e 2 0 1 7 ) . h t t p s : / / e s . w i k i p e d i a . o rg .

h t t p s : / / e s . w i k i p e d i a . o rg / w i k i / O c u l t a c i % C 3 % B 3 n _ d e _ i n f o r m a c i

%C3%B3n

Pgina | 14

También podría gustarte