Professional Documents
Culture Documents
Articulación SENA-MEN
CARACTERISTICAS DE LA PROGRAMACION
ORIENTADA A OBJETOS
I. IDENTIFICACION:
II. INTRODUCCION:
Hoy en día la tecnología orientada a objetos ya no se aplica solamente a los lenguajes de
programación, además se viene aplicando en el análisis y diseño con mucho éxito, al igual
que en las bases de datos. Es que para hacer una buena programación orientada a objetos
hay que desarrollar todo el sistema aplicando esta tecnología, de ahí la importancia del
análisis y el diseño orientado a objetos.
La programación orientada a objetos es una de las formas más populares de programar y
viene teniendo gran acogida en el desarrollo de proyectos de software desde los últimos
años. Esta acogida se debe a sus grandes capacidades y ventajas frente a las antiguas
formas de programar.
Una Perspectiva Histórica
Tradicionalmente, la programación fue hecha en una manera secuencial o lineal, es decir
una serie de pasos consecutivos con estructuras consecutivas y bifurcaciones.
Los lenguajes basados en esta forma de programación ofrecían ventajas al principio, pero
el problema ocurre cuando los sistemas se vuelven complejos. Estos programas escritos al
estilo “espaguetti” no ofrecen flexibilidad y el mantener una gran cantidad de líneas de
código en sólo bloque se vuelve una tarea complicada.
Frente a esta dificultad aparecieron los lenguajes basados en la programación
estructurada. La idea principal de esta forma de programación es separar las partes
complejas del programa en módulos o segmentos que sean ejecutados conforme se
requieran. De esta manera tenemos un diseño modular, compuesto por módulos
independientes que puedan comunicarse entre sí. Poco a poco este estilo de
programación fue reemplazando al estilo “espaguetti” impuesto por la programación
lineal.
Institución Educativa José Antonio Galán
Articulación SENA-MEN
CARACTERISTICAS DE LA PROGRAMACION
ORIENTADA A OBJETOS
III. CONCEPTUALIZACION
Abstracción de datos
La abstracción de datos permite no preocuparse de los detalles no esenciales. Existe en casi
todos los lenguajes de programación. Las estructuras de datos y los tipos de datos son un
ejemplo de abstracción. Los procedimientos y funciones son otro ejemplo. Sólo
recientemente han emergido lenguajes que soportan sus propios tipos abstractos de datos
(TAD), como Pascal, Ada, Modula-2 y C++.
¿Qué es la programación orientada a objetos?
Se puede definir POO como una técnica o estilo de programación que utiliza objetos como
bloque esencial de construcción.
Los objetos son en realidad como los tipos abstractos de datos. Un TAD es un tipo definido
por el programador junto con un conjunto de operaciones que se pueden realizar sobre
ellos. Se denominan abstractos para diferenciarlos de los tipos de datos fundamentales o
básicos.
Trabajando con objetos
En programación convencional los programas se dividen en dos componentes:
procedimientos y datos. Este método permite empaquetar código de programa en
procedimientos, pero ¿Qué sucede con los datos? Las estructuras de datos utilizadas en
programación son globales o se pasan como parámetros. En esencia los datos se tratan
Institución Educativa José Antonio Galán
Articulación SENA-MEN
CARACTERISTICAS DE LA PROGRAMACION
ORIENTADA A OBJETOS
- cualquier otra información adicional que el receptor pueda necesitar para ejecutar el
método requerido.
En C++, la notación utilizada es
nombre_del_objeto.función_miembro
Ejemplo: Se tiene un objeto o1 con los siguientes miembros dato: nombre_alumno y curso
y con las funciones miembro: leer_nombre e imprimir. Si el objeto o1 recibe el mensaje
imprimir, esto se expresa:
o1.imprimir()
La sentencia anterior se lee: "enviar mensaje imprimir al objeto o1". El objeto o1 reacciona
al mensaje ejecutando la función miembro de igual nombre que el mensaje.
El mensaje puede llevar parámetros:
o1.leer_nombre("Pedro Pérez")
Sin los mensajes los objetos que se definan no podrán comunicarse con otros objetos.
Desde un punto de vista convencional, el paso de mensajes no es más que el sinónimo de
llamada a una función.
Programa orientado a objetos
Un programa orientado a objetos es una colección de clases. Necesitará una función
principal que cree objetos y comience la ejecución mediante la invocación de sus funciones
miembro.
Esta organización conduce a separar partes diferentes de una aplicación en distintos
archivos. La idea consiste en poner la descripción de la clase para cada una de ellas en un
archivo separado. La función principal también se pone en un archivo independiente. El
compilador ensamblará el programa completo a partir de los archivos independientes en
una única unidad.
En realidad, cuando se ejecuta un programa orientado a objetos, ocurren tres acciones:
1. Se crean los objetos cuando se necesitan
2. Los mensajes se envían desde uno objetos y se reciben en otros
3. Se borran los objetos cuando ya no son necesarios y se recupera la memoria ocupada por
ellos
Herencia
La herencia es la propiedad que permite a los objetos construirse a partir de otros objetos.
Una clase se puede dividir en subclases. En C++ la clase original se denomina clase base;
las clases que se definen a partir de la clase base, compartiendo sus características y
añadiendo otras nuevas, se denominan clases derivadas.
Las clases derivadas pueden heredar código y datos de su clase base añadiendo su propio
código y datos a la misma.
La herencia impone una relación jerárquica entre clases en la cual una clase hija hereda de
su clase padre. Si una clase sólo puede recibir características de otra clase base, la herencia
se denomina herencia simple.
Si una clase recibe propiedades de más de una clase base, la herencia se denomina
herencia múltiple.
Polimorfismo
En un sentido literal, significa la cualidad de tener más de una forma. En el contexto de
POO, el polimorfismo se refiere al hecho de que una misma operación puede tener
diferente comportamiento en diferentes objetos. Por ejemplo, consideremos la operación
sumar. El operador + realiza la suma de dos números de diferente tipo. Además se puede
definir la operación de sumar dos cadenas mediante el operador suma.
Institución Educativa José Antonio Galán
Articulación SENA-MEN
CARACTERISTICAS DE LA PROGRAMACION
ORIENTADA A OBJETOS
* Principio de ocultación: Cada objeto está aislado del exterior, es un módulo natural, y
cada tipo de objeto expone una interfaz a otros objetos que especifica cómo pueden
interactuar con los objetos de la clase. El aislamiento protege a las propiedades de un
objeto contra su modificación por quien no tenga derecho a acceder a ellas, solamente los
propios métodos internos del objeto pueden acceder a su estado. Esto asegura que otros
objetos no pueden cambiar el estado interno de un objeto de maneras inesperadas,
eliminando efectos secundarios e interacciones inesperadas
* Herencia: las clases se relacionan entres sí, formando una jerarquía de clasificación. Los
objetos heredan las propiedades y el comportamiento de todas las clases a las que
pertenecen. La herencia organiza y facilita el polimorfismo y el encapsulamiento
permitiendo a los objetos ser definidos y creados como tipos especializados de objetos
preexistentes.
Estos pueden compartir (y extender) su comportamiento sin tener que volver a
implementarlo. Esto suele hacerse habitualmente agrupando los objetos en clases y estas
en árboles o enrejados que reflejan un comportamiento común. Cuando un objeto hereda
de más de una clase se dice que hay herencia múltiple.
objeto::::Datos ::::nombres
:::: propiedades
::::Atributos
::::funcion
2. De
la
herencia
Institución Educativa José Antonio Galán
Articulación SENA-MEN
CARACTERISTICAS DE LA PROGRAMACION
ORIENTADA A OBJETOS
ID
FIRT NAME
LAST NAME
GRADUTION
ID
FIRT NAME
LAST NAME
GRADUTION
3. class Computador {
//Función constructora; este constructor se ejecutara primero que el
//constructor de la clase heredada
function Computador() {
trace("Creado un nuevo computador");
}
//Todos los computadores prenden ¿no?
public function encender():Void {
trace("El computador esta iniciando");
}
//Y todos se apagan ... en teoria
public function apagar():Void {
trace("El computador ha sido apagado");
}
En el código identificar: determine:
Objetos: Computador
Clases: Computador
Funciones: computador
Encender
Apagar
V. ACTIVIDAD ARGUMENTATIVA
Institución Educativa José Antonio Galán
Articulación SENA-MEN
CARACTERISTICAS DE LA PROGRAMACION
ORIENTADA A OBJETOS
AUTODIAGNOSTICO N
Si
o
Realiza clip en flash, utilizado las herramientas apropiadas para la x
creación de animaciones.
Conoce acerca de las características POO. x
En un mapa mental expone los diferentes características que x
contiene la POO
características especificas que tiene la POO x
X. WEBGRAFIA