Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
jorge.barrientos@gmail.com
www.jorgebarrientos.net
OO P
www.jorgebarrientos.net/moodle
Jorge.barrientos@gmail.com
Representa un intento para crear programas mas cercanos al modelo que la gente piensa e iteractua en el mundo real.
Jorge.barrientos@gmail.com
OO P
OO P
Jorge.barrientos@gmail.com
Objetos y clases
OO P
Jorge.barrientos@gmail.com
La programacin consiste en el diseo de un conjunto de objetos que modelan el problema que queremos solucionar.
Jorge.barrientos@gmail.com
OO P
Los objetos en un programa pueden representar entidades abstractas o reales en el dominio del problema
OO P
Jorge.barrientos@gmail.com
OO es un set de herramientas y mtodos que permiten a los ingenieros de software crear software seguro, confiable, amigable con el usuario, de fcil mantenimiento, documentado y que cumplan los requerimientos de los usuarios
Jorge.barrientos@gmail.com
OO P
Un sistema de software es visto como una comunidad de objetos que cooperan con otros enviando mensajes en la solucin de un problema.
OO P
Jorge.barrientos@gmail.com
Un lenguaje de programacin OO da soporte a los siguientes conceptos: Objetos y clases Herencia Polimorfismo y unin dinmica (Dynamic binding)
Jorge.barrientos@gmail.com
OO P
OO P
Jorge.barrientos@gmail.com
Un paradigma en programacin es: Una forma de conceptualizar lo que significa la ejecucin de clculos y como las tareas son llevadas a cabo de forma estructurada y organizada en un computador
Jorge.barrientos@gmail.com
OO P
En lenguajes procedimentales, todo es un procedimiento En lenguajes funcionales, todo es una funcion En lenguajes de programacin basados en lgica, todo es una expresin lgica En lenguajes OO, todo es un objeto
Jorge.barrientos@gmail.com
OO P
Las tcnicas para solucin de problemas en POO se adaptan mas al modelo en que los humanos solucionamos los problemas da a da.
OO P
Jorge.barrientos@gmail.com
Ejemplo:
OO P
ENVIO DE FLORES
Jorge.barrientos@gmail.com
Un programa OO esta estructurado como una comunidad de agentes que interaccionan entre si, denominados objetos. Cada objeto tiene un rol que jugar. Cada objeto ofrece un servicio o ejecuta una accin, que es utilizada por otros de la comunidad.
OO P
Jorge.barrientos@gmail.com
Mensajes y responsabilidades Una accin es iniciada en POO por la transmisin de un mensaje a un agente (objeto) responsable de las acciones.
OO P
Jorge.barrientos@gmail.com
Mensajes y responsabilidades El mensaje codifica la peticin de una accin y es acompaada por cualquier informacin adicional (argumentos/parmetros) necesarios para ejecutar la peticin
OO P
Jorge.barrientos@gmail.com
Mensajes y responsabilidades El receptor es el objeto al que es enviado el mensaje. Si el receptor acepta el mensaje, este acepta la responsabilidad para ejecutar la accin indicada. En respuesta a un mensaje, el receptor ejecutara algn mtodo para satisfacer la peticin
OO P
Jorge.barrientos@gmail.com
Mensajes y responsabilidades El cliente que envi la peticin no necesita saber como se lleva a cabo la peticin En esto vemos el principio de ocultamiento de informacin
OO P
Jorge.barrientos@gmail.com
Mensajes y responsabilidades Otro principio implcito en el envi de mensajes es la idea de encontrar alguien mas que haga el trabajo, por ejemplo reutilizar componentes que han sido escritos por alguien mas.
OO P
Jorge.barrientos@gmail.com
Mensajes y responsabilidades Las peticiones de un cliente para una accin solo indica el resultado deseado. Los receptores son libres de utilizar cualquier tcnica para obtener el resultado deseado. Esto permite una gran independencia entre objetos.
OO P
Jorge.barrientos@gmail.com
Clases e instancia Todos los objetos son instancias de una clase. El mtodo invocado por un objeto en respuesta a un mensaje esta determinado por la clase del receptor. Todos los objetos de una clase dada, utilizan el mismo mtodo en respuesta a mensajes similares.
OO P
Jorge.barrientos@gmail.com
OO P
Jorge.barrientos@gmail.com
Fundamentos de objetos y clases Los objetos estn ntimamente relacionados a las clases. Una clase puede contener variables y mtodos. Si un objeto tambin es una coleccin de variables y mtodos, como se diferencian de las clases?
OO P
Jorge.barrientos@gmail.com
Objetos y clases - Objetos Un objeto mantiene su estado en una o mas variables. Una variable es un dato nombrado por un identificador. Un objeto implementa su comportamiento con mtodos. Un mtodo es una funcin asociada con un objeto.
OO P
Jorge.barrientos@gmail.com
Objetos y clases - Objetos Un objeto tambin es conocido como una instancia. Una instancia se refiere a un objeto particular.
OO P
Jorge.barrientos@gmail.com
Objetos y clases - Objetos Las variables de un objeto son conocidas formalmente como variables de instancia ya que ellas contienen el estado para un objeto particular o instancia.
OO P
Jorge.barrientos@gmail.com
Objetos y clases Encapsulamiento Empacar las variables de un objeto dentro de la custodia protectora de sus mtodos es lo que se denomina encapsulamiento.
OO P
Jorge.barrientos@gmail.com
OO P
Jorge.barrientos@gmail.com
Modularidad: El cdigo fuente de un objeto puede ser escrito y modificado independientemente del cdigo de otros. Un objeto puede viajar a travs del sistema. Por ejemplo, le podemos dar nuestra bicicleta a alguien mas y esta funciona igual.
OO P
Jorge.barrientos@gmail.com
Ocultamiento de informacin: Un objeto tiene una interfaz publica que otros objetos pueden utilizar para comunicarse con el.
OO P
Jorge.barrientos@gmail.com
Objetos y clases Mensajes Los objetos interaccionan y se comunican con otros a travs del envi de mensajes.
OO P
Jorge.barrientos@gmail.com
OO P
Jorge.barrientos@gmail.com
System.out.println(Bienvenidos);
OO P
Jorge.barrientos@gmail.com
Objetos y clases Clases En el software OO, es posible tener varios objetos del mismo tipo que comparten caracteristicas: rectngulos, registro de empleados, entre otros.
OO P
Jorge.barrientos@gmail.com
Objetos y clases Clases Definicin: Una clase es un plano que define las variables y los mtodos comunes para todos los objetos del mismo tipo.
OO P
Jorge.barrientos@gmail.com
Objetos y clases Clases Una vez hemos creado una clase, podemos construir cualquier numero de objetos a partir de esa clase. Una clase es como una fabrica para construir objetos.
OO P
Jorge.barrientos@gmail.com
Objetos y clases Clases Los objetos son creados y destruidos en la ejecucin de un programa, y pueden haber muchos objetos con la misma estructura, si han sido creados utilizando la misma clase.
OO P
Jorge.barrientos@gmail.com
Objetos y clases Tipos Java, como muchos otros lenguajes de programacin clasifica los valores y expresiones en tipos. Un tipo bsicamente especifica que valores y operaciones son validos en valores de ese tipo.
OO P
Jorge.barrientos@gmail.com
Objetos y clases Tipos Definicin: Un tipo es un conjunto de valores junto con una o mas operaciones que pueden ser aplicadas uniformemente a todos estos valores.
OO P
Jorge.barrientos@gmail.com
Objetos y clases Tipos Un tipo bsicamente le da significado a una coleccin de bits. Porque cualquier valor simplemente consiste de un conjunto de bits en una computadora. Los tipos informan al programador y al programa como debe tratar esos bits.
OO P
Jorge.barrientos@gmail.com
Objetos y clases Tipos Por ejemplo los enteros son un tipo con valores dentro del rango -2,147,483,648 al +2,147,483,647 y varias operaciones permitidas que incluyen la suma, resta, modulo, etc.
OO P
Jorge.barrientos@gmail.com
OO P
Optimizacin: El chequeo de tipos esttico (Static Type-checking) proporciona informacin til al compilador, para generar cdigo mas eficiente.
Jorge.barrientos@gmail.com
OO P
Jorge.barrientos@gmail.com
OO P
Primitivos: int, double, char Object Type: String, Student, Car, etc.
Jorge.barrientos@gmail.com