Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Abstraccin y
Encapsulacin en una
base de datos
Benito vila Vilma Cornejo Fernando Guerra Claudio Navarro Jos Saavedra
Profesor: Erick lvarez
27/04/2013
Introduccin
La abstraccin consiste en aislar un elemento de su contexto o del resto de los
elementos que lo acompaan. En programacin, el trmino se refiere al nfasis en el
"qu hace?" ms que en el "cmo lo hace?".
En cuanto a la encapsulacin, es un mecanismo que consiste en organizar datos
y mtodos de una estructura, evitando el acceso a datos por cualquier otro medio distinto
a los especificados. Por lo tanto, la encapsulacin garantiza la integridad de los datos que
contiene un objeto.
En simples palabras, es una propiedad que permite ocultar la informacin al
resto de los objetos, impidiendo as accesos incorrectos o conflictos y garantiza la
integridad de los datos que contiene un objeto.
A continuacin, les presentamos el concepto de abstraccin y de
encapsulacin, en forma ms extendida y explicada, junto con algunos ejemplos de cada
concepto para mejorar la comprensin de lo que fue explicado anteriormente.
Abstraccin
La abstraccin expresa las caractersticas esenciales de un objeto, las cuales
distinguen al objeto de los dems. Adems de distinguir entre los objetos provee lmites
conceptuales como la encapsulacin, que separa las caractersticas esenciales de las no
esenciales dentro de un objeto. Si un objeto tiene ms caractersticas de las necesarias los
mismos resultarn difciles de usar, modificar, construir y comprender. La misma genera
una ilusin de simplicidad dado a que minimiza la cantidad de caractersticas que definen
a un objeto.
La abstraccin puede alcanzar un grado de reconocimiento de las similitudes entre
objetos, situaciones, o procesos del mundo real y determinar cules de estas similitudes
considerar y cuales ignorar. Es una descripcin simplificada que enfatiza algunos detalles o
propiedades mientras que suprime otros quedando solo aquellos detalles que tiene real
significacin para la situacin que se plantee. La abstraccin slo existe si puede ser
descrita, comprendida y analizada independientemente del mecanismo que
eventualmente ser usado para realizarla. En otras palabras, denota las caractersticas
esenciales de un objeto que lo distingue de cualquier otro tipo de objeto obteniendo as
fronteras conceptuales bien definidas relativas a la perspectiva del observador
(abstraccin del objeto).
A grandes rasgos, la abstraccin, permite que dispongamos de las caractersticas de
un objeto que necesitemos. Si necesitamos el objeto Persona, podramos poner nombre,
edad, direccin, estado civil, etc. Si lo necesitamos en un sistema administrativo, pero, si lo
requerimos para el rea de biologa, dentro de sus atributos quiz tengamos, ADN, RND,
Gen x1, Gen x2, etc., y los atributos antes mencionados no sean requeridos. En general,
podemos decir que Persona cuenta con todos los atributos mencionados aqu, pero por el
proceso de abstraccin excluimos todos aquellos que no tienen cabida en nuestro sistema.
Se define como un mtodo por el cual se rescatan los datos relevantes y se ignoran los
irrelevantes.
Clase Cliente
public function getNombreCompleto()
{
return $this->getNombre().' '.$this->getApellidos();
}
2)
ENCAPSULAMIENTO
Significa reunir a todos los elementos que pueden considerarse pertenecientes a una
misma entidad, al mismo nivel de abstraccin. Esto permite aumentar la de los
componentes del sistema. Algunos confunden este concepto con el principio de
ocultacin, principalmente porque se suelen emplear conjuntamente. El concepto de
encapsulamiento es una de las caractersticas principales de los lenguajes y sistemas
orientados a objetos. Tambin est relacionado con los conceptos de tipos de datos
abstractos y de ocultacin de informacin en los lenguajes de programacin. La idea
principal es definir el comportamiento de un tipo de objeto con base en las operaciones
que se pueden aplicar externamente a objetos de ese tipo. La estructura interna del objeto
queda oculta y slo se puede tener acceso a l a travs de una serie de operaciones
predefinidas, algunas de las cuales pueden servir para crear o destruir objetos, actualizar
el estado de los mismos, para obtener partes del valor del objeto o bien aplicar clculos a
dicho valor, pudiendo estas operaciones ser mezcladas entre s. Los usuarios externos slo
perciben la interfaz del objeto, la que define los nombres y argumentos de cada operacin,
la implementacin del objeto queda oculta, esto significa que tambin quedan ocultas las
definiciones de estructuras de datos internas y la implementacin de las operaciones que
tienen acceso a tales estructuras.
La encapsulacin: Se refiere a la capacidad de agrupar y reducir en un entorno con
lmites bien definidos distintos elementos. Cuando hablemos de encapsulacin en general
siempre nos referiremos a encapsulacin abstracta. De manera informal, primero
generalizamos la abstraccin y luego decimos: la generalizacin est bien, pero dentro de
un cierto orden: hay que poner lmites (la encapsulacin), y dentro de esos lmites vamos a
meter, a saco, todo lo relacionado con lo abstrado: no slo datos, sino tambin mtodos,
comportamientos, etc.
Ocultacin de datos
El usuario de una clase en particular no necesita saber cmo estn estructurados los
datos dentro de ese objeto, es decir, un usuario no necesita conocer la implementacin. Al
evitar que el usuario modifique los atributos directamente y forzndolo a utilizar funciones
definidas para modificarlos (llamadas interfaces), se garantiza la integridad de los datos
(por ejemplo, uno puede asegurarse de que el tipo de datos suministrados cumple con
nuestras expectativas bien que los se encuentran dentro del periodo de tiempo esperado).
La encapsulacin define los niveles de acceso para elementos de esa clase. Estos
niveles de acceso definen los derechos de acceso para los datos, permitindonos el acceso
a datos a travs de un mtodo de esa clase en particular, desde una clase heredada o
incluso desde cualquier otra clase. Existen tres niveles de acceso:
Pblico: funciones de toda clase pueden acceder a los datos o mtodos de una
clase que se define con el nivel de acceso pblico. Este es el nivel de proteccin de
datos ms bajo
Protegido: el acceso a los datos est restringido a las funciones de clases heredadas,
es decir, las funciones miembro de esa clase y todas las subclases.
Privado: el acceso a los datos est restringido a los mtodos de esa clase en
particular. Este es nivel ms alto de proteccin de datos.