Escolar Documentos
Profissional Documentos
Cultura Documentos
Tema 1
BLP (08/09)
Contenidos
Introduccin a la POO
Bases de la Programacin Evolucin de los lenguajes de programacin Elementos de la Programacin Orientada a Objetos
BLP (08/09)
Contenidos
Introduccin a la POO
Bases de la Programacin Evolucin de los lenguajes de programacin Elementos de la Programacin Orientada a Objetos
BLP (08/09)
Introduccin a la POO
Novedades Concepto de OBJETO (datos + procesos) Enfoque antropomrfico (orientado al hombre) Herencia
BLP (08/09)
Contenidos
Introduccin a la POO
Bases de la Programacin Evolucin de los lenguajes de programacin Elementos de la Programacin Orientada a Objetos
BLP (08/09)
Bases de la Programacin
BLP (08/09)
Bases de la Programacin
Abstraccin: proceso mental de extraccin de las caractersticas esenciales de algo, ignorando los detalles superfluos Encapsulacin: proceso por el que se ocultan los detalles del soporte de las caractersticas de una abstraccin
BLP (08/09)
Bases de la Programacin
Modularidad: proceso de descomposicin de un sistema en un conjunto de mdulos (piezas) poco acoplados (independientes) y cohesivos (con significado propio) Jerarqua: proceso de estructuracin por el que se produce una organizacin de un conjunto de elementos en grados o niveles de responsabilidad, de incumbencia o de composicin entre otros
BLP (08/09)
Bases de la Programacin
BLP (08/09)
Bases de la Programacin
BLP (08/09)
10
Contenidos
Introduccin a la POO
Bases de la Programacin Evolucin de los lenguajes de programacin Elementos de la Programacin Orientada a Objetos
BLP (08/09)
11
Cdigo Mquina Lenguaje Ensamblador Programacin de alto nivel Programacin estructurada Programacin modular Tipo Abstracto de datos POO
BLP (08/09)
12
Cdigo Mquina
BLP (08/09)
13
Lenguaje Ensamblador
BLP (08/09)
14
Abstraccin: Subprograma Encapsulacin: mbito de subprogramas Modularizacin: Estructuras de control de flujo y Subprograma Jerarquizacin: Estructuras de control de flujo y Subprograma
BLP (08/09)
15
Tipos Abstractos de Datos (TADs) Conjunto de valores lcitos y operaciones que operan sobre dichos datos Tipo definido por el usuario que permite definir mltiples variables de dicho tipo Programacin Orientada a Objetos Surge a partir de los TADs y del concepto de herencia heredado de IA
BLP (08/09)
16
Abstraccin: Total Encapsulacin: Total Modularizacin: Total Jerarquizacin: jerarquas de dependencia jerarquas de composicin
BLP (08/09)
17
BLP (08/09)
18
+Facilidad de Mantenimiento
-Costes
BLP (08/09) 19
Objetivo
Creacin de Cdigo Coste de Mantenimiento
El objetivo es utilizar la abstraccin, encapsulacin, modularizacin y jerarqua para que el coste de mantenimiento del software no supere un determinado umbral por mucho que aumente el tamao del cdigo.
BLP (08/09)
20
BLP (08/09)
21
Contenidos
Introduccin a la POO
Bases de la Programacin Evolucin de los lenguajes de programacin Elementos de la Programacin Orientada a Objetos
BLP (08/09)
22
Elementos de la Programacin OO
BLP (08/09)
23
Elementos de la Programacin OO
Clase: descripcin de los datos y de las operaciones que describen el comportamiento de un cierto conjunto de elementos homogneos
Descripcin de una abstraccin que sirve de molde a infinitos objetos de ciertas caractersticas para crear en el dominio de la computadora un reflejo del mundo real
Ejemplo: clase Fraccion - datos: numerador, denominador; - operaciones: simplificar, sumarse con otra, invertirse,
BLP (08/09)
24
Elementos de la Programacin OO
Objeto: ejemplar concreto (instancia) de una clase que responde al comportamiento, definido por las operaciones de la clase a la que pertenece, adecundose al estado de sus datos particulares
Ejemplo de objetos de la clase Fraccion: - relacin de gastos e ingresos, 2/3, 5/8,
BLP (08/09)
25
Elementos de la Programacin OO
Vista pblica o interfaz: operaciones a las que responden los objetos de la clase (comportamiento) Vista privada o implementacin: datos y manipulaciones sobre esos datos
BLP (08/09)
26
Elementos de la Programacin OO
Mtodo: definicin de una operacin de una clase Mensaje: invocacin de una operacin sobre un objeto Un objeto es el agente activo que lanza el mensaje y otro objeto es el agente pasivo que recibe el mensaje. El objeto receptor del mensaje debe contemplar dicha operacin entre las definidas en su clase.
BLP (08/09)
27
Elementos de la Programacin OO
Atributo: cada uno de los datos de una clase Ejemplo: numerador y denominador de la clase Fraccion Estado: conjunto de los valores de los atributos que tiene un objeto, por pertenecer a una clase, en un instante dado Ejemplo: numerador 26 y denominador 100 en una relacin de gastos e ingresos
BLP (08/09)
28
Elementos de la Programacin OO
Definiciones ms precisas con OO Clase: definicin de los atributos y mtodos que describen el comportamiento de un cierto conjunto de elementos homogneos
Objeto: ejemplar concreto de una clase que responde al comportamiento, definido por los mtodos de la clase a la que pertenece, adecundose al estado de los atributos de la clase a la que pertenece
BLP (08/09)
29
Elementos de la Programacin OO
Clases
Nombre
Atributos Mtodos
Objetos
Elementos de la Programacin OO
Herencia y Polimorfismo
Postergados a sus respectivos temas (slo veremos herencia) Permiten un mayor grado de
BLP (08/09)
31
Elementos de la Programacin OO
Programacin Orientada a Objetos Clase Programacin Estructurada Tipo Abstracto de Datos (TAD) (definicin de registro+subprogramas) Valor del TAD (registro concreto con valores) Subprograma Llamada a subprograma Campo de registro Conjunto de valores de los campos de un registro concreto
BLP (08/09) 32
Elementos de la Programacin OO
Conceptos bsicos
Universo de objetos (todo es un objeto) Los objetos colaboran y se comunican pasndose mensajes Cada objeto tiene un estado determinado en un momento dado Un objeto es un caso particular (instancia) de una clase Una clase define el comportamiento de un conjunto de objetos
BLP (08/09)
33