Está en la página 1de 7

UNIVERSIDAD LAICA ELOY ALFARO DE MANAB

FACULTAD DE CIENCIAS INFORMTICAS

CARRERA:
INGENIERA DE SISTEMAS
ALUMNA:
JOSSELIN LOOR SABANDO

DEFINICIONES GENERALES DE POO


ASIGNATURA:
PROGRAMACIN ORIENTADA A OBJETOS
CURSO:
NIVEL 2 A
DOCENTE:
ING. MANOSALVAS GARCA CARLOS
MANTA ECUADOR
SEGUNDO SEMESTRE
2016 - 2017

Abstraccin

Las caractersticas especficas de un objeto, aquellas que lo distinguen de los dems


tipos de objetos y que logran definir lmites conceptuales respecto a quien est
haciendo dicha abstraccin del objeto.
Una abstraccin se enfoca en la visin externa de un objeto, separa el
comportamiento especfico de un objeto, a esta divisin que realiza se le conoce
como la barrera de abstraccin, la cual se consigue aplicando el principio de mnimo
compromiso.
Pero Qu es el principio de mnimo compromiso? Se refiere al proceso por el cul
la interfaz de un objeto muestra su comportamiento especfico y nada ms,
absolutamente nada ms.
Pero Qu es una Interfaz? Una interfaz de objeto permite crear cdigo con el cul
se especfica que mtodos sern implementados por una clase sin necesidad de
definir qu harn estos mtodos, dichos mtodos deben ser pblicos.
Abstraccin de Entidades: Es un objeto que representa un modelo til de una
entidad que se desea.
Abstraccin de Acciones: Un objeto que representa un conjunto de operaciones y
todas ellas desempean funciones del mismo tipo.
Abstraccin de Mquinas virtuales: Un objeto que agrupa operaciones, todas ellas
virtuales, utilizadas por algn nivel superior de control u operaciones (entre ellos
podramos hablar de un circuito).
Abstraccin de coincidencia: Un objeto que almacena un conjunto de operaciones
que no tienen relacin entre s.
Modelo contractual de programacin
En dicho modelo podemos mencionar que la vista exterior de cada objeto define una
interfaz del que puedan depender otros objetos, esta interfaz como bien lo habamos
mencionado, establece todas las suposiciones que pueda hacer un
objeto cliente acerca del comportamiento de un objeto servidor, es decir la interfaz
abarca las responsabilidades de un objeto, dicho en otras palabras, abarca el
comportamiento del que se le considera responsable.
Un objeto puede actuar y reaccionar de diferentes formas, un conjunto de operaciones
que puede realizar un cliente sobre un objeto se le denomina protocolo.
No est dems mencionar que toda abstraccin tiene propiedades estticas y
dinmicas.
Propiedades estticas podemos mencionar, el nombre, el tamao, en algunas
ocasiones su contenido.
Propiedades dinmicas podemos mencionar peso, tamao, contenido.
Dependiendo el contexto que se est analizando el contenido u otras propiedades
pueden ser dinmicas como estticas.
Realizaremos un breve ejemplo de una abstraccin sobre un vehculo.
Supongamos que en este ejemplo nos estn solicitando la abstraccin de un vehculo
en cuanto a su comportamiento.

La pregunta que hago es Cules son los comportamientos que tienen todos los
vehculos? con base a esta pregunta, automticamente fluye nuestra abstraccin del
comportamiento de un vehculo.
1. Encender Vehculo
2. Apagar Vehculo
3. Acelerar Vehculo
4. Frenar Vehculo
5. Retroceder Vehculo
6. Parabrisas Vehculo
Y podra listar el comportamiento del vehculo, ahora para que ustedes puedan
ejercitar lo aprendido, pueden realizar abstracciones de objetos, incluyendo sus
caractersticas y el comportamiento.

Encapsulamiento
Es el proceso de almacenar en una misma seccin los elementos de una
abstraccin que constituyen su estructura y su comportamiento; sirve para
separar el interfaz contractual de una abstraccin y su implantacin.
Existen tres niveles de acceso para el encapsulamiento:
Pblico (Public): Todos pueden acceder a los datos o mtodos de una clase
que se definen con este nivel, este es el nivel ms bajo, esto es lo que t
quieres que la parte externa vea.
Protegido (Protected): Podemos decir que ests no son de acceso pblico,
solamente son accesibles dentro de su clase y por subclases.
Privado (Private): En este nivel se puede declarar miembros accesibles slo
para la propia clase.
Voy a hacer un pequeo ejemplo, no usar ningn lenguaje de Programacin
Orientado a Objetos, debido a que el Curso es Programacin Orientada a
Objetos en General. El Ejemplo del Vehculo nuevamente, Usaremos la
caracterstica COLOR.
Contexto 1: Se necesita que cualquiera pueda acceder al
color de un vehculo, entonces:
Opcin a: Declaro entonces COLOR como Privado
Opcin b: Declaro entonces COLOR como Protegido
Opcin c: Declaro entonces COLOR Como Pblico
Claro!, S escogiste la Opcin C, te has Ganado un pase al siguiente
ejemplo, de lo contrario vuelve a darle un repaso a los niveles de acceso.
Contexto 2: Se necesita qu color se pueda acceder a
travs no slo de vehculo, s no ahora tambin de Buses,
y como todos sabemos un bus es un tipo de vehculo,
entonces tambin deber tener acceso a color.
Opcin a: Declaro entonces COLOR como Privado
Opcin b: Declaro entonces COLOR como Protegido
Opcin c: Declaro entonces COLOR Como Pblico

