Contenido Poo

Click here to load reader

  • date post

    17-Sep-2015
  • Category

    Documents

  • view

    231
  • download

    3

Embed Size (px)

description

contenido poo

Transcript of Contenido Poo

PROGRAMACIN ORIENTADA A OBJETOS

PRESENTACINEste presente trabajo ha sido elaborado para ofrecer informacin a las personas interesadas sobre la PROGRAMACION ORIENTA A OBJETOS toda la informacin requerida ha sido investigada por varias fuentes de informacin ya sean primarias como secundarias en la cual hemos tratado de sacar al mximo la informacin necesaria para poder concluir con esta elaboracin de este documento que trata de la PROGRAMACION ORIENTADA A OBJETOS.Esperando as consecuentemente brindar la informacin precisa de este trabajo de investigacin sea de utilidad y agrado del lector.

INTRODUCCINLa programacin Orientada a objetos (POO) es una forma especial de programar, ms cercana a como expresaramos las cosas en la vida real que otros tipos de programacin.Con la POO tenemos que aprender a pensar las cosas de una manera distinta, para escribir nuestros programas en trminos de objetos, propiedades, mtodos y otras cosas que veremos rpidamente para aclarar conceptos y dar una pequea base que permita soltarnos un poco con este tipo de programacin. La programacin Orientada a objetos (POO) es una forma especial de programar, ms cercana a como expresaramos las cosas en la vida real que otros tipos de programacin.Con la POO tenemos que aprender a pensar las cosas de una manera distinta, para escribir nuestros programas en trminos de objetos, propiedades, mtodos y otras cosas que veremos rpidamente para aclarar conceptos y dar una pequea base que permita soltarnos un poco con este tipo de programacin.

CAPTULO IGENERALIDADES

1.1 OBJETIVOS Aprender los conceptos bsicos de la programacin orientada a objetos, comportamiento, relaciones y operaciones. Comprender por qu la programacin orientada a objetos sirve para reutilizar cdigo. Comprender los principios bsicos de la programacin orientada a objetos.1.2 Importancia Facilita la creacin de software de calidad potencia en mantenimiento, la extensin y la reutilizacin. Basada en el modo de pensar del hombre y en el modo de operar de la mquina. El elemento bsico no es la funcin (programacin estructurada), sino un ente denominado objeto.

CAPTULO IIBREVE RESEAHISTRICA

2.1 HISTORIA DE PROGRAMACIN ORIENTADA A OBJETOS La Programacin Orientacina Objetos (P.O.O.) surge en Noruega en1967con un lenguaje llamado Simula 67, desarrollado por Krinsten Nygaard y Ole-Johan Dahl, en el centro de clculo noruego. Simula 67 introdujo por primera vez los conceptos de clases, corrutinas y subclases (conceptos muy similares a los lenguajes Orientados a Objetos de hoy en da).El nacimiento dela Programacin Orientacina Objetos en Europa pas inadvertido para gran parte de los programadores. Hoy tenemosla Orientacina Objetos como un nio de 33 aos al que todos quieren bautizar. Uno de los problemas de inicio de los aos setentas era que pocos sistemas lograban terminarse, pocos se terminaban con los requisitos iniciales y no todos los que se terminaban cumpliendo con los requerimientos se usaban segn lo planificado.

El problema consista en cmo adaptar el software a nuevos requerimientos imposibles de haber sido planificados inicialmente. Este alto grado de planificacin y previsin es contrario a la propia realidad. El hombre aprende y crea a travs de la experimentacin, no de la planeacin.La Orientacina Objetos brinda estos mtodos de experimentacin, no exige la planificacin de un proyecto por completo antes de escribir la primera lnea de cdigo.En los 70scientficos del centro de investigacin en Palo Alto Xerox (Xerox park) inventaron el lenguaje Small talk que dio respuesta al problema anterior (investigar no planificar).Small talk fue el primer lenguaje Orientado a Objetos puro de los lenguajes Orientados a Objetos, es decir, nicamente utiliza clases y objetos (Java usa tipos de datos primitivos, o bien los Wrappers que son clases que encapsulan tipos de datos primitivos).

Quien tuvo la idea fue D. Parnas cuando propuso la disciplina de ocultar la informacin. Su idea era encapsular cada una de las variables globales de la aplicacin en un solo mdulo junto con sus operaciones asociadas, slo mediante las cuales se poda tener acceso a esas variables.El resto de los mdulos (objetos) podan acceder a las variables slo de forma indirecta mediante las operaciones diseadas para tal efecto.En los aos 80sBjarne Stroustrup de AT&T Labs., ampli el lenguaje C para crear C++ que soporta la programacin Orientada a Objetos.En esta misma dcada se desarrollaron otros lenguajes Orientados a Objetos como Objective C, Common Lisp Object System (CIOS), object Pascal, Ada y otros. Posteriores mejoras en herramientas y lanzamientos comerciales de C++ por distintos fabricantes, justificaron la mayor atencin hacia la programacin Orientada a Objetos en la comunidad de desarrollo de software. El desarrollo tcnico del hardware y su disminucin del costo fue el detonante final. Con ms computadoras al alcance de ms personas ms programadores, ms problemas y ms algoritmos surgieron.En el inicio de los 90sse consolidala Orientacina Objetos como una de las mejores maneras para resolver problemas. Aumenta la necesidad de generar prototipos ms rpidamente (concepto RAD Rapid Aplication Developments). Sin esperar a que los requerimientos iniciales estn totalmente precisos.

