Rss Feed

  1. UNIDAD 04.  PROGRAMACION ORIENTADA A OBJETOS.

    INTRODUCCION.

    En esta unidad estudiaremos uno de los paradigmas de programación más utilizados en la actualidad: La programación Orientada a objetos. Esta forma de programar se acerca a como vemos el mundo en nuestra realidad. Empezamos estudiando algunas razones por las que esta forma de programación está siendo mayormente aceptada en la actualidad. Un objeto es una entidad que posee características propias. Los objetos tienen propiedades, métodos y eventos. Los objetos pertenecen a clases que son como la familia principal que agrupa un conjunto de objetos. En la programación orientada a objetos encontramos características fundamentales como la herencia, el encapsulamiento y el polimorfismo. Por ultimo estudiamos un poco los objetos compuestos y su estructura.

    QUE ES LA PROGRAMACION ORIENTADA A OBJETOS.

    La programación Orientada a objetos (POO) es una forma especial de programar, más cercana a como expresiones las cosas en la vida real que otros tipos de programación.

    RAZONES FUNDAMENTALES QUE ESTAN INFLUYENDO EN LA IMPORTANCIA DE LA POO.

    Algunas de las causas que están influyendo considerablemente en el notable desarrollo de las técnicas orientadas a objetos son:

    La POO (La programación orientación a objetos) es especialmente adecuada para realizar determinadas aplicaciones, sobre todo realización de prototipos y simulación de programas.

    Los mecanismos de encapsulación de POO soportan un alto grado de reutilización de código, que se incrementa por su mecanismo de herencia.

    En el entorno de las base de datos, la POO se adjunta bien a los modelos semánticos de datos para solucionar las limitaciones de los modelos tradicionales.

    Aumento espectacular de los lenguajes de programación orientados a objetos.
    Interfaces de usuario gráfico (por iconos) y visual. Las interfaces de usuarios de una aplicación manipulan la entrada y salida del usuario. Por consiguiente, su función principal es la comunicación con el usuario final.




    ¿QUE ES LA PROGRAMACION ORIENTADA A OBJETOS?.
    La programación Orientada a objetos (POO) es una forma especial de programar, más cercana a como expresaríamos las cosas en la vida real que otros tipos de programación.

    RAZONES FUNDAMENTALES QUE ESTÁN INFLUYENDO EN LA IMPORTANCIA DE LA POO
    Algunas de las causas que están "influyendo considerablemente en el notable desarrollo de las técnicas orientadas a objetos son:

    La 00 (orientación a objetos) es especialmente adecuada para realizar determinadas
    aplicaciones, sobre todo realización de prototipos y simulación de programas

    Los mecanismos de encapsulación de POO soportan un alto grado de reutilización de
    código, que se incrementa por sus mecanismos de herencia.

    En el entorno de la base de datos, la POO se adjunta bien a los modelos semánticos de
    datos para solucionar las limitaciones de los modelos tradicionales.
     Aumento espectacular de los lenguajes de programación orientados a objetos.
     Interfaces  de usuarios graficos [por icones) y visuales. Las interfaces de usuarios de una
    aplicación manipulan la entrada y salida del usuario. Por consiguiente, su función principal
    es la comunicación con el usuario final.

    UN MUNDO DE OBJETOS

    DEFINICION DE OBJETOS:
    Los objetos son entidades que se pueden distinguir de manera clara y definida, ejemplos de un objeto pueden ser una persona, un libro, un botón de orden.

    Un objete además de un estado interno, presenta una interfaz para poder interactuar con el exterior. Es por esto por lo que se dice que en la programación orientada a objetos "se unen datos y procesos".

    IDENTIFICACION DE OBJETOS
    UN OBJETO CONSTA DE:

    * TIEMPO DE VIDA: La duración de un objeto en un programa siempre está limitada en el tiempo. La mayoría de los objetos sólo existen durante una parte de la ejecución del
    programa. Los objetos son creados mediante un mecanismo denominado instanciación, y  cuando dejan de existir se dice que son destruidos.

    * ESTADO: todo objeto posee un estaco, definido por sus o tributos. Con él se definen las propiedades del objeto, y el estado en que se encuentra en un momento determinado de su existencia. El estado de un objeto es la apariencia que el objeto presenta al usuario, y
    Depende del valor que tenga sus propiedades. Un camino de estado se logra alterando al menos  una de las propiedades del objeto.

    *COMPORTAMIENTO: Todo objeto es de presentar una Interfaz, definida por sus métodos,  para que el resto de objetos que componen los programas puedan interactuar con él.

    El  equivalente  de un objeto en el paradigma estructurado sería  una variable. Así mismo la instanciación de objetos equivaldría a la declaración de variables, y el tiempo de vida de un objeto al ámbito de una variable.

    Identificación de objetos:
    En el entorno de procesos de programación, en el paso de la análisis del problema, el elemento central del objeto, es decir, se estudia el problema y se identifica los objetos, involucrados y sus relaciones

    Duración de objetos es un objeto en un programa siempre está limitado en el e tiempo la duración (la mayoría de los objetos solo existe durante la duración del programa) 

    Objetos frente a clase:
    La clase es una representación abstracta que describe un conjunto de objetos, en otras palabras, es un tipo de datos abstractos que representa un conjunto de objetos que tiene un común una misma estructura.

    Datos internos:
    Datos son internos, nada que datos, esos datos son variables.
    Clases ejemplos:
    Crear X entero=o
    Crear Y=0

    Cuando los datos son nada más que datos internos, esos datos son variables
    Clase Ejemplo
      Crear X Entera = 0
      Crear Y Entera = 0
      Crear Z Entera = 0


    Esos datos internos, puede ser que necesiten un valor inicial cuando se crea un objeto de la clase, en ese caso esas variables pueden ser cargadas en el momento de declarar una nueva instancia de la clase.

    COMUNICACIÓN ENTRE OBJETOS.
    El mensaje es esencialmente una orden que se envía a un objeto para indicarle que realice alguna acción. También se define mensaje como la información completa que un objeto emisor transmite hacia un objeto receptor. Un mensaje contiene tres elementos: el objeto receptor, el tipo de evento y los datos necesarios
    para el receptor.

    Comunicación entre objetos:
    Los objetos se comunican entre si mediante mensajes

    Activación de objetos:
    A los objetos solo se le puede acceder atravez  de su interfaz pública. (Como se permite el acceso a objetos) un objeto accede enviándole un mensaje.

    Mensaje
    Cuando se produce un evento, el objeto receptor sabe cuál es et objeto emisor, que evento se produjo y el valor de los datos asociados con dicho evento.

    Estructura interna de un objeto
    La estructura interna de un objeto está compuesta por tres elementos fundamentales como son;

    Atributos
    Son datos que diferencean un objeto de otros; el conjunto de ellos constituye sus estado, cada objeto alamacena información acerca de su estado actual y en un monemto dado este corresponde a un selección determinada de valores posibles de diversos atributos, estos últimos son propiedades o características de un clases y describen un rango de valores.

    PROPIEDADES: Son las características observables de un objeto. Las propiedades se
    reconocen porque describe un aspecto dc-l objeto que podemos medican una escala
    establecida previamente. A cada propiedad se le debe asignar un valor el cual permite
    identificar de manera única al objeto.

    MÉTODOS: Se define como un conjunto de acciones que un objeto puede realizar para
    conseguir un propósito. Los métodos representan la parte viva e interesante de un
    objeto y se emplean habitualmente para modificar las propiedades del objeto. Al
    modificar cualquiera de las propiedades del objeto se altera su apariencia y se genera
    un cambio qua el usuario de te aplicación puede percibir.

    Clase
    POO los objetos son miembros de clases. En escencia, una clases es un tipo de dato.
    Al igual que cualquier otro tipo de dato en cualquier otro tipo de lenguaje de programación

    EVENTOS: Todos los objetos se relacionan con el mundo que los rodea, esto significa
    que ningún objeto está aislado y siempre recibe el influjo de otros objetos. Los eventos
    son los estímulos que un objeto ejerce sobre otro.

    LAS CLASES:
    Los objetos están organizados en familias claramente delimitadas. Una familia se reconoce porque reúne un grupo de objetos que heredan elementos entre sí. El modelo de programación visual, al igual que la naturaleza., organiza los objetos en clases (famüiasX así una cíase es el conjunto de objetos que pertenecen a una misma familia. Por ejemplo David Beckham, Lionel Messi, Cristiano Ronaldo son ejemplos de la clase: Jugadores de Fútbol, sin embargo personas específicas con nombres específicos son miembros de esa clase si poseen ciertas características comunes. Elmodelo de programación visual permite así organizar las familias de objetos en un orden jerárquico.

    HERENCIA:
    Un objeto es heredero de otro cuando posee todas sus propiedades y todos sus métodos y reconoce todos sus eventos, aunque pueda disfrutar de propiedades, métodos y eventos
    adicionales. Se define la herencia como la característica que tienen los objetos de derivarse unos de otros. Por otra parte la herencia supone una ciase base y una jerarquía de clases que contienen
    las clases derivadas de la clase base, así las clases derivadas pueden heredar \a$ propiedades y métodos de una clase base, añadiendo sus propios métodos y propiedades, incluso cambiar aquellos elementos de la clase base que necesiten sean diferentes.

    TIPOS DE HERENCIA:
    Existen dos tipos de herencia

    HERENCIA SIMPLE: En esta jerarquía cada clase tiene como máximo una sola superclase. La
    herencia simple permite que una ciase herede las propiedades y métodos de su superclase en una cadena jerárquica.

    HERENCIA MÚLTIPLE: Una malla o retícula consta de clases, cada una de las cuales pueden tener dos o más superclases inmediatas. Una herencia múltiple es aquella en la que cada clase puede heredar las propiedades y métodos de cualquier número de ciases.

    CARACTERISTICAS DE LA HERENCIA:

    ANULACIÓN O SUSTITUCIÓN: cuando defino un método heredado en la subclase, se dice que estoy anulando o sustituyendo dicho metodo Sería deseable una "herencia selectiva": seleccionar lo que se requiere heredar es la mejor forma de anulación.

    SOBRECARGA: Propiedad que puede darse también sin herencia. Es designar varios elementos (identificadores) con el mismo nombre. No es anulación.

    CLASES ABSTRACTAS:
    Con frecuencia, cuando se diseña un modelo orientado a objetos es útil introducir clases a cierto nivel que pueden no existir en la realidad pero que son construcciones conceptuales útiles. Estas clases se conocen como clases abstractas.

    Una clase abstracta normalmente ocupa una posición adecuada en la jerarquía de clases que le permite actuar como un depósito de métodos y atributos compartidos para las subclases de nivel inmediatamente inferior.
    Las clases abstractas no tienen instancias directamente. Se utilizan para agrupar otras clases y capturar información que es común al grupo. Sin embargo, las subclases de clases abstractas que
    corresponden a objetos del mundo real si pueden tener instancias.
    Una clase- abstracta podría ser una impresora:
    + inyectores + agujas
    Las clases derivadas de una clase base o abstracta se conocen como clases concretas, que ya pueden instanciarse (es decir, pueden tener instancias).

    ENCAPSULAMIENTO
    Un objeto está separado del medio que lo rodea por algun tipo de envoltura, esta separación es te que determina la unidad del objeto, es decir, lo convierte en algo independiente. La envoltura oculta los detalles relacionados con la construcción interior del objeto. esto significa que sólo conocemos del objeto aquello que es revelado por sus métodos. Se llama encapsulamiento a la propiedad que tienen los objetos de ocultar detalles internos, así se permite asegurar que el contenido de \a 'información de un objeto este oculta mundo exterior por ejemplo objeto A no conoce lo que hace un objeto B y viceversa). Por otra parte el programador que construye un objeto tiene acceso a todas sus partes: propiedades, métodos y definición de eventos. El programador que utiliza un objeto solamente tiene acceso a sus propiedades y métodos (si estos son públicos) y a la programación de los eventos que han sido definidos para el objeto.
    Algunos métodos y propiedades en un objeto son privados, es decir, útiles únicamente dentro del objeto y desconocidos por quien utiliza el objeto, los restantes métodos y propiedades son públicos, los programadores los emplean para cambiar el estado del objeto.

    POLIMORFISMO
    El polimorfismo se presenta cuando se ha creado objetos que pertenecen a clases que han sido Derivadas de otras clases. En otras palabras, el polimorfismo aparece en las clases derivadas. También se dice que el polimorfismo es la propiedad que indica literalmente, la posibilidad de que una entidad tome muchas formas, en términos prácticos el polimorfismo permite referirse a

    Objetos de clases distintas mediante el mismo elemento de programa y realizar ia misma
    operación de diferentes formas, según sea el objeto que se referencia en ese momento. Por ejemplo cuarto se describe clase  mamíferos se puede observar que \b operación comer es una operación fundamental en la vida de los mamíferos, de modo que cada tipo de mamíferos debe poder realizar la operación o función comer. Por otra parte, una vaca o una cabra que pasta en el campo, un niño que se come un bombón o caramelo y un león que devora a otro animal, son
    diferentes formas que utilizan los distintos mamíferos para realizar la misma función (comer).

    OBJETOS COMPUESTOS
    Una de las características que hacen a los objetos ser muy potentes es que pueden contener otros objetos. Los objetos que contienen otros objetos se denominan objetos compuestos. Esta Característica ofrece dos ventajas importantes:

    *Los objetos contenidos pueden cambiar en tamaño y composición, sin afectar al objeto compuesto que los contiene, esto hace que el mantenimiento de sistemas complejos de objetos anidados sea más sencillos.

    * Los objetos contenidos están libres para participar en cualquier número de objetos
    compuestos, en lugar de estar bloqueados en un único objeto compuesto
    .

  2. 0 comentarios:

    Publicar un comentario