Sei sulla pagina 1di 45

Jorge Barrientos

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

En el corazon de la POO en lugar de tareas, encontramos objetos.

OO P

Jorge.barrientos@gmail.com

Objetos y clases

Objeto: Un objeto es un paquete de software, constituido por variables y mtodos

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

La POO es uno de muchos paradigmas en programacin.

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

Clases e instancia (Estado y comportamiento)

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

Objetos y clases Encapsulamiento

OO P

Jorge.barrientos@gmail.com

Objetos y clases Encapsulamiento El encapsulamiento nos permite:

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

Objetos y clases Encapsulamiento El encapsulamiento nos permite:

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

Objetos y clases Mensajes Existen 3 partes en un mensaje:


OO P

Objeto al que el mensaje es dirigido


El nombre del mtodo a ejecutar

Cualquier otro parmetro necesario para el mtodo

Jorge.barrientos@gmail.com

Objetos y clases Mensajes

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

Objetos y clases Tipos


Ventajas del uso de tipos Seguridad: El uso de tipos permite a un compilador detectar cdigo sin sentido o invalido.

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

Objetos y clases Tipos


Ventajas del uso de tipos Abstraccin: Los tipos permiten al programador trabajar con los programas a un alto nivel, y despreocuparse por su implementacin de bajo nivel. Por ejemplo un programador pueden pensar en tipos String como valores en lugar de un mero arreglo de bytes

OO P

Jorge.barrientos@gmail.com

Objetos y clases Tipos


Fundamentalmente hay 2 tipos en java:

OO P

Primitivos: int, double, char Object Type: String, Student, Car, etc.

Jorge.barrientos@gmail.com

Potrebbero piacerti anche