Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Curso
: ingeniera de software
TUTOR
CICLO
: VI
ALUMNOS
ndice
Dedicatoria.3
Introduccin...4
Definicin de la POO...5
Lenguajes orientados a objetos...6
Lenguajes de alto nivel..,.6
Lenguajes de bajo nivel.7
. Definicin de objetos.8
Tres caractersticas q definen aun objeto...9
.Estado
Comportamiento
Identidad
Las clases....10
Atributos de una clase..11
Mtodos de una clase...11
Mtodo constructor de una clase (__construct)...11
Caractersticas de la programacin orientada a objetos.12
Ventajas de la programacin orientada a objetos.15
Bibliografa..16
DEDICATORIA
El presente trabajo monogrfico va dedicado a todas las personas que hicieron posible su elaboracin.
Y las persona que estimo mucho que son nuestros padres por siempre darnos su apoyo incondicional
cuando ms lo necesitoamos, a la universidad privada telesup por prepararnos para ser buenos
profesionales y a todos los compaeros de estudio con quienes compartimos ideas, debates sobre
temas de diferentes reas.
INTRODUCCION
La POO difiere de la programacin estructurada tradicional, en la que los datos y los procedimientos
estn separados y sin relacin, ya que lo nico que se busca es el procesamiento de unos datos de
entrada para obtener otros de salida. La programacin estructurada anima al programador a pensar
sobre todo en trminos de procedimientos o funciones, y en segundo lugar en las estructuras de datos
que esos procedimientos manejan. En la programacin estructurada solo se escriben funciones que
procesan datos. Los programadores que emplean POO, en cambio, primero definen objetos para
luego enviarles mensajes solicitndoles que realicen sus mtodos por s mismos.
El principio bsico de la programacin orientada a objetos es que un sistema de software se ve
como una secuencia de transformaciones en un conjunto de objetos.
Definicin de la poo
Se le llama as a cualquier lenguaje de programacin que implemente los conceptos definidos por
la programacin orientada a objetos.
De alto nivel
Lenguajes imperativos. Utilizan instrucciones como unidad de trabajo de los programas
(Cobol, Pascal, C).
Lenguajes declarativos. Los programas se construyen mediante descripciones de funciones
o expresiones lgicas (Lisp, Prolog).
Lenguajes orientados a objetos. El diseo de los programas se basa mas en los datos y su
estructura. La unidad de proceso es el objeto y en el se incluyen los datos (variables) y las
operaciones que actan sobre ellos (Smalltalk, C++).
Lenguajes orientados al problema. Diseados para problemas especficos, principalmente
de gestin, suelen ser generadores de aplicaciones.
Lenguajes naturales. Estn desarrollndose nuevos lenguajes con el principal objetivo de
aproximar el diseo y construccin de programas al lenguaje de las personas.
Otra clasificacin que se puede hacer es la de atendiendo al desarrollo de los lenguajes desde la
aparicin de las computadoras, que sigue un cierto paralelismo con las generaciones establecidas en
la evolucin de las mismas:
I.
II.
III.
IV.
V.
DE BAJO NIVEL
Entre los ms importantes lenguajes de programacin tenemos:
SIMULA 67
Surge en Noruega en 1967, desarrollado por Krinsten Nygaard y Ole-Johan Dahl, en el
centro de clculo noruego.
Ejm:
Hola Mundo!
1
! Esto es un comentario;
Begincommentaqu comienza el programa;
OutText("HolaMundo!");
OutImage;
Endof program;
C
creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell
LENGUAJE C++
Se pronuncia ce plus plus. Fue desarrollada por Bjarme Stroustrup en los Bell Laboratories a
principios de la dcada de los 80. C++ introduce la programacin orientada al objeto en C.
Ejemplo:
ADA
Ada es un lenguaje de programacin orientado a objetos. Es un lenguaje multipropsito, orientado a
objetos y concurrente, pudiendo llegar desde la facilidad de Pascal hasta la flexibilidad de C++.
SMALLTALK
Fue el primer lenguaje de programacin orientado a objetos. Desarrollado en el Xerox PARC. Es el
primero en aportar la arquitectura de Modelo/Visor/Controlador.
EIFFEL
Es un lenguaje de programacin escrito por Bertrand Meyer. Al contrario que Smalltalk, incluye un
preprocesador que permite la traduccin de cdigo Eiffel a Lenguaje C. Es ideal para la ingeniera de
software, que permite la encapsulacin , control de acceso y mbito de las modificaciones. Como
lenguaje orientado a objetos <<puro>>, es presumiblemente el mejor por sus capacidades tcnicas.
JAVA
1
Definicin de objetos
Entender que es un objeto es la clave para entender cualquier lenguaje orientado a objetos.
Definicin terica: Un objeto es una unidad de cdigo compuesto de variables y mtodos
relacionados.
Un Objeto es un elemento real o abstracto que tiene un estado, un comportamiento y una identidad.
Un objeto es, pues, una mesa, un alumno, etc., pues son elementos reales y estn bien definidos.
Tambin lo puede ser un concepto abstracto como un elemento llamado Ordenador que es capaz de
recibir un conjunto de nmeros y ordenarlo ascendente o descendentemente.
Comportamiento: Viene determinado por la forma de actuar al recibir un mensaje para que realice
una accin. Un Mensaje es una orden que se manda a un objeto para que realice una operacin con
un propsito especfico.
Un mensaje viene definido por tres componentes:
1
LAS CLASES
Una clase es una construccin que se utiliza como un modelo (o plantilla) para crear objetos de ese
tipo. El modelo describe el estado y contiene el comportamiento que todos los objetos creados a partir
de esa clase tendrn. Un objeto creado a partir de una determinada clase se denomina
una instancia de esa clase.
Una clase por lo general representa un sustantivo, como una persona, lugar o cosa. Es el modelo de
un concepto dentro de un programa de computadora. Fundamentalmente, delimita los posibles
estados y define el comportamiento del concepto que representa. Encapsula el estado a travs de
espacios de almacenaje de datos llamados atributos, y encapsula el comportamiento a travs de
secciones de cdigo reutilizables llamadas mtodos.
Ms tcnicamente, una clase es un conjunto coherente que consiste en un tipo particular
de metadatos. Una clase tiene una interfaz y una estructura. La interfaz describe cmo interactuar con
la clase y sus instancias con mtodos, mientras que la estructura describe cmo los datos se dividen
en atributos dentro de una instancia. Una clase tambin puede tener una representacin (meta objeto)
en tiempo de ejecucin, que proporciona apoyo en tiempo de ejecucin para la manipulacin de los
1
metadatos relacionados con la clase. En el diseo orientado a objetos, una clase es el tipo ms
especfico de un objeto en relacin con una capa especfica.
Los lenguajes de programacin que soportan clases difieren sutilmente en su soporte para diversas
caractersticas relacionadas con clases. La mayora soportan diversas formas de herencia. Muchos
lenguajes tambin soportan caractersticas para proporcionar encapsulacin, como especificadores de
acceso.
ABSTRACCIN
Denota las caractersticas esenciales de un objeto, donde se capturan sus comportamientos. Cada
objeto en el sistema sirve como modelo de un "agente" abstracto que puede realizar trabajo, informar
y cambiar su estado, y "comunicarse" con otros objetos en el sistema sin revelar cmo se
implementan estas caractersticas. Los procesos, las funciones o los mtodos pueden tambin ser
abstrados, y, cuando lo estn, una variedad de tcnicas son requeridas para ampliar una abstraccin.
El proceso de abstraccin permite seleccionar las caractersticas relevantes dentro de un conjunto e
identificar comportamientos comunes para definir nuevos tipos de entidades en el mundo real. La
abstraccin es clave en el proceso de anlisis y diseo orientado a objetos, ya que mediante ella
podemos llegar a armar un conjunto de clases que permitan modelar la realidad o el problema que se
quiere atacar.
ENCAPSULAMIENTO
1
Significa reunir todos los elementos que pueden considerarse pertenecientes a una misma entidad, al
mismo nivel de abstraccin. Esto permite aumentar la cohesin de los componentes del sistema.
Algunos autores confunden este concepto con el principio de ocultacin, principalmente porque se
suelen emplear conjuntamente.
MODULARIDAD
Se denomina modularidad a la propiedad que permite subdividir una aplicacin en partes ms
pequeas (llamadas mdulos), cada una de las cuales debe ser tan independiente como sea posible
de la aplicacin en s y de las restantes partes. Estos mdulos se pueden compilar por separado, pero
tienen conexiones con otros mdulos. Al igual que la encapsulacin, los lenguajes soportan la
modularidad de diversas formas.
PRINCIPIO DE OCULTACIN
Cada objeto est aislado del exterior, es un mdulo natural, y cada tipo de objeto expone
una interfaz a otros objetos que especifica cmo pueden interactuar con los objetos de la clase. El
aislamiento protege a las propiedades de un objeto contra su modificacin por quien no tenga derecho
a acceder a ellas; solamente los propios mtodos internos del objeto pueden acceder a su estado.
Esto asegura que otros objetos no puedan cambiar el estado interno de un objeto de manera
inesperada, eliminando efectos secundarios e interacciones inesperadas. Algunos lenguajes relajan
esto, permitiendo un acceso directo a los datos internos del objeto de una manera controlada y
limitando el grado de abstraccin. La aplicacin entera se reduce a un agregado o rompecabezas de
objetos.
POLIMORFISMO
HERENCIA
Las clases no estn aisladas, sino que se relacionan entre s, formando una jerarqua de clasificacin.
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
comn. Cuando un objeto hereda de ms de una clase se dice que hay herencia mltiple.
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.
Herencia mltiple (herencia en malla)
Una malla o retcula consta de clases, cada una de las cuales puede tener uno O ms superclases
inmediatas Una herencia mltiple es aquella en la que cada clase puede heredar mtodos y variables
de cualquier nmero de superclase Conceptos fundamentales de programacin orientada a objetos
99
En la Figura 3 28 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.
BIBLIOGRAFA
WWW.ELRICONDELVAGO.ES
CARRASCO MUOZ, JOEL Creacin de Programas con Borland C ++ 5.0 Centro de
net-c2731/
Programacin orientada a objetos por Roberto rodrguez Echevarra, lvaro prieto