Correcta Opcin b

Mensajes
Un objeto por s solo no tiene mucho significado. Ejemplo: el objeto "bicicleta"
no tiene mucho sentido si no interacta con un objeto "persona" que pedalee.
La interaccin entre objetos se produce mediante mensajes. Los mensajes son
llamados a mtodos de un objeto en particular.
Podemos decir que el objeto persona enva el mensaje "girar a la izquierda" al
objeto bicicleta.
1. El objeto destino, hacia el cual el mensaje es enviado
2. El nombre del mtodo a llamar
3. Los parmetros solicitados por el mtodo

Beneficios de los mensajes


Como todo lo que un objeto puede hacer esta expresado mediante mtodos, el
envo de mensajes soporta todas las posibles interacciones entre objetos.
Para enviar o recibir mensajes, los objetos no necesitan formar parte del mismo
proceso, ni siquiera de la misma mquina.

POLIMORFISMO
Otra propiedad importante de la programacin orientada a objetos es
el polimorfismo. Esta propiedad, en su concepcin bsica, se encuentra en casi
todos los lenguajes de programacin. El polimorfismo, en su expresin ms
simple, es el uso de un nombre o un smbolo para representar o significar ms
de una accin.
Esta propiedad permite que un mismo mtodo se comporte de forma distinta
dependiendo de que objeto lo est ejecutando. Por ejemplo, todos los
mamferos tienen el mtodo comer, pero este mtodo se efectuara de forma
distinta si este mamfero es un ciervo comiendo hierba, un len comiendo
carne, una ballena comiendo plancton o un nio comindose un caramelo.
La gran ventaja ofrecida por el polimorfismo es permitir que los nuevos tipos de
datos sean manipulados de forma similar que los tipos de datos predefinidos,
logrando as ampliar el lenguaje de programacin de una forma ms ortogonal.
Funcin
Funcin

Funcin miembro
Funcin miembro
Funcin miembro
Datos
Datos
Datos
Mtodo_1
Mtodo_2
Mtodo_3
El mtodo_1 llama al mtodo_2, envindole un mensaje
El mtodo_3 se invoca por un mensaje de otro objeto
Sumar

HERENCIA
Una de las herramientas disponibles en lenguajes orientados a objetos ms
potente es la herencia. Esta propiedad permite a los objetos ser construidos a
partir de otros objetos. El objetivo final es la reutilizabilidad o reutilizacin, es
decir, reutilizar cdigo anteriormente ya desarrollado.
La herencia supone una clase base y una jerarqua de clases que contiene
las clases derivadas de la clase base. Las clases derivadas pueden heredar el
cdigo y los datos de su clase base, aadiendo su propio cdigo especial y
datos a ellas, incluso cambiar aquellos elementos de la clase base que
necesita sean diferentes.
Clase Base
Clase derivada Clase derivada Clase derivada
1 HERENCIA SIMPLE (Herencia jerrquica)

En esta jerarqua cada clase tiene como mximo una sola superclase. La
herencia simple permite que una clase herede las propiedades de su
superclase en una cadena jerrquica.
2 HERENCIA MLTIPLE (Herencia en malla)
Una malla o retcula consta de clases, cada una de las cuales puede tener una
o ms superclases inmediatas. Una herencia mltiple es aquella en la que cada
clase puede heredar mtodos y variables de cualquier nmero de superclases.
La clase C tiene dos superclases, A y D. Por consiguiente, la clase C hereda
las propiedades de las clases A y D. Evidentemente, esta accin puede
producir un conflicto de nombres, donde la clase C hereda las mismas
propiedades de A y D.
Herencia repetida
Otro de los problemas graves que produce la herencia mltiple es la herencia
repetida. Este tipo de herencia se produce cuando una clase hereda de dos o
ms superclases que a su vez heredan de la misma superclase. La mayora de
los lenguajes de programacin no permiten la duplicacin esttica de la
superclase, pero eso no se producir siempre, y as se puede dar el caso de
que el compilador duplique la clase que se hereda dos o ms veces.

También podría gustarte