En 1996surge un desarrollo llamado JAVA (extensin de C++). Su filosofa es aprovechar el software existente. Facilitar la adaptacin del mismo a otros usos diferentes a los originales sin necesidad de modificar el cdigo ya existente.En 1997-98se desarrollan herramientas CASE orientadas a objetos (como el diseo asistido por computadora).Del98 ala fechase desarrolla la arquitectura de objetos distribuidos RMI, Corba, COM, DCOM.Actualmente la orientacin a objetos parece ser el mejor paradigma, no obstante, no es una solucin a todos los problemas. Trata de eliminar la crisis del software.Entre los creadores de metodologas orientadas a objetos se encuentran: G. Booch, Rambaught, Ivar Jacobson y Peter Cheng

CAPTULO IIIQUE ES UN OBJETO

3.1 QU ES UN OBJETO? Un objeto no es ms que un conjunto de variables (o datos) y mtodos (o funciones) relacionados entre s. Los objetos en programacin se usan para modelar objetos o entidades del mundo real (el objeto hijo, madre, o farmacutica, por ejemplo). Un objeto es, por tanto, la representacin en un programa de un concepto, y contiene toda la informacin necesaria para abstraerlo: datos que describen sus atributos y operaciones que pueden realizarse sobre los mismos. La siguiente figura muestra una representacin visual de un objeto.

3.1.1 Representacin visual de un objeto: Los atributos del objeto (estado) y lo que el objeto puede hacer (comportamiento) estn expresados por las variables y los mtodos que componen el objeto respectivamente. Por ejemplo, un objeto que modelase una bicicleta en el mundo real tendra variables que indicararan el estado actual de la bicicleta: su velocidad es de 20 km/h, su cadencia de pedaleo 90 r.p.m. y su marcha actual es la 5. Estas variables se conocen formalmente como variables instancia o variables miembro porque contienen el estado de un objeto bicicleta particular y, en programacin orientada a objetos, un objeto particular se denomina una instancia. Adems de estas variables, el objeto bicicleta podra tener mtodos para frenar, cambiar la cadencia de pedaleo, y cambiar de marcha (la bicicleta no tendra que tener un mtodo para cambiar su velocidad pues sta es funcin de la cadencia de pedaleo, la marcha en la que est y de si los frenos estn siendo utilizados o no, entre otros muchos factores). Estos mtodos se denominan formalmente mtodos instancia o mtodos miembro, ya que cambian el estado de una instancia u objeto bicicleta particular. La siguiente figura muestra una bicicleta modelada como un objeto:

El diagrama del objeto bicicleta muestra las variables objeto en el ncleo o centro del objeto y los mtodos rodeando el ncleo y protegindolo de otros objetos del programa. Este hecho de empaquetar o proteger la variable miembro con el mtodo miembro se denomina encapsulacin. Este dibujo conceptual que muestra el ncleo de variables miembro del objeto protegido por una membrana protectora de mtodos o funcin miembro es la representacin ideal de un objeto y es el ideal que los programadores de objetos suelen buscar. Sin embargo, debemos matizarlo. A menudo, por razones prcticas, es posible que un objeto desee exponer alguna de sus variables miembro, o proteger otras de sus propios mtodos o funcin miembro. Por ejemplo, Java permite establecer 4 niveles de proteccin de las variables y de la funcin miembro para casos como ste. Los niveles de proteccin determinan qu objetos y clases pueden acceder a qu variables o a qu mtodos.

De cualquier forma, el hecho de encapsular las variables y las funciones miembro relacionadas proporciona dos importantes beneficios a los programadores de aplicaciones:Capacidad de crear mdulos: El cdigo fuente de un objeto puede escribirse y mantenerse independiente del cdigo fuente del resto de los objetos. De esta forma, un objeto puede pasarse fcilmente de una parte a otra del programa. Podemos dejar nuestra bicicleta a un amigo, y sta seguir funcionando.

Proteccin de informacin: Un objeto tendr una interfaz pblica perfectamente definida que otros objetos podrn usar para comunicarse con l. De esta forma, los objetos pueden mantener informacin privada y pueden cambiar el modo de operar de sus funciones miembros sin que esto afecte a otros objetos que usen estas funciones miembro. Es decir, no necesitamos entender cmo funciona el mecanismo de cambio de marcha para hacer uso de l.

CAPTULO IVQUE ES UNA CLASE

4.1 QU ES UNA CLASE? Normalmente en el mundo real existen varios objetos de un mismo tipo, o como diremos enseguida, de una misma clase. Por ejemplo, mi bicicleta es una de las muchas bicicletas que